Win32APIについての質問はこちらへどうぞ。
■注意
・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。
・日本語版MSDN Online Libraryは不完全です。
英語版( http://msdn.microsoft.com/en-us/library/ )の利用推奨。
・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。
・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで
■過去スレ
Win32API質問箱 Build126
https://mevius.5ch.net/test/read.cgi/tech/1588339011/
Win32API質問箱 Build125
https://mevius.5ch.net/test/read.cgi/tech/1551247748/
Win32API質問箱 Build124
https://mevius.5ch.net/test/read.cgi/tech/1510395780/
■関連スレ
Visual Studio 2020 Part1 https://mevius.5ch.net/test/read.cgi/tech/1634166667/
Visual Studio 2019 Part7 https://mevius.5ch.net/test/read.cgi/tech/1634178709/
Visual Studio 2017 Part7 https://mevius.5ch.net/test/read.cgi/tech/1558179898/
【C++】 DirectX初心者質問スレ Part41 【C】 https://mevius.5ch.net/test/read.cgi/tech/1521786252/
探検
Win32API質問箱 Build127
■ このスレッドは過去ログ倉庫に格納されています
2021/12/09(木) 21:32:56.60ID:sYLpmj89
181デフォルトの名無しさん
2022/03/26(土) 19:41:02.41ID:39VlCDpx サロゲートペア対応とかで、特定のWin32APIの仕様が混乱してたりして、メリットが無くなってきてるからね。
将来的に ANSI/UTF8 がデフォルトになる可能性も完全には否定できず
将来的に ANSI/UTF8 がデフォルトになる可能性も完全には否定できず
182デフォルトの名無しさん
2022/03/26(土) 20:07:18.83ID:tpQ7cDA8183デフォルトの名無しさん
2022/03/26(土) 20:14:40.35ID:39VlCDpx そうね、今は基本W系だよね。
ただそうねえ、念のためA系についても忘れないでおいた方がいいかも、とは少しだけ思う。
https://docs.microsoft.com/ja-jp/windows/apps/design/globalizing/use-utf8-code-page
ただそうねえ、念のためA系についても忘れないでおいた方がいいかも、とは少しだけ思う。
https://docs.microsoft.com/ja-jp/windows/apps/design/globalizing/use-utf8-code-page
184デフォルトの名無しさん
2022/03/26(土) 20:57:55.95ID:tpQ7cDA8 忘れてはいないからこそ忘れてる(OR 分かっていない)人が混ざった時の問題が怖いのよ
185デフォルトの名無しさん
2022/03/26(土) 21:11:34.30ID:9k2FRpJr プラットフォームによってはワイド版のPOSIX関数がなかったりするから微妙だなあ
186デフォルトの名無しさん
2022/03/26(土) 21:22:26.00ID:xinKsQI1187デフォルトの名無しさん
2022/03/26(土) 21:22:54.54ID:PxCGY5CH ダイヤルボックスで指定したIPアドレスとポートで作ったソケットからちょっとした文字列を
送ろうとしたんですけどLNK2019エラーが出てしまいます。
VisualStudio2022、c++14、サブシステムはWindows (/SUBSYSTEM:WINDOWS)です。
エラー2019は何となくサブシステムが違うようなイメージで間違っていないでしょうか。
送ろうとしたんですけどLNK2019エラーが出てしまいます。
VisualStudio2022、c++14、サブシステムはWindows (/SUBSYSTEM:WINDOWS)です。
エラー2019は何となくサブシステムが違うようなイメージで間違っていないでしょうか。
188デフォルトの名無しさん
2022/03/26(土) 21:32:36.07ID:9JnLg/Xm >>187
> エラー2019は何となくサブシステムが違うようなイメージで間違っていないでしょうか。
何故ググらないの?
https://docs.microsoft.com/ja-jp/cpp/error-messages/tool-errors/linker-tools-error-lnk2019
> エラー2019は何となくサブシステムが違うようなイメージで間違っていないでしょうか。
何故ググらないの?
https://docs.microsoft.com/ja-jp/cpp/error-messages/tool-errors/linker-tools-error-lnk2019
189デフォルトの名無しさん
2022/03/26(土) 21:37:24.88ID:PxCGY5CH >>188
すみません、前回別の事で同じエラーが出たときに読んだんですけどよくわからなくて
マイクロソフト見てもわからないと思ったのですけど、もう一度読み直してみると、
何か忘れてるのかなぁって思ったので、もう少し頑張ってみます。
すみません、前回別の事で同じエラーが出たときに読んだんですけどよくわからなくて
マイクロソフト見てもわからないと思ったのですけど、もう一度読み直してみると、
何か忘れてるのかなぁって思ったので、もう少し頑張ってみます。
190デフォルトの名無しさん
2022/03/26(土) 21:39:46.78ID:wvtz3UMM クリティカルセクションで質問です
EnterCriticalSectionでスレッドの排他制御を行うとき、
作成したスレッド間では排他制御できています
これを、作成したスレッドではなく呼び出し元のプロセス側で
EnterCriticalSectionを実行しても、その間はスレッドの動作は
排他制御されて停止する(待つ)という認識で間違いないでしょうか?
EnterCriticalSectionでスレッドの排他制御を行うとき、
作成したスレッド間では排他制御できています
これを、作成したスレッドではなく呼び出し元のプロセス側で
EnterCriticalSectionを実行しても、その間はスレッドの動作は
排他制御されて停止する(待つ)という認識で間違いないでしょうか?
191デフォルトの名無しさん
2022/03/26(土) 22:55:33.42ID:39VlCDpx 質問の意図が正しく理解できてない可能性がありますが。
A critical section object provides synchronization similar to that provided by a mutex object,
except that a critical section can be used only by the threads of a single process.
Critical section objects cannot be shared across processes.
要約:
「クリティカル セクション」 オブジェクトはミューテックス オブジェクトと同様な同期を実現しますが、
クリティカル セクション オブジェクトは1つのプロセス内のスレッド間でだけ使えます。
クリティカルセクションオブジェクトは、プロセス間で共有できません。
A critical section object provides synchronization similar to that provided by a mutex object,
except that a critical section can be used only by the threads of a single process.
Critical section objects cannot be shared across processes.
要約:
「クリティカル セクション」 オブジェクトはミューテックス オブジェクトと同様な同期を実現しますが、
クリティカル セクション オブジェクトは1つのプロセス内のスレッド間でだけ使えます。
クリティカルセクションオブジェクトは、プロセス間で共有できません。
192デフォルトの名無しさん
2022/03/26(土) 23:03:19.27ID:tpQ7cDA8 >>189
"何故" LNK2019が起きているかをぐぐったり他人に投げる前に確認しないと遠回りになりそう
"何故" LNK2019が起きているかをぐぐったり他人に投げる前に確認しないと遠回りになりそう
193デフォルトの名無しさん
2022/03/26(土) 23:16:32.24ID:iKQRZLPO >>177
自分で勝手に W つけちゃだめだと思うよ…
ちゃんと「windows.h をインクルードする前に」 #define UNICODE しているか確認してね
C++11 or later になってからずいぶんと楽になりました…
https://mevius.5ch.net/test/read.cgi/tech/1434079972/53
自分で勝手に W つけちゃだめだと思うよ…
ちゃんと「windows.h をインクルードする前に」 #define UNICODE しているか確認してね
C++11 or later になってからずいぶんと楽になりました…
https://mevius.5ch.net/test/read.cgi/tech/1434079972/53
194デフォルトの名無しさん
2022/03/26(土) 23:17:11.29ID:iKQRZLPO >>190
つソース出せ、話はそれからだ
つソース出せ、話はそれからだ
195デフォルトの名無しさん
2022/03/26(土) 23:25:46.00ID:wvtz3UMM >>191
ありがとうございます
> クリティカル セクション オブジェクトは1つのプロセス内のスレッド間でだけ使えます。
> クリティカルセクションオブジェクトは、プロセス間で共有できません。
これは認識しているのですが、この文面を借りれば
「クリティカル セクション オブジェクトは1つのプロセス(メインプロセス・スレッド呼び出し側)と
スレッド(メインプロセスから呼び出されたスレッド)間で使えるのかどうか」
ということです
よろしくお願いします
ありがとうございます
> クリティカル セクション オブジェクトは1つのプロセス内のスレッド間でだけ使えます。
> クリティカルセクションオブジェクトは、プロセス間で共有できません。
これは認識しているのですが、この文面を借りれば
「クリティカル セクション オブジェクトは1つのプロセス(メインプロセス・スレッド呼び出し側)と
スレッド(メインプロセスから呼び出されたスレッド)間で使えるのかどうか」
ということです
よろしくお願いします
196デフォルトの名無しさん
2022/03/26(土) 23:48:22.49ID:5YtPDb7J >>195
複数のスレッドで使えると思いますよ、というか、そのためのクリティカルセクションでしょう?
ただ、私もクリティカルセクションの使い方がまずいのか、スタベーションに悩まされたまま放置しているので、断言はできないけど
なおちゃんとハンドルを static かヒープに置いていますか?スタック上にハンドルを置いていたら無意味ですよ…
複数のスレッドで使えると思いますよ、というか、そのためのクリティカルセクションでしょう?
ただ、私もクリティカルセクションの使い方がまずいのか、スタベーションに悩まされたまま放置しているので、断言はできないけど
なおちゃんとハンドルを static かヒープに置いていますか?スタック上にハンドルを置いていたら無意味ですよ…
197デフォルトの名無しさん
2022/03/26(土) 23:54:48.59ID:39VlCDpx >>195
使えます(正しくコーディングされていれば
念のため補足すると、プロセスというのはスレッドの集合であり。
プロセス生成と同時にスタートするスレッドのことを「メインスレッド」と言います。
なので、より正しい言い方としては以下のようになると思われます。
・メインスレッド
・(メインスレッドと同じプロセスに属する、メインスレッド等で生成された)メインスレッド以外のスレッド
これらのスレッド間でクリティカルセクションオブジェクトを共有することができます(排他制御可能です)
使えます(正しくコーディングされていれば
念のため補足すると、プロセスというのはスレッドの集合であり。
プロセス生成と同時にスタートするスレッドのことを「メインスレッド」と言います。
なので、より正しい言い方としては以下のようになると思われます。
・メインスレッド
・(メインスレッドと同じプロセスに属する、メインスレッド等で生成された)メインスレッド以外のスレッド
これらのスレッド間でクリティカルセクションオブジェクトを共有することができます(排他制御可能です)
198デフォルトの名無しさん
2022/03/26(土) 23:59:25.14ID:wvtz3UMM >>196
ありがとうございます
何か不具合が起きていると言うことではなくて、クリティカルセクションの
仕様について確認しようと思って質問しました
結局、そういうコードを書いて確認しましたが、メインプロセスではEnterCriticalSection
が効きませんでした
メインプロセスでEnterCriticalSectionを実行すれば、その間スレッドが止まる(その逆もある)
ということがもしかして可能なのかなと思った訳です
どうも失礼しました
ありがとうございます
何か不具合が起きていると言うことではなくて、クリティカルセクションの
仕様について確認しようと思って質問しました
結局、そういうコードを書いて確認しましたが、メインプロセスではEnterCriticalSection
が効きませんでした
メインプロセスでEnterCriticalSectionを実行すれば、その間スレッドが止まる(その逆もある)
ということがもしかして可能なのかなと思った訳です
どうも失礼しました
199デフォルトの名無しさん
2022/03/27(日) 00:06:26.31ID:AVpqtd2i >>197
入れ違いになってすみません
使えるとレス頂いたのでプログラムを確認しましたが、これは書き方が
悪かったようで確認になってませんでした
レス頂いた内容でとても分かりやすく理解できました
どうもありがとうございました
入れ違いになってすみません
使えるとレス頂いたのでプログラムを確認しましたが、これは書き方が
悪かったようで確認になってませんでした
レス頂いた内容でとても分かりやすく理解できました
どうもありがとうございました
200デフォルトの名無しさん
2022/03/27(日) 01:02:38.66ID:nCDHmZcB >>197
>念のため補足すると、プロセスというのはスレッドの集合であり。
全然説明になってませんよ…
次の質問にちゃんと答えられますか?
「プロレスごとに固有に持つ値はなにでしょうか、最重要な二つ答えなさい」
>念のため補足すると、プロセスというのはスレッドの集合であり。
全然説明になってませんよ…
次の質問にちゃんと答えられますか?
「プロレスごとに固有に持つ値はなにでしょうか、最重要な二つ答えなさい」
201デフォルトの名無しさん
2022/03/27(日) 01:03:29.30ID:nCDHmZcB202デフォルトの名無しさん
2022/03/27(日) 01:10:29.42ID:gW6L7jQM203デフォルトの名無しさん
2022/03/27(日) 01:12:55.86ID:yS8KpDml204デフォルトの名無しさん
2022/03/27(日) 04:28:08.59ID:yA+QVyZU 1プロセス内に、複数のスレッドを起動できる。
1対多の関係
それら同一プロセス内の複数のスレッドを調停するのが、critical section じゃないの?
1対多の関係
それら同一プロセス内の複数のスレッドを調停するのが、critical section じゃないの?
205デフォルトの名無しさん
2022/03/27(日) 04:33:51.34ID:aGS6McBI206デフォルトの名無しさん
2022/03/27(日) 06:46:03.90ID:hynzgwek 馬場アンドレ
207デフォルトの名無しさん
2022/03/27(日) 06:51:08.16ID:nbMAc3Vl 実は「ウィー!」と言ってなかった スタン・ハンセン雄たけびの真相: J-CAST ニュース
https://www.j-cast.com/2015/10/08247400.html?p=all
2015年10月08日18時42分
🤘ウィー!
https://www.j-cast.com/2015/10/08247400.html?p=all
2015年10月08日18時42分
🤘ウィー!
208sage
2022/03/27(日) 07:55:58.79ID:wX3DpwsS ちと出遅れたが
WinMainの第3引数は LPSTR
UNICODE版はスレチ
WinMainの第3引数は LPSTR
UNICODE版はスレチ
209デフォルトの名無しさん
2022/03/27(日) 10:41:58.12ID:uW5IEa4H LPWSTR GetCommandLineW();
210デフォルトの名無しさん
2022/03/27(日) 12:16:20.60ID:mfendAKw wWinMain(int, wchar_t**)
はい論破
はい論破
211デフォルトの名無しさん
2022/03/27(日) 14:13:00.54ID:uW5IEa4H キーワード同士でカードゲームみたいに対戦している気分になってくるな…
212デフォルトの名無しさん
2022/03/27(日) 14:19:54.35ID:LVDZu36U wWinMainは長いことmingwでサポートされてこなかったので
213sage
2022/03/27(日) 23:11:37.78ID:wX3DpwsS WinMain function (winbase.h)
https://docs.microsoft.com/ja-jp/windows/win32/api/winbase/nf-winbase-winmain
Some programming frameworks might provide an alternative entry point that provides a Unicode command line. For example, the Microsoft Visual Studio C++ complier uses the name wWinMain for the Unicode entry point.
https://docs.microsoft.com/ja-jp/windows/win32/api/winbase/nf-winbase-winmain
Some programming frameworks might provide an alternative entry point that provides a Unicode command line. For example, the Microsoft Visual Studio C++ complier uses the name wWinMain for the Unicode entry point.
214デフォルトの名無しさん
2022/04/05(火) 10:57:12.74ID:PKvr+8WT 現在プリンタ選択ダイアログを自作していて、質問があります。
印刷コモンダイアログに表示されているプリンタ名はEnumPrintersで取得できたのですが、アイコンを取得する方法がわかりません。
どうすればアイコンを取得できますか?
印刷コモンダイアログに表示されているプリンタ名はEnumPrintersで取得できたのですが、アイコンを取得する方法がわかりません。
どうすればアイコンを取得できますか?
215デフォルトの名無しさん
2022/04/05(火) 19:37:38.68ID:X0VysTPG それ俺も知りたいわ
どっかのプリンタ関連のdllにあるだろうけど
どっかのプリンタ関連のdllにあるだろうけど
216蟻人間 ◆T6xkBnTXz7B0
2022/04/05(火) 19:59:11.48ID:8xa3kqbX217デフォルトの名無しさん
2022/04/05(火) 22:36:38.88ID:X0VysTPG あーCOMオブジェクトか
C#でもサクっと書けないやつだな
C#でもサクっと書けないやつだな
218デフォルトの名無しさん
2022/04/06(水) 19:20:29.72ID:yz+LtdIo219デフォルトの名無しさん
2022/04/07(木) 19:12:44.04ID:mVtcUlDy ウィンドウのリサイズイベント(WM_SIZE、WM_SIZING等)が来た時、ユーザーが直接そのウィンドウに対してリサイズを行ったのか、
ディスプレイ解像度等が変わり、システムの都合で結果的に変わったのかを判定したいと考えています。
ディスプレイ設定が変わった場合はWM_DISPLAYCHANGE等で判るので、
ユーザーが能動的にウィンドウをリサイズしたかどうかの判定ができればよいと思うのですが、
何か良い判定方法はあるでしょうか。
ディスプレイ解像度等が変わり、システムの都合で結果的に変わったのかを判定したいと考えています。
ディスプレイ設定が変わった場合はWM_DISPLAYCHANGE等で判るので、
ユーザーが能動的にウィンドウをリサイズしたかどうかの判定ができればよいと思うのですが、
何か良い判定方法はあるでしょうか。
221デフォルトの名無しさん
2022/04/07(木) 22:02:00.24ID:mVtcUlDy222デフォルトの名無しさん
2022/04/07(木) 22:34:26.91ID:mVtcUlDy https://stackoverflow.com/questions/1826165/wm-entersizemove-wm-exitsizemove-when-using-menu-not-always-paired
ここによると、WM_ENTERSIZEMOVEが来てもリサイズや移動がキャンセルされるとWM_EXITSIZEMOVEが来ない場合があるようで、
その場合でもWM_ENTERSIZEMOVE中のWM_CAPTURECHANGEDで終了が判定できるとのことです。
たしかにタイトルバーからサイズや移動をキャンセルするとそのような動きでした。
これで解決しそうです。ありがとうございました。
ここによると、WM_ENTERSIZEMOVEが来てもリサイズや移動がキャンセルされるとWM_EXITSIZEMOVEが来ない場合があるようで、
その場合でもWM_ENTERSIZEMOVE中のWM_CAPTURECHANGEDで終了が判定できるとのことです。
たしかにタイトルバーからサイズや移動をキャンセルするとそのような動きでした。
これで解決しそうです。ありがとうございました。
223デフォルトの名無しさん
2022/04/07(木) 23:19:33.94ID:gMbVpyAJ 全ウィンドウを「並べて表示」したりした場合には対応してるのかい
224デフォルトの名無しさん
2022/04/08(金) 01:10:43.73ID:MjaozZ+o 鬼門エアロスナップもよろしく
225デフォルトの名無しさん
2022/04/08(金) 15:18:23.25ID:ZELibu1M スケーリング変更で実質解像度が変わった場合もWM_ENTERなんちゃらが来るね
WM_DISPLAYCHANGEも来るから区別は付くかな
WM_DISPLAYCHANGEも来るから区別は付くかな
226デフォルトの名無しさん
2022/04/09(土) 22:15:49.34ID:d9RaMPBt 画面端の四隅に独自スナップはやったなあ
吸い付くと気持ちいいのよね
吸い付くと気持ちいいのよね
227デフォルトの名無しさん
2022/04/09(土) 22:35:18.94ID:unOoTfDz osの画面の位置設定が、吸いつくくせにぴったり揃わず微妙にずれる
ふざけた動作だったな
ふざけた動作だったな
228デフォルトの名無しさん
2022/04/10(日) 09:07:01.55ID:67K4hItk windows10になってから
座標を0,0にしても少し隙間が空くようになったのもふざけてる
座標を0,0にしても少し隙間が空くようになったのもふざけてる
229デフォルトの名無しさん
2022/04/10(日) 11:51:01.29ID:ZzvqID4a 10は枠が透明になったふざけた仕様
何の意味あんのあれ
何の意味あんのあれ
230デフォルトの名無しさん
2022/04/10(日) 12:00:36.82ID:qE10hPc2 最低限必要な処理性能を引き上げることで
グラフィックボードやPCの買い替えを促進することができました。
グラフィックボードやPCの買い替えを促進することができました。
231デフォルトの名無しさん
2022/04/10(日) 13:17:17.03ID:wqaUV7TG 実際AVX2未満だと256bit命令でまともな事ほとんどできないからHaswell未満切り捨てたくなる気持ちは分かる
232デフォルトの名無しさん
2022/05/10(火) 16:03:53.83ID:Asxcv1id MSゴシックなどのフォントで、DrawTextで右寄せ(DT_RIGHT)の文字列を描くと、
イタリック体のときに右が欠けてしまうのですが、こんな仕様なのでしょうか?
イタリック体のときに右が欠けてしまうのですが、こんな仕様なのでしょうか?
233デフォルトの名無しさん
2022/05/10(火) 16:41:45.60ID:/q14vola はい
234デフォルトの名無しさん
2022/05/12(木) 23:26:02.37ID:zDTh1Mrl >>232
日本語のことなど真剣に考えてませんから
日本語のことなど真剣に考えてませんから
235蟻人間 ◆T6xkBnTXz7B0
2022/05/12(木) 23:36:32.49ID:M86RRSGr TEXTMETRIC.tmOverhang
236蟻人間 ◆T6xkBnTXz7B0
2022/05/12(木) 23:39:10.86ID:M86RRSGr237蟻人間 ◆T6xkBnTXz7B0
2022/05/12(木) 23:41:39.46ID:M86RRSGr DT_NOCLIP付ければうまく行くかも。
238デフォルトの名無しさん
2022/05/13(金) 15:10:08.96ID:RjF2gA5W >>232
最後にスペース足しとけ
最後にスペース足しとけ
239デフォルトの名無しさん
2022/05/13(金) 15:33:38.71ID:ezCooE+T そもそもMSゴシックを斜体にするのがダサいので、DrawTextとしても想定外という説
240デフォルトの名無しさん
2022/05/13(金) 17:05:13.85ID:rgkAeD2H どのフォントでもそうなるんでは?
241デフォルトの名無しさん
2022/05/13(金) 17:38:27.24ID:9J+8i6yQ 自力で右端を広げないといけないんですかね。
ただ、DT_WORDBREAKやDT_EDITCONTROLを付けて自動折り返しを設定していると、
どこで折り返されるかは事前に想定できないので、行末にスペースというのも難しそうです。
ただ、DT_WORDBREAKやDT_EDITCONTROLを付けて自動折り返しを設定していると、
どこで折り返されるかは事前に想定できないので、行末にスペースというのも難しそうです。
242デフォルトの名無しさん
2022/05/19(木) 17:45:14.82ID:vDWzHeJO 斜体だけ個別対応する
俺は気にしない
俺は気にしない
243デフォルトの名無しさん
2022/05/20(金) 06:40:29.02ID:QdnN/13A テンポラリのビットマップに描画して実測する関数作っとけば以後は気にせずに済む
244デフォルトの名無しさん
2022/05/20(金) 08:17:42.44ID:px60Na0a うわぁ…
245デフォルトの名無しさん
2022/05/20(金) 12:03:14.21ID:ke+jmrJb >>243
オラも対応するならその方法ダナ!
オラも対応するならその方法ダナ!
246デフォルトの名無しさん
2022/05/20(金) 14:53:55.20ID:w68O57ui 使ったことないから知らないけどGDI+,DrawStringならどうなんだろうね
247デフォルトの名無しさん
2022/06/07(火) 13:41:20.24ID:IY5aTV4U アスペクト比を固定したいため、ウィンドウの最大化を完全に無効にしたいのですが、フレームをダブルクリックしたり、Windowsキー + ↑での最大化を塞ぐにはどのように処理すればいいでしょうか?
248デフォルトの名無しさん
2022/06/07(火) 14:34:51.30ID:ADYYsKfQ WM_GETMINMAXINFO
249蟻人間 ◆T6xkBnTXz7B0
2022/06/07(火) 14:38:53.32ID:ET6AjTpg ウィンドウスタイル
250デフォルトの名無しさん
2022/06/07(火) 14:39:30.72ID:IY5aTV4U251デフォルトの名無しさん
2022/06/07(火) 14:41:36.70ID:IY5aTV4U252デフォルトの名無しさん
2022/06/07(火) 14:54:06.59ID:VnjxmjN7 ムリだと思いますゥ~じゃねえよいいからWS_MAXIMIZEBOX抜けや
253デフォルトの名無しさん
2022/06/07(火) 15:01:19.63ID:IY5aTV4U >>252
そんなのは一番最初に抜いてる
そんなのは一番最初に抜いてる
254デフォルトの名無しさん
2022/06/07(火) 15:31:44.87ID:OnF3qCRP ちゃんと抜いてんならそれだけで自動的にシステムメニューも含めて
タイトルバーダブクリやWin+↑も無効化されるはずだがな
タイトルバーダブクリやWin+↑も無効化されるはずだがな
255デフォルトの名無しさん
2022/06/07(火) 15:35:08.03ID:HZXBW/m6 メッセージループの入り口で
WM_NCLBUTTONDBLCLK 等のメッセージを捨てればOK
WM_NCLBUTTONDBLCLK 等のメッセージを捨てればOK
256デフォルトの名無しさん
2022/06/07(火) 16:05:01.49ID:IY5aTV4U257デフォルトの名無しさん
2022/06/07(火) 16:09:54.86ID:IY5aTV4U >>254
Windowsキーの方は正確には、Windowsキー + SHIFT + ↑ ですね
Windowsキーの方は正確には、Windowsキー + SHIFT + ↑ ですね
258デフォルトの名無しさん
2022/06/07(火) 16:55:24.79ID:LNP3bNny 正確には、ってかそれじゃ最初からスナップによるリサイズを防ぎたいって全然違う質問じゃん
SYSCOMMAND監視して無理矢理引っぺがしたりはできるけど行儀悪すぎだから
任意のウィンドウサイズになってもボックスでレンダリングのアスペクト比維持した方がマシだな
SYSCOMMAND監視して無理矢理引っぺがしたりはできるけど行儀悪すぎだから
任意のウィンドウサイズになってもボックスでレンダリングのアスペクト比維持した方がマシだな
259デフォルトの名無しさん
2022/06/07(火) 17:24:17.68ID:HZXBW/m6260デフォルトの名無しさん
2022/06/07(火) 21:10:34.66ID:TZU+Jbyx 最大化はダイアログのスタイルにして抑止するのが定石だけど誰も書かないので一応
C#のFormBorderStyle = FixedDialog の時のウィンドウスタイル=0x16c80000 拡張ウィンドウスタイル=0x00050101
これでスナップの影響も受けないし、その上でサイズ変更もやりたければできる。
許容しつつアス比を維持するのもいい。ゲームのフルスクリーンモードとかそんな感じだろうし
C#のFormBorderStyle = FixedDialog の時のウィンドウスタイル=0x16c80000 拡張ウィンドウスタイル=0x00050101
これでスナップの影響も受けないし、その上でサイズ変更もやりたければできる。
許容しつつアス比を維持するのもいい。ゲームのフルスクリーンモードとかそんな感じだろうし
261デフォルトの名無しさん
2022/07/03(日) 16:22:44.87ID:K2/9xttr HINSTANCEかHWNDから、そのプロセスが貰っているコマンドラインオプションを知る方法ってある?
262蟻人間 ◆T6xkBnTXz7B0
2022/07/03(日) 16:43:25.38ID:wwKaul6r263蟻人間 ◆T6xkBnTXz7B0
2022/07/03(日) 16:44:52.75ID:wwKaul6r GetWindowThreadProcessId使えばHWNDからプロセスID (pid)が得られるはずだ。
264デフォルトの名無しさん
2022/07/03(日) 17:40:46.92ID:K2/9xttr265デフォルトの名無しさん
2022/07/13(水) 14:56:13.92ID:6WIGt+Xj SetWindowPlacement, GetWindowPlacement を使ってウィンドウ位置の保存と復元をしています
マルチモニター環境でも当該モニターで表示されていたウィンドウ情報の保存と復元が Windows10 以前では行えていましたが、
Windows11 になってからは、マウス操作しているモニターで全てウィンドウが表示されてしまいます
これはプログラム側で何か修正が必要なのか、Windows11 上の設定(アプリのプロパティ?)が必要なのでしょうか?
Windows11 でマルチモニターの仕様が変わったというのは分かりますが、具体的にどのように対応すればいいのか分かりません
よろしくお願いします
マルチモニター環境でも当該モニターで表示されていたウィンドウ情報の保存と復元が Windows10 以前では行えていましたが、
Windows11 になってからは、マウス操作しているモニターで全てウィンドウが表示されてしまいます
これはプログラム側で何か修正が必要なのか、Windows11 上の設定(アプリのプロパティ?)が必要なのでしょうか?
Windows11 でマルチモニターの仕様が変わったというのは分かりますが、具体的にどのように対応すればいいのか分かりません
よろしくお願いします
267デフォルトの名無しさん
2022/07/13(水) 15:53:47.47ID:LawUXVQN 標準の仮想デスクトップとかも追加されてるのでちゃんと動くのかよくわからんよな
268デフォルトの名無しさん
2022/07/13(水) 17:22:23.86ID:6WIGt+Xj269デフォルトの名無しさん
2022/07/14(木) 22:38:26.85ID:ztzbKaJ8 ベータ以前の11のことだからバグかもしれないのがな
11.1で完成するOSなんだろうな
11.1で完成するOSなんだろうな
270デフォルトの名無しさん
2022/07/14(木) 23:19:01.63ID:je7st1fi 手元の開発環境を Windows11 & マルチモニターで揃えてテストしてみると問題は再現しませんでした
これは問題が発生した環境依存によるものの可能性が非常に高くなりました
お騒がせしましてすみませんでした
これは問題が発生した環境依存によるものの可能性が非常に高くなりました
お騒がせしましてすみませんでした
271デフォルトの名無しさん
2022/07/22(金) 09:23:12.50ID:nl1lv8Ha 名前付きパイプで質問です。
Windows10(x64)で64ビットアプリ(サーバー)と32/64ビットアプリ(クライアント)でパイプ通信するのですが、クライアントが64ビットの場合は問題なし、32ビットの場合は動作したりしなかったっりで、サーバーのCreateNamedPipe関数のnMaxInstancesを1から255にしたら解消しました。
クライアントは1つだけなので1で良いと思ったのですが、何なんだろう?
Windows10(x64)で64ビットアプリ(サーバー)と32/64ビットアプリ(クライアント)でパイプ通信するのですが、クライアントが64ビットの場合は問題なし、32ビットの場合は動作したりしなかったっりで、サーバーのCreateNamedPipe関数のnMaxInstancesを1から255にしたら解消しました。
クライアントは1つだけなので1で良いと思ったのですが、何なんだろう?
272デフォルトの名無しさん
2022/07/22(金) 10:36:39.51ID:nl1lv8Ha273デフォルトの名無しさん
2022/07/26(火) 18:26:55.94ID:fMGzaZG1 プログラ厶の最低限の文法わかってる人間が、WindowsAPIを使用したGUIプログラムを作りたい場合に、おすすめの本ってありませんか?
正直WindowsAPIのハンドルとかハンガリー記法とかで面食らってぶつかってます。
正直WindowsAPIのハンドルとかハンガリー記法とかで面食らってぶつかってます。
274デフォルトの名無しさん
2022/07/26(火) 18:51:12.11ID:od2hcCSg > WindowsAPIを使用したGUIプログラムを作りたい
そもそも止めとけ楽な道を進めと思うんだけど、なんで?
> おすすめの本
今時そんな本あるのか分からないけど、猫でもわかるシリーズのWEBサイトでいいんじゃないの
そもそも止めとけ楽な道を進めと思うんだけど、なんで?
> おすすめの本
今時そんな本あるのか分からないけど、猫でもわかるシリーズのWEBサイトでいいんじゃないの
275デフォルトの名無しさん
2022/07/26(火) 19:38:38.71ID:qDGm82dw NT4.0や95の頃の書籍はメッセージやハンドル等丁寧な解説がされていたと思う
276デフォルトの名無しさん
2022/07/26(火) 19:54:38.78ID:BV8Vz3Ix277アリ人間 ◆T6xkBnTXz7B0
2022/07/26(火) 20:46:20.96ID:SFGiBpCo Win32でGUIつくるならMsgCrackとRisohEditorを使うといいよ。
278デフォルトの名無しさん
2022/07/27(水) 21:47:08.84ID:K/AxbL6V279デフォルトの名無しさん
2022/07/29(金) 10:07:57.73ID:utvRDsk1 C#でもWndProcとかに手を付けると結局Win32APIレベルのメッセージループの仕組みの知識が必要だし
C/C++でWin32APIだけ使ったメッセージループ検証用GUIアプリを用意しとくと捗るよ
C/C++でWin32APIだけ使ったメッセージループ検証用GUIアプリを用意しとくと捗るよ
280デフォルトの名無しさん
2022/07/30(土) 02:15:20.39ID:pJ1A3nc7 C++でクラス化ラップ化する前のピュアなメッセージループをなら猫かな
そこから先は ラップしてるライブラリの方言が出てくるだろうし
そこから先は ラップしてるライブラリの方言が出てくるだろうし
281デフォルトの名無しさん
2022/07/30(土) 12:31:23.06ID:YQlRXD6d■ このスレッドは過去ログ倉庫に格納されています
ニュース
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★11 [樽悶★]
- 外国人の犯罪率は日本人の1.72倍 警察庁が短期滞在者除いた数字を参院内閣委で答弁★2 [七波羅探題★]
- 【日中対立】 朝日新聞のタイトル修正が中国逆ギレの火種か SNSで批判相次ぐ [♪♪♪★]
- 「ドラゴンボール」初の全世界キャラクター人気投票が開幕!212キャラからナンバーワンが決まる!! [ひかり★]
- ひろゆき氏 高市首相の台湾有事発言 「日本が得たものあまりない。経済的なマイナスは明確に存在」 [冬月記者★]
- アメリカ議会 「中国が台湾武力侵攻する準備を急速進展中」 ★5 [お断り★]
- 趣味なくてむなしすぎるんだが😭
- 【画像】「松屋、とんかつ松の屋」の数万着エプロンが大量に廃棄され結果としてディスカウントストアで販売。何があったのか? [776365898]
- 16のヒッキー女に構って
- 最近泳ぎ始めたんやがあんま痩せんな
- Redditの外国人たち、なぜか日本の江戸時代の『五人組』システムに興味津々。めっちゃ↑付いてるのに日本人の俺が知らない😰 [718678614]
- 【すべてが】𝗮𝗺͜𝗮͉𝘇𝗼𝗻ブラックフライデーSALE総合【いいだろ!】 [194819832]
