Win32APIについての質問はこちらへどうぞ。
■注意
・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。
・日本語版MSDN Online Libraryは不完全です。
英語版( http://msdn.microsoft.com/en-us/library/ )の利用推奨。
・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。
・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで
■過去スレ
Win32API質問箱 Build124
http://mevius.5ch.net/test/read.cgi/tech/1510395780/
Win32API質問箱 Build123
http://mevius.2ch.net/test/read.cgi/tech/1475897582/
Win32API質問箱 Build122
http://echo.2ch.net/test/read.cgi/tech/1451988219/
Win32API質問箱 Build121
http://echo.2ch.net/test/read.cgi/tech/1438695290/
Win32API質問箱 Build120
http://echo.2ch.net/test/read.cgi/tech/1428570962/
■関連スレ
Visual Studio 2019
http://mevius.5ch.net/test/read.cgi/tech/1548765663/
Visual Studio 2017 Part6
http://mevius.5ch.net/test/read.cgi/tech/1528645068/
【C++】 DirectX初心者質問スレ Part41 【C】
http://mevius.5ch.net/test/read.cgi/tech/1521786252/
探検
Win32API質問箱 Build125
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2019/02/27(水) 15:09:08.64ID:6ExXwgQU398デフォルトの名無しさん
2019/09/29(日) 09:39:48.44ID:xMtED3Cu どこから「単項」演算子の話が…
399デフォルトの名無しさん
2019/09/29(日) 10:26:13.14ID:MP9GBJ11 そのアホがいた・・・驚愕
今 sizeof の話をしているんだが
脈絡が読めないとはな
今 sizeof の話をしているんだが
脈絡が読めないとはな
400デフォルトの名無しさん
2019/09/29(日) 10:29:45.89ID:JKK19nEu こういう奴が書くソースは総じて読みにくいw
401デフォルトの名無しさん
2019/09/29(日) 10:31:48.98ID:9b9emf+N 付ける派
if(...) switch(...)なのにsizeof(...)じゃないのはなんとなく嫌
if(...) switch(...)なのにsizeof(...)じゃないのはなんとなく嫌
402デフォルトの名無しさん
2019/09/29(日) 11:39:16.24ID:98/tCU9d どこがAPIの話だ馬鹿は京急に突っ込んで死ね
403デフォルトの名無しさん
2019/09/29(日) 11:53:45.41ID:3s0zt66k hoge = malloc(length * sizeof struct hage *);
hoge = malloc(sizeof struct hage * * length);
hoge = malloc(*length * sizeof struct hage *);
hoge = malloc(sizeof struct hage * * *length);
hoge = malloc(*length * sizeof struct hage **);
hoge = malloc(sizeof struct hage ** * *length);
()付けないとどんどんわかりにくくなっていく
hoge = malloc(sizeof struct hage * * length);
hoge = malloc(*length * sizeof struct hage *);
hoge = malloc(sizeof struct hage * * *length);
hoge = malloc(*length * sizeof struct hage **);
hoge = malloc(sizeof struct hage ** * *length);
()付けないとどんどんわかりにくくなっていく
404デフォルトの名無しさん
2019/09/29(日) 13:23:57.04ID:eQVILPNx sizeof(型)は()必要だよ
405デフォルトの名無しさん
2019/09/29(日) 13:34:02.17ID:cKDPFQQS いらんよ
406デフォルトの名無しさん
2019/09/29(日) 13:50:41.73ID:6WuqtMyk Win32API以外の話は不要
407デフォルトの名無しさん
2019/09/29(日) 13:54:31.01ID:MP9GBJ11 >>400
おまえみたいのに読んでもらう必要が皆無
おまえみたいのに読んでもらう必要が皆無
408デフォルトの名無しさん
2019/09/29(日) 13:59:56.96ID:MP9GBJ11 単項演算子とそうでないものの区別がつかないアホが
return にも括弧したがるんだろうな
# K&R 1st世代の人はともかく
return にも括弧したがるんだろうな
# K&R 1st世代の人はともかく
409デフォルトの名無しさん
2019/09/29(日) 14:05:22.62ID:6WuqtMyk 書いてから思ったが、排他の否定な書き方が好きじゃない>>406
読みにくい
肯定した書き方だけに統一したい
そういう意味では、好きじゃないという書き方もダメか
嫌いと書くべきか
ということで、
Win32APIの話をしろ
おやすみ
sizeofは計算式絡むことがほとんどなのと、明示的にした方が分かりやすく
馬鹿らしいミスの回避のためにも付けといて損はない
読みにくい
肯定した書き方だけに統一したい
そういう意味では、好きじゃないという書き方もダメか
嫌いと書くべきか
ということで、
Win32APIの話をしろ
おやすみ
sizeofは計算式絡むことがほとんどなのと、明示的にした方が分かりやすく
馬鹿らしいミスの回避のためにも付けといて損はない
410デフォルトの名無しさん
2019/09/29(日) 15:27:53.48ID:MP9GBJ11 自分らしいミスか、わかりますw
411デフォルトの名無しさん
2019/09/29(日) 15:43:36.72ID:Mg/ytEjl >>403
この例からしても括弧つけた方が見やすいが、ID:MP9GBJ11は見やすさ全否定なの?
俺様はインデントもスペースも改行も無くても、優先順位・スコープ範囲が分かってるから無問題って理屈だよな
この例からしても括弧つけた方が見やすいが、ID:MP9GBJ11は見やすさ全否定なの?
俺様はインデントもスペースも改行も無くても、優先順位・スコープ範囲が分かってるから無問題って理屈だよな
412デフォルトの名無しさん
2019/09/29(日) 15:50:52.56ID:qbYXpMyS typeidもsizeofも関数じゃなくて演算子なんだけど、typeidは括弧が必須。
413デフォルトの名無しさん
2019/09/29(日) 16:01:08.70ID:EcHpn11g >>389
TCPのMSSは相手との関係で決まるので何バイト送り込んでもエラーには
ならないと思うけど
TCPとしては送れたデータ量をSeq番号で管理していてセグメントの分割は
ドライバの仕事なのでアプリケーションレベルでは意識する必要なかったと
思うけど
UDPとかIP直みたいなデータグラムの場合には「WSAEMSGSIZE」が返って
くるみたいだけどTCPは平気なんじゃないかな(転送データの保障がある
わけではない)
TCPのMSSは相手との関係で決まるので何バイト送り込んでもエラーには
ならないと思うけど
TCPとしては送れたデータ量をSeq番号で管理していてセグメントの分割は
ドライバの仕事なのでアプリケーションレベルでは意識する必要なかったと
思うけど
UDPとかIP直みたいなデータグラムの場合には「WSAEMSGSIZE」が返って
くるみたいだけどTCPは平気なんじゃないかな(転送データの保障がある
わけではない)
414デフォルトの名無しさん
2019/09/29(日) 17:35:14.18ID:3s0zt66k さすがに return にまで () 付けてるのはうざいわ
415デフォルトの名無しさん
2019/09/29(日) 17:44:23.38ID:MP9GBJ11 >>411
仲間に書かれても文句は言わねえな
見た目の問題じゃなく、やろうとしている内容がセンスに欠けるときなら
これ例えばこんな手もあるよなと議論に誘ったりはするし
iocccみたいな実験をTPOを間違えてやる大馬鹿野郎がいたら喧嘩売る
実例として/*/野郎は口汚く罵ってやった
仲間に書かれても文句は言わねえな
見た目の問題じゃなく、やろうとしている内容がセンスに欠けるときなら
これ例えばこんな手もあるよなと議論に誘ったりはするし
iocccみたいな実験をTPOを間違えてやる大馬鹿野郎がいたら喧嘩売る
実例として/*/野郎は口汚く罵ってやった
416デフォルトの名無しさん
2019/09/29(日) 17:51:28.09ID:dmuVBgYo ()なんてあってもなくても分かりやすけりゃいいんだよ
逆に>>403なんて()あってもなくても読みにくい。俺はこんなの絶対書かないな
逆に>>403なんて()あってもなくても読みにくい。俺はこんなの絶対書かないな
417デフォルトの名無しさん
2019/09/29(日) 18:02:50.86ID:bLCqrou7 sizeof には、極力変数名側を与えるようにして型名は避けるようにしてるけど
WinAPI とは遠い話だな
WinAPI とは遠い話だな
418デフォルトの名無しさん
2019/09/29(日) 18:08:58.10ID:MP9GBJ11419デフォルトの名無しさん
2019/09/29(日) 18:09:40.55ID:XoUEO8Fx return (a);
とは書かないけど、
return (a+1);
のときは括弧を付けなくなる
とは書かないけど、
return (a+1);
のときは括弧を付けなくなる
420デフォルトの名無しさん
2019/09/29(日) 18:44:22.03ID:qbYXpMyS GCCではtemplate関数の記述する際に、ある文字列が型であることをコンパイラに教えるtypenameキーワードが必要なので、sizeof に括弧がないと読みづらくなる傾向はある。
421デフォルトの名無しさん
2019/09/29(日) 21:35:11.45ID:MP9GBJ11422デフォルトの名無しさん
2019/09/29(日) 22:11:20.40ID:Mg/ytEjl >>415
規約や仕様の話じゃなくて見た目の話してるんだから、それを分かっててセンスがどうのこうのって言い出すのなら
この話の流れで草を生やしながら馬鹿まき散らすのは、マジでセンスないねって話になるよ
規約や仕様の話じゃなくて見た目の話してるんだから、それを分かっててセンスがどうのこうのって言い出すのなら
この話の流れで草を生やしながら馬鹿まき散らすのは、マジでセンスないねって話になるよ
423デフォルトの名無しさん
2019/09/29(日) 22:29:52.99ID:6WuqtMyk おはようさん
スレタイ読めない奴は総じてセンスも才能もないってことですよ
スレタイ読めない奴は総じてセンスも才能もないってことですよ
424デフォルトの名無しさん
2019/09/29(日) 22:52:38.22ID:Qb/y7uSu >>387
ありがとうございました
ありがとうございました
425デフォルトの名無しさん
2019/09/30(月) 08:14:44.84ID:069AXC1X >>422
やろうとしている内容がセンスに欠けているときって言ってるのに規格がどうたらとか、いいからまず涙拭けよw
やろうとしている内容がセンスに欠けているときって言ってるのに規格がどうたらとか、いいからまず涙拭けよw
426デフォルトの名無しさん
2019/09/30(月) 08:23:22.14ID:h3H1G0XJ もう少しwindowsに関係した話をだな
427デフォルトの名無しさん
2019/09/30(月) 09:28:52.10ID:5PqXiw6I ガイジの出身地方ではWin32APIの範囲なんだろ
428デフォルトの名無しさん
2019/09/30(月) 12:38:46.03ID:vkIGDak2 Win32APIがsizeof()推奨なのは
hoge * で済むものをわざわざ
typedef hoge *LPHOGE;
とかやっちゃって
sizeof LPHOGE
とかやって
不都合出て来るからだろ
hoge * で済むものをわざわざ
typedef hoge *LPHOGE;
とかやっちゃって
sizeof LPHOGE
とかやって
不都合出て来るからだろ
429デフォルトの名無しさん
2019/10/01(火) 20:49:26.16ID:D6lr/hhZ Win32 APIはバージョン差を吸収するのにパラメータ構造体にその大きさをセットするので
わりかし sizeof の頻度は高いかもな
わりかし sizeof の頻度は高いかもな
430デフォルトの名無しさん
2019/10/01(火) 21:01:09.96ID:OgNbwofS 流れを読まず適当にレスすると
win32apiプログラミングにおけるapiの仕様やsizeofの使用頻度を考えたら括弧付きが自然なのは周知の事実なんだから
それにセンスが何ちゃらと難癖付けてるのはwin32apiプログラミングしてないアホでしょ
こんなん出ました
win32apiプログラミングにおけるapiの仕様やsizeofの使用頻度を考えたら括弧付きが自然なのは周知の事実なんだから
それにセンスが何ちゃらと難癖付けてるのはwin32apiプログラミングしてないアホでしょ
こんなん出ました
431デフォルトの名無しさん
2019/10/01(火) 22:45:12.05ID:WzUe48WU カッコつけてんじゃねーよ的なやつな
432デフォルトの名無しさん
2019/10/01(火) 22:51:24.51ID:93GMDhBd チコちゃんもといカコちゃんみたいな
433デフォルトの名無しさん
2019/10/02(水) 06:50:57.68ID:c9vI97O0 > win32apiプログラミングにおけるapiの仕様やsizeofの使用頻度を考えたら括弧付きが自然なのは周知の事実なんだから
理由もメチャクチャだし周知とかアホすぎる
> それにセンスが何ちゃらと難癖付けてるのはwin32apiプログラミングしてないアホでしょ
>>430出ましたw
理由もメチャクチャだし周知とかアホすぎる
> それにセンスが何ちゃらと難癖付けてるのはwin32apiプログラミングしてないアホでしょ
>>430出ましたw
434デフォルトの名無しさん
2019/10/02(水) 10:31:29.32ID:y1aZWk4e スレタイ読まないカコちゃんまた来たの?頭弱いね
435デフォルトの名無しさん
2019/10/02(水) 11:02:31.08ID:I2VMZsV4 sizeofに括弧つけるかどうかなんて
正直どうでも良くね?
正直どうでも良くね?
436デフォルトの名無しさん
2019/10/02(水) 11:33:56.30ID:Jzurp0++ 構造体にサイズ入れることが一番多いからあんまつけないな
437デフォルトの名無しさん
2019/10/02(水) 13:04:47.75ID:55+aQRnY 64bit化してからHOGE_PTRが増えてさらに混乱
438デフォルトの名無しさん
2019/10/07(月) 18:52:52.31ID:gF1mLPnp sizeof付けるの嫌ならラッパー作ってそっちで呼び出せよ
win32APIの仕様がそーなるんだからしかたねーじゃん。手続き通りに記述するしかない。
win32APIの仕様がそーなるんだからしかたねーじゃん。手続き通りに記述するしかない。
439デフォルトの名無しさん
2019/10/07(月) 20:15:04.08ID:WFXsDvHg perlでWin32APIを使うライブラリWin32::APIを使ってると、
32bitと64bitで異なる構造体のアラインメントを正しく解釈してくれないので、アセンブラ並みに低レベルな記述が必要になることがある。
32bitと64bitで異なる構造体のアラインメントを正しく解釈してくれないので、アセンブラ並みに低レベルな記述が必要になることがある。
440デフォルトの名無しさん
2019/10/07(月) 21:01:12.36ID:Byy1mx9U cからperl呼ぶのも腐ってるな
441デフォルトの名無しさん
2019/10/07(月) 22:23:56.51ID:WFXsDvHg 質問です。
SetFilePointer()
https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-setfilepointer
を FILE_END で使ったことのある方はおられますか?
第3引数 PLONG lpDistanceToMoveHigh を 0 (そして第 2 引数 LONG lDistanceToMove も 0 )で使うと、FILE_END であっても当のファイルが 4GB 以上の場合にはポインタがファイルの最後に設定されない現象があるようです
この場合ダミー変数(毎回 0 を投入している)を設けて lpDistanceToMoveHigh にそのアドレスを設定すると FILE_END がその本来の意味を示すようにみえます。
推量形で記述しているのは、私の環境(mingw64-gcc)ではコンパイラのオプティマイザが過剰に効いている可能性があり -O0 でコンパイルしてはじめて、ある程度この現象が確認できたという事情のためです。
これは一般的な話なのでしょうか?
SetFilePointer()
https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-setfilepointer
を FILE_END で使ったことのある方はおられますか?
第3引数 PLONG lpDistanceToMoveHigh を 0 (そして第 2 引数 LONG lDistanceToMove も 0 )で使うと、FILE_END であっても当のファイルが 4GB 以上の場合にはポインタがファイルの最後に設定されない現象があるようです
この場合ダミー変数(毎回 0 を投入している)を設けて lpDistanceToMoveHigh にそのアドレスを設定すると FILE_END がその本来の意味を示すようにみえます。
推量形で記述しているのは、私の環境(mingw64-gcc)ではコンパイラのオプティマイザが過剰に効いている可能性があり -O0 でコンパイルしてはじめて、ある程度この現象が確認できたという事情のためです。
これは一般的な話なのでしょうか?
444デフォルトの名無しさん
2019/10/09(水) 21:49:31.92ID:75Pp/Qaq longの場所になぜintを使う
>>444
printf("sizeof(int):%d, sizeof(LONG):%d\n", sizeof(int), sizeof(LONG));
$ ./a.exe
sizeof(int):4, sizeof(LONG):4
printf("sizeof(int):%d, sizeof(LONG):%d\n", sizeof(int), sizeof(LONG));
$ ./a.exe
sizeof(int):4, sizeof(LONG):4
446デフォルトの名無しさん
2019/10/09(水) 22:12:20.45ID:wmrCsqX1 lpDistanceToMoveHighがNULLの時のFILE_ENDは単純にファイルサイズも下位32bitだけ見て処理してそう
でかいファイル扱うなら素直にSetFilePointerEx使った方がよさげ
でかいファイル扱うなら素直にSetFilePointerEx使った方がよさげ
>>446
*Ex には気がつきませんでした
昔書いたものをみると
s1 = GetFileSize(f, &s2);
SetFilePointer(f, s1, (PLONG)&s2, FILE_BEGIN);
WriteFile(f, p, strlen(p), &n, 0);
ってやっていましたから、どうも、昔も同じところで嵌ったらしく、お茶を濁す方法まで昔と同じのまま、しかもその記憶が今はない…
もうなにもかも忘れてしまった…
コメントありがとうございました
*Ex には気がつきませんでした
昔書いたものをみると
s1 = GetFileSize(f, &s2);
SetFilePointer(f, s1, (PLONG)&s2, FILE_BEGIN);
WriteFile(f, p, strlen(p), &n, 0);
ってやっていましたから、どうも、昔も同じところで嵌ったらしく、お茶を濁す方法まで昔と同じのまま、しかもその記憶が今はない…
もうなにもかも忘れてしまった…
コメントありがとうございました
448デフォルトの名無しさん
2019/10/15(火) 14:52:27.44ID:iJLx9DXs 書き込むなよクソコテの分際で
449デフォルトの名無しさん
2019/10/15(火) 19:34:41.89ID:6pml1OhP みんなクソだと思ってたけど
450デフォルトの名無しさん
2019/10/15(火) 20:02:45.72ID:M5SL5EtX そうなんだ
病気だね
病気だね
451デフォルトの名無しさん
2019/10/15(火) 20:59:08.69ID:H14rNUWV こんな場所でこんなクソ書き込みしてるくせに自身のクソさ加減に気付かないなんて病気だぞ☆
452デフォルトの名無しさん
2019/10/15(火) 22:41:36.61ID:72mqelru そうなんだ
病気だね
病気だね
453デフォルトの名無しさん
2019/10/17(木) 09:57:15.46ID:z4eLhP/Z PCが複数のネットワークにつながっています。
IUPnPDeviceFinderで検索するネットワークを指定するのはどうしたらいいのでしょう?
IUPnPDeviceFinderで検索するネットワークを指定するのはどうしたらいいのでしょう?
454デフォルトの名無しさん
2019/10/21(月) 22:12:09.79ID:EXgPOVjA CSPのハンドルであるHCRYPTPROVなんだけど、
これってスレッドセーフ?
具体的には、同じハンドル使って別スレッドで同時にCryptGenRandom()呼んでも大丈夫なものなの?
Goのcrypt/randが排他せずに同じハンドルで呼んでいて気になったんで
これってスレッドセーフ?
具体的には、同じハンドル使って別スレッドで同時にCryptGenRandom()呼んでも大丈夫なものなの?
Goのcrypt/randが排他せずに同じハンドルで呼んでいて気になったんで
455デフォルトの名無しさん
2019/10/21(月) 23:03:30.44ID:xGMxn7s7 7から10にしたらこんな感じで画面外の領域が描画されなくなってしまいました ttps://i.imgur.com/IjNvIme.png
Windows10で画面外の領域を描画させるような関数か方法はありますか?
InvalidateRect、UpdateWindow、RedrawWindow、PrintWindow、DwmGetDxSharedSurfaceは試しましたが無理そうです
ソースです ttps://dotup.org/uploda/dotup.org1975774.cpp.html
Windows10で画面外の領域を描画させるような関数か方法はありますか?
InvalidateRect、UpdateWindow、RedrawWindow、PrintWindow、DwmGetDxSharedSurfaceは試しましたが無理そうです
ソースです ttps://dotup.org/uploda/dotup.org1975774.cpp.html
457デフォルトの名無しさん
2019/10/22(火) 00:53:22.73ID:VVF85bpK >>456
CreateDCではディスプレイに表示されてる領域のデバイスコンテキストしか取得できませんでした
ウィンドウの外ではなく、ディスプレイの外に出ている領域を取得したいのです
CAPTUREBLTは単体だと真っ黒、SRCCOPYと一緒に指定してもSRCCOPY単体と変化はありませんでした
CreateDCではディスプレイに表示されてる領域のデバイスコンテキストしか取得できませんでした
ウィンドウの外ではなく、ディスプレイの外に出ている領域を取得したいのです
CAPTUREBLTは単体だと真っ黒、SRCCOPYと一緒に指定してもSRCCOPY単体と変化はありませんでした
458デフォルトの名無しさん
2019/10/22(火) 01:13:45.23ID:tgq7+oc3 455に貼ってるスクショでは単に5chのページが途中までしか描画されないように
見えるだけで、"画面外の領域"の意味がよく分からんが・・・・
それはともかく、実は管理者権限で実行するといけちゃうとか?
見えるだけで、"画面外の領域"の意味がよく分からんが・・・・
それはともかく、実は管理者権限で実行するといけちゃうとか?
459デフォルトの名無しさん
2019/10/22(火) 02:01:10.02ID:VVF85bpK >>458
別アプリ(画像ではブラウザ)をSetWindowPosでウィンドウの一部がディスプレイの外に出る位置に移動して
そのウィンドウの内容をBitBltで取得して自分のウィンドウに表示してるんですが
ディスプレイに表示されてないディスプレイの外に出た部分が真っ白になってしまいます
すいません、説明下手なのでソースを見てもらえると助かります
別アプリ(画像ではブラウザ)をSetWindowPosでウィンドウの一部がディスプレイの外に出る位置に移動して
そのウィンドウの内容をBitBltで取得して自分のウィンドウに表示してるんですが
ディスプレイに表示されてないディスプレイの外に出た部分が真っ白になってしまいます
すいません、説明下手なのでソースを見てもらえると助かります
460デフォルトの名無しさん
2019/10/22(火) 02:29:09.84ID:rKj5dIYC まともに説明もできないソースだとそもそも何したいのかわからないほどのバグな気がする
461デフォルトの名無しさん
2019/10/22(火) 02:57:41.77ID:tgq7+oc3 対象となるアプリのスクショを取るようなアプリでOK?
面倒なので試さないけど、単に画面外に描画しても無駄なので描画してない
だけのような気がするが、その理屈なら画面外ではなくその上に別ウィンドウを
表示させるとどうなるんだろうなってことと、対象アプリがブラウザ以外だと
どうなるんだろうなってことなど突き詰めたい項目が(面倒くさくなり以下略
面倒なので試さないけど、単に画面外に描画しても無駄なので描画してない
だけのような気がするが、その理屈なら画面外ではなくその上に別ウィンドウを
表示させるとどうなるんだろうなってことと、対象アプリがブラウザ以外だと
どうなるんだろうなってことなど突き詰めたい項目が(面倒くさくなり以下略
462デフォルトの名無しさん
2019/10/22(火) 09:19:42.21ID:cLGxu2gX Windows7でaero有効なら画面に見えていないウィンドウからbitbltできるが、10でaero廃止されたのが
関係しているのかな。
10でもタスクバーのウィンドウプレビューは表示されるから7と同じようにできてもいいとは思うが。
関係しているのかな。
10でもタスクバーのウィンドウプレビューは表示されるから7と同じようにできてもいいとは思うが。
463デフォルトの名無しさん
2019/10/22(火) 09:22:47.36ID:swuil85R 10でも取れるぞ。これは確実
ソース見てないから原因はしらね
ソース見てないから原因はしらね
464デフォルトの名無しさん
2019/10/22(火) 12:27:17.50ID:VVF85bpK465デフォルトの名無しさん
2019/10/22(火) 13:41:14.15ID:fxbuxtP/ 画面コピー貼る前にソース貼れ
>>464
早く解決したいのだったらソースを貼らないと
早く解決したいのだったらソースを貼らないと
467デフォルトの名無しさん
2019/10/22(火) 13:47:22.65ID:PRXTlxOV そのコードだとキャプチャできないのは確認したけどプレビューまではそんな風にならんな
なんとなくOS自体の省力設定に連動して
OSがクリップしてる or アプリ自身のクリップを引き起こしてる臭いけど
新しめのキャプチャAPIだと↓
https://docs.microsoft.com/en-us/windows/uwp/audio-video-camera/screen-capture
なんとなくOS自体の省力設定に連動して
OSがクリップしてる or アプリ自身のクリップを引き起こしてる臭いけど
新しめのキャプチャAPIだと↓
https://docs.microsoft.com/en-us/windows/uwp/audio-video-camera/screen-capture
468デフォルトの名無しさん
2019/10/22(火) 13:55:50.74ID:PRXTlxOV 補足、そっからじゃC++のデスクトップアプリからの使い方がわかんねえな
https://github.com/microsoft/Windows.UI.Composition-Win32-Samples/tree/master/cpp/ScreenCaptureforHWND
https://github.com/microsoft/Windows.UI.Composition-Win32-Samples/tree/master/cpp/ScreenCaptureforHWND
469デフォルトの名無しさん
2019/10/22(火) 14:05:08.56ID:VVF85bpK470デフォルトの名無しさん
2019/10/22(火) 14:09:15.53ID:fxbuxtP/ 一度memdcにコピーする手間があったような
471デフォルトの名無しさん
2019/10/22(火) 14:32:05.02ID:cLGxu2gX472デフォルトの名無しさん
2019/10/22(火) 15:53:33.65ID:VVF85bpK クリーンインストールWin10でも症状変わらず
ScreenCaptureforHWNDも変わりませんでした
>>471
画面内で表示してから画面外に移動してキャプチャしてませんか?
キャプチャはできても更新がされない感じなので
移動してから内容更新するとキャプチャ画像とプレビューがこうなります ttps://imgur.com/9IQYBMH
ScreenCaptureforHWNDも変わりませんでした
>>471
画面内で表示してから画面外に移動してキャプチャしてませんか?
キャプチャはできても更新がされない感じなので
移動してから内容更新するとキャプチャ画像とプレビューがこうなります ttps://imgur.com/9IQYBMH
473デフォルトの名無しさん
2019/10/22(火) 16:05:23.75ID:cLGxu2gX それをedgeとかでやっても同じなん?
動画を表示していもプレビューは随時更新されるが、ふつう。
動画を表示していもプレビューは随時更新されるが、ふつう。
474デフォルトの名無しさん
2019/10/22(火) 16:09:29.85ID:tgq7+oc3 他のキャプチャソフトではどうなるの?っと
475デフォルトの名無しさん
2019/10/22(火) 17:18:39.23ID:An+rmEaC コンパイラ設定がxp互換だと撮れないってのもあるな
47649
2019/10/22(火) 17:33:47.67ID:8AVeU+tz そもそも何がしたいのか分からない。
477デフォルトの名無しさん
2019/10/22(火) 18:06:58.79ID:PRXTlxOV こっちで試してる限りでもいまいち挙動に一貫性がなくて確証は無いんだが
そのWaterfoxってのだけ更新時に画面外のレンダリングを省いてるのはプレビューで確認できたんで
検証するのにそれは外した方がいいな
画面外に出たアプリのWM_PAINTでrcPaintが差分を返すのは正常な挙動なので
アプリ自体の画面更新と内容の取得のタイミングによってはプレビューがそうなる理屈は説明できる
キャプチャに用いているBitBltとも内容が異なるのはGDIとDWMでは見てるバッファが違うのかもしれない
ただ全部のアプリがそうなるとなるとこっちじゃ現象自体が確認できないのでなんとも
そのWaterfoxってのだけ更新時に画面外のレンダリングを省いてるのはプレビューで確認できたんで
検証するのにそれは外した方がいいな
画面外に出たアプリのWM_PAINTでrcPaintが差分を返すのは正常な挙動なので
アプリ自体の画面更新と内容の取得のタイミングによってはプレビューがそうなる理屈は説明できる
キャプチャに用いているBitBltとも内容が異なるのはGDIとDWMでは見てるバッファが違うのかもしれない
ただ全部のアプリがそうなるとなるとこっちじゃ現象自体が確認できないのでなんとも
478455
2019/10/22(火) 21:17:47.98ID:VVF85bpK >>473
>>477
Firefox、Waterfox、Chrome、VisualStudio2019、MPCBE、ペイント、メモ帳
画面外に出た部分はプレビュー更新されないし、BitBltも更新されてない画像しか取れない
Edge、フォト
画面外に出た部分もプレビュー更新される、BitBltでは画面内でも画像が取れない
IE
画面外に出た部分もプレビュー更新される、BitBltでは画像が取れたり取れなかったり不安定
動画です https://dotup.org/uploda/dotup.org1976519.mp4.html
>>474
Loiloだと画面外は真っ黒でした。他は名前言ってもらえれば試します
>>475
x64でプラットフォームツールセットはVisual Studio 2019(v142)なのでXP互換ではないと思います
>>476
ウィンドウの一部が画面外に出ても、ウィンドウがすべて画面内にあるのと同じようにキャプチャしたいです
>>477
Firefox、Waterfox、Chrome、VisualStudio2019、MPCBE、ペイント、メモ帳
画面外に出た部分はプレビュー更新されないし、BitBltも更新されてない画像しか取れない
Edge、フォト
画面外に出た部分もプレビュー更新される、BitBltでは画面内でも画像が取れない
IE
画面外に出た部分もプレビュー更新される、BitBltでは画像が取れたり取れなかったり不安定
動画です https://dotup.org/uploda/dotup.org1976519.mp4.html
>>474
Loiloだと画面外は真っ黒でした。他は名前言ってもらえれば試します
>>475
x64でプラットフォームツールセットはVisual Studio 2019(v142)なのでXP互換ではないと思います
>>476
ウィンドウの一部が画面外に出ても、ウィンドウがすべて画面内にあるのと同じようにキャプチャしたいです
479デフォルトの名無しさん
2019/10/22(火) 21:59:23.80ID:JI3aTgMm ディスプレイ外にはみ出した窓があってそのはみ出したリージョン内で表示更新かかってて
そいつを ALT+PrtScr でキャプチャしてもうまく取れてないなら厳しいんでないかな
そいつを ALT+PrtScr でキャプチャしてもうまく取れてないなら厳しいんでないかな
480デフォルトの名無しさん
2019/10/22(火) 22:11:54.49ID:An+rmEaC 俺自作のソフトはキャプチャできるが、ALT+PrtScrはキャプチャできん@win10
481デフォルトの名無しさん
2019/10/22(火) 22:35:32.44ID:YGRhwcPr グラボに依存とか?
482デフォルトの名無しさん
2019/10/22(火) 22:54:01.75ID:cLGxu2gX483デフォルトの名無しさん
2019/10/22(火) 22:56:43.07ID:HSQTG8Jj どうなんだろう。BitBlt(,,,SRCCOPY | CAPTUREBLT) しか方法ないのかね。
484デフォルトの名無しさん
2019/10/22(火) 23:00:04.93ID:GE3t6WX1 2段階のアクセラレータはどのようにやるのがいいの?
Visual Studio のCtrl+K Bみたいな・・・
Visual Studio のCtrl+K Bみたいな・・・
486デフォルトの名無しさん
2019/10/22(火) 23:10:21.12ID:PRXTlxOV なんかだんだんワケがわからなくなってきたが再度確認したら
基本的にUWPアプリ以外は画面外の再描画しないっぽいな(Chromium系はやっぱり描画されてるけど)
ほとんどのアプリが律義にrcPaint見てるとも思えんし描画先がGDIだと強制的にOSでクリップされてんのかしら?
おそらくWindows Compositionが噛んでてBitBltで取れないUWPアプリはWindows.Graphics.Captureで取れるけど
UWPアプリ以外でクリップ済みのイメージしか取れないのはまあ当然っちゃ当然
基本的にUWPアプリ以外は画面外の再描画しないっぽいな(Chromium系はやっぱり描画されてるけど)
ほとんどのアプリが律義にrcPaint見てるとも思えんし描画先がGDIだと強制的にOSでクリップされてんのかしら?
おそらくWindows Compositionが噛んでてBitBltで取れないUWPアプリはWindows.Graphics.Captureで取れるけど
UWPアプリ以外でクリップ済みのイメージしか取れないのはまあ当然っちゃ当然
487デフォルトの名無しさん
2019/10/22(火) 23:28:56.03ID:An+rmEaC win10でUWPでない従来のアプリの画面外キャプチャできるよ
win7がaeroオフだと撮れなかったみたいに何らかの条件があるのかもしれないが
win7がaeroオフだと撮れなかったみたいに何らかの条件があるのかもしれないが
488デフォルトの名無しさん
2019/10/23(水) 00:49:00.28ID:/s0IRa9G Mozilla Firefoxなどサードパーティ大手は今もWin32APIをネイティブに使っており.NETは使ってない。
489デフォルトの名無しさん
2019/10/23(水) 01:17:59.09ID:VREi5cKF エクスプローラのアドレスバーで「デスクトップ」とか「ダウンロード」って入れたら
そこのパスに移動しますが、「デスクトップ」(という日本語)からパスに変換するAPIはありますか?
そこのパスに移動しますが、「デスクトップ」(という日本語)からパスに変換するAPIはありますか?
490蟻人間 ◆T6xkBnTXz7B0
2019/10/23(水) 01:29:37.00ID:DFr4VJRt >>489
SHGetLocalizedNameの逆写像っぽい。CSIDLからテーブルを作るのが楽かと。
SHGetLocalizedNameの逆写像っぽい。CSIDLからテーブルを作るのが楽かと。
491デフォルトの名無しさん
2019/10/23(水) 01:33:15.99ID:VREi5cKF あれ?なんか上の方に同じような質問がw
492デフォルトの名無しさん
2019/10/23(水) 01:52:47.01ID:VREi5cKF なんかめちゃくちゃめんどくさそうw
493デフォルトの名無しさん
2019/10/23(水) 02:38:41.47ID:/s0IRa9G SHGetFolderPath() でCSIDLコンプリートをめざすとか
494蟻人間 ◆T6xkBnTXz7B0
2019/10/23(水) 03:33:00.02ID:bxABcYeD https://github.com/katahiromz/SHVistaPathMap
作ったぞ。自由に使え。
作ったぞ。自由に使え。
495デフォルトの名無しさん
2019/10/23(水) 04:05:49.94ID:/s0IRa9G496蟻人間 ◆T6xkBnTXz7B0
2019/10/23(水) 04:20:43.92ID:DFr4VJRt 仮想フォルダならPIDLを使うのではないか?
497蟻人間 ◆T6xkBnTXz7B0
2019/10/23(水) 04:23:26.39ID:DFr4VJRt PIDLとGUIDをどうやれば結び付けられるか? え〜と
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★4 [ぐれ★]
- 【音楽】Perfume・あ~ちゃんの結婚相手「一般男性」は吉田カバンの社長・吉田幸裕氏(41) 高身長で山本耕史似 [Ailuropoda melanoleuca★]
- 【大分】佐賀関で大規模火災、170棟以上が延焼中 70代男性1人と連絡取れず [ぐれ★]
- 【サッカー】日本代表MF 中村敬斗 ボリビア戦のスーパーゴールに「惚れるわ」「痺れる程のゴールこれでご飯何杯いけるのよ」 [阿弥陀ヶ峰★]
- 【サッカー】U-17日本代表、激闘PK戦制す 北朝鮮撃破で6大会ぶり8強入り U17W杯 [久太郎★]
- 「クマはなるべく山に返す努力を」「クマと戦争は間違っている」動物保護活動家の主張 棲み分けと学習放獣でクマ被害なくなるのか?★7 [ぐれ★]
- アンケート調査で「高市発言は問題なし」 93.5%wwwwwwwwwwwwwwwwwwwwwwwww [279254606]
- 【悲報】大分市佐賀関の火事、20軒→170軒に延焼🔥 [481941988]
- 自閉症が「んなっしょい」と連呼するお🏡
- 日本人の海外旅行したきのマナーよくなったのはいつから
- へそグリグリ
- 結婚しないやつは異性は嫌いなの?
