Visual Studio 2022 Part3

レス数が950を超えています。1000を超えると書き込みができなくなります。
2025/11/27(木) 06:15:50.08ID:xvpFNUUm0
commdlg.hつことけ
2025/11/27(木) 08:01:18.24ID:UEijD4WZ0
>>951
framework.hのdefine WIN32_LEAN_AND_MEANを消すか、直接commdlg.hをincludeしたらいい
今、windows.hの中でWIN32_LEAN_AND_MEANが定義済みだと除外される記述になってるから。
955デフォルトの名無しさん (ワッチョイ 47e6-j3nM)
垢版 |
2025/11/27(木) 09:49:11.37ID:yTPYpgBk0
commdlg.h 入れたら出来ました。でもなんでなくなったの?
てか、今ではGetOpenFileNameは使わずに他の方法でやってるのかな?
今デフォルトでは何を使ってるの?
2025/11/27(木) 13:46:38.57ID:I+Uuo5vt0
アイちゃんあてにならないな
> AI による概要
GetOpenFileName関数は廃止されていませんが、Windows Vista以降、新しいアプリケーションでは
**Common Item Dialog API の使用が推奨されています**。
WIN32_LEAN_AND_MEAN マクロは、コンパイル時間を短縮し、依存関係を減らすために、
windows.h に含まれる一部のヘッダーファイルやAPI定義を省略するためのものですが、
GetOpenFileName が定義されている commdlg.h は通常含まれるため、
このマクロによって機能が利用できなくなることはありません。
957デフォルトの名無しさん (ワッチョイ 47e6-j3nM)
垢版 |
2025/11/27(木) 14:14:22.36ID:yTPYpgBk0
Common Item Dialog APIとはなんぞや、調べてみます。ありがと
それと今まで3時間くらいぐだぐだやって発見したバグ??がありました
ウインドウの上に表示されるタイトルですが、SetWindowTextでいくらやっても最初の1文字だけしか表示されないのです
でわかったことは、Projectの一番下のPropertiesの中でCharacterSetをUnicodeからMultibyteにしたらそうなりました
Unicodeのままだと問題ありません。Multibyteにすると、1文字だけしか表示されません
これって報告されていると思うのですが改善策ってありますか
ググってSetWindowTextはSetWindowTextAとSetWindowTextWを切り替えてくれるってのは見つけたのですが、機能してないのかな
レスを投稿する

レス数が950を超えています。1000を超えると書き込みができなくなります。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況