■過去ログ置き場に戻る■ 1- 前250 次250 最新50


[memo] "9999999999_00.html#R20" という感じで、URLの最後に "#RレスNo" を追加すると幸せになれます。

Win32API質問箱 Build37
251 名前:デフォルトの名無しさん :2005/11/17(木) 20:04:48
>>250
書き忘れたが、
wstream類も入出力先(ファイルなど)ではマルチバイト文字で、
入出力時にワイド文字へ変換しているからな。

252 名前:デフォルトの名無しさん :2005/11/17(木) 20:41:11
>>251
ありがとうございます。
その書き込みで気がついたのですが、データはANSI(UTF-8)のまま読み書きしなきゃいけないのでした。本家がデータはすべてUTF8で扱う方針のようですので。
とりあえずUTF-8ならASCIIと衝突することがないだろうという適当な方法ではあるのですが、国際化なんてほとんどそんなもんですよね。
C++/C室の方には書いたのですが、ファイル名をUTF8で渡すと壊れる文字があるのです。
bash+cygwin,MinGW,VC7&6のどれも同じように壊れるんで、libcrtかWin32APIのどちらかが悪さしてるみたいですが、そのへんを深く追求するのはやめました。
とりあえずファイルパスを扱う部分だけUTF16化して、適時変換を噛ませればよいかな、と。
9x系はどうしようもないですねぇ。
ファイル名をUnicode化せずにファイル内部にUTF-8なファイル名を持たせればASCIIでもいけるのですが、それだと手間が大きすぎますし…

253 名前:デフォルトの名無しさん :2005/11/17(木) 20:58:31
>>252
きっとまずいのはWinAPIだ。
CRTはおそらくファイル名の文字列に手を加えていないと思われるので、
WinAPIに原因がある。もちろん単にファイル名をUTF-8では受け付けない仕様で、
WinAPIには何の非もないのだが。

254 名前:デフォルトの名無しさん :2005/11/17(木) 21:04:56
>>248
でも、ないよりはましじゃね?
ちょっとした物ならこれで十分なこともあるし。

255 名前:デフォルトの名無しさん :2005/11/17(木) 23:26:55
>>245
俺も詳しいことは知らんが、LCIDとCodePageは分けて考えたほうが良いと思うな。
setlocale()やSetLocaleInfo()等で設定するのはLCID。で、Language Identifier
に紐づいているCodePage(エンコーディング)が自動的に設定されるんだと思う。
日本語なら932、という風にな。

VC++のヘルプにはsetlocale()で設定可能な言語識別文字列が載っているが、
そこにはUTF-8は無いし、OSレベルのLanguage Identifierにも無い。
から、「設定できない」と考えるべきだろう。

GetACP()があるんだから、SetACP()のような、エンコーディングだけ指定できる
APIがあると良かったんだがな。

>>252
Windows APIでANSI文字列(char*)を渡したときは、ACPでエンコードされていると
仮定される。何もしなければそれは932だから、UTF-8文字列なんぞ食わせりゃ
問題が生じて当然だな。
で、上で述べたようにACPをUTF-8に変更する方法はどうもなさそうだから、
やはりWCSに変換してW版のAPIを呼ぶのが一番穏当だろう。
9x系がどうしようもないのは確か。

256 名前:デフォルトの名無しさん :2005/11/17(木) 23:58:46
_tsetlocale() の影響下にある各種Cライブラリ関数は、
Win32APIの同機能に比べて低速なので期待したほど使えない。
多くの人は、_tcsicmp() を使うくらいなら、Win32APIの lstrcmpi() を使う。


257 名前:デフォルトの名無しさん :2005/11/18(金) 05:41:02
メニューバーとツールバーにヴィジュアルスタイルを適用する方法を教えてください
お願いします
お願いします
.manifestファイルおいても適用されません
このとおりです

258 名前:243 :2005/11/18(金) 07:40:35
>>244
ありがとうございます。
ところで、なぜその式になるのでしょうか?
参考になるHPなどありましたら教えていただけますでしょうか?
こういう情報って、どのようなキーワードでググれば出てきますか?

無知&教えて君でスマソorz

259 名前:デフォルトの名無しさん :2005/11/18(金) 08:39:50
>>258
どちらかというと算数のお話し

3×2の画像は

123
456

の順でデータが並んでいる。あとは自分で考えれ

260 名前:デフォルトの名無しさん :2005/11/18(金) 08:55:05
>>259
そうだね、数学じゃなく算数レベルだねぇ(w
widthは横の幅、yは縦の位置、xは横の位置、だから解りやすくすると・・・
i = (width * y) + x;


261 名前:デフォルトの名無しさん :2005/11/18(金) 09:18:00
まぁ、実際に画像の加工をするなら
static inline offset(int x, int y, unsigned width) {return x + y * width;}
とでもしておくと便利なわけだが。
#どう便利かはスレ違いにつき割愛。

262 名前:デフォルトの名無しさん :2005/11/18(金) 10:11:51
アライメントのこと忘れてるヤツが多いのかな

263 名前:デフォルトの名無しさん :2005/11/18(金) 10:13:37
アライメット、あれは良い物だ

264 名前:デフォルトの名無しさん :2005/11/18(金) 10:16:02
>>262
そこはハマってもらうところだからなw

265 名前:デフォルトの名無しさん :2005/11/18(金) 11:07:19
4bitでRLEなDIBを食わせてやるぜ。


266 名前:デフォルトの名無しさん :2005/11/18(金) 11:08:37
ペッ

267 名前:デフォルトの名無しさん :2005/11/18(金) 11:16:43
メモリデバイスコンテキストの情報をビットマップファイルとして
ディスクに書き出すにはどうしたらよいのでしょうか?

268 名前:デフォルトの名無しさん :2005/11/18(金) 11:19:15
前略
CreateFile
WriteFile
CloseHandle

269 名前:デフォルトの名無しさん :2005/11/18(金) 11:37:40
>>262
そんなときにも>261のように関数にしておけばちょっと安心。

270 名前:デフォルトの名無しさん :2005/11/18(金) 12:41:37
>>267
デバイス非依存ビットマップを作成し、
それに対しBitBlt()などで記録したい情報をコピー。
それからDIBの内容を>>268の通りにする。

271 名前:デフォルトの名無しさん :2005/11/18(金) 13:07:14
>>268
「草々」で締めるんだよ

272 名前:デフォルトの名無しさん :2005/11/18(金) 13:10:52
そうそう、そうだったな

273 名前:デフォルトの名無しさん :2005/11/18(金) 14:09:57
bitmap の画像に文字を埋めこんでいますが、文字列の取得のためにダイアログを
出してやって入ます。これをエディタのようなインライン入力にしたいのですが、
これまでこの手の操作は edit control 任せだったので、APIもよく分かりません。
ImmCreateContext() とかを使うのかなと想像していますが、マウスでクリックし
た場所に入力ウインドウを表示するというのは、どういう API を使うのでしょうか。
この関連を調べろとかでも結構です。お教え下さい。
(猫でも...も見ました。IMM 設定操作のみのようです。)

274 名前:デフォルトの名無しさん :2005/11/18(金) 14:11:56
その場にeditを出してしまうのが手っ取り早い。

275 名前:デフォルトの名無しさん :2005/11/18(金) 15:39:12
エディットコントロールで使用するフォントをArialに変更しているのですが
Arialは日本語をサポートしていないため全角文字を入力すると文字化けしてしまいます。
この文字化けを防ぎたいのですが何か方法はありますか?

276 名前:デフォルトの名無しさん :2005/11/18(金) 15:40:30
答えわかってるんじゃん。

277 名前:デフォルトの名無しさん :2005/11/18(金) 15:57:00
>>275
・全角文字を入力させない。
・Arialを使わない。

278 名前:デフォルトの名無しさん :2005/11/18(金) 19:19:19
フォントリンクとかできねーの?

279 名前:デフォルトの名無しさん :2005/11/18(金) 19:32:45
UNICODEアプリにすればオケ。

280 名前:デフォルトの名無しさん :2005/11/18(金) 19:37:50
それは嫌です

281 名前:デフォルトの名無しさん :2005/11/18(金) 20:21:34
諦める

282 名前:デフォルトの名無しさん :2005/11/18(金) 21:09:59
自アプリのファイルの関連付けをプログラムから変更した場合に、
アイコンなどは再起動しないとエクスプローラなどに反映されないみたいですが、
これをすぐに反映させる方法をご存知でしたら教えてください。


283 名前:デフォルトの名無しさん :2005/11/18(金) 21:15:32
>>282
PC初心者
http://pc7.2ch.net/pcqa/

284 名前:デフォルトの名無しさん :2005/11/18(金) 21:19:39
>>283
( ゚Д゚)ハァ?

285 名前:デフォルトの名無しさん :2005/11/18(金) 21:20:44
>>282
SHChangeNotify

286 名前:243 :2005/11/18(金) 21:29:04
>>259
>>260
なるほど! 解説、ありがとうございます!

287 名前:282 :2005/11/18(金) 21:43:57
>>285
早速のお返事ありがとうございます。
意外と手軽に実現できたので驚きました。
本当に助かりました。

288 名前:デフォルトの名無しさん :2005/11/18(金) 21:58:57
>>283
m9(^Д^)プギャ---ッ

289 名前:デフォルトの名無しさん :2005/11/18(金) 22:25:07
>>283はたぶん私はこれからここへ行って調べてきますって言いたかったんだよ

290 名前:273 :2005/11/18(金) 22:34:01
>>274
レス感謝。「確定」をどう受け取るかイメージがまだ。試して見ます。

291 名前:デフォルトの名無しさん :2005/11/19(土) 00:59:12
257 :デフォルトの名無しさん :2005/11/18(金) 05:41:02
メニューバーとツールバーにヴィジュアルスタイルを適用する方法を教えてください
お願いします
お願いします
.manifestファイルおいても適用されません
このとおりです

これに答えてください

292 名前:デフォルトの名無しさん :2005/11/19(土) 01:35:23
自作の Editor で IME のインライン変換が突然でなくなったんだけど、
どうしてかわかる人います?

同じバイナリで、別の Windows2000 や XP では出てるんだけど・・・。
環境は、Windows XP SP1、IME 2003

そんなのを設定できるプロパティってあったかな。

293 名前:デフォルトの名無しさん :2005/11/19(土) 02:00:45
MakeSureDirectoryPathExists()にてフォルダを作成しています。
c:\\ \\ \\
と指定すると空白のフォルダが作成できてしまいます。
CreateDirectory() や _mkdir() などでは、空白のフォルダを作成しようとした際にはエラーになります。本来、命名規約上は作成できないのが正解だと思います。
このように空白のフォルダを作ってしまうと削除もできなくなってしまいます。
Debug系のAPIのせいかもしれませんが、何か情報をもっていれば教えて下さい。
不具合でしょうか。

294 名前:292 :2005/11/19(土) 02:24:46
>>291
uxtheme.lib をロードして、DrawThemeBackground とか
適用すればいいんじゃないの?

295 名前:デフォルトの名無しさん :2005/11/19(土) 02:48:39
Unicode使うと\を含むフォルダが作れるんだっけ・・・

296 名前:292 :2005/11/19(土) 03:08:19
うーん、どうやら IME のナチュラルインプット2003が有効で、
かつ、
テキストサービスと入力言語>互換性の構成
の「詳細なテキスト サービスのサポートをプログラムのすべてに
拡張する」にチェックが付いていると描画できないみたいなんだけど

情報お持ちの方がいらっしゃったら教えていただければ幸いです


297 名前:デフォルトの名無しさん :2005/11/19(土) 03:24:15
>>293
> 本来、命名規約上は作成できないのが正解だと思います。

果たしてそうなんだろうか。WinXPのコマンドプロンプトで試してみたが、
>md " "
だとエラーになったが、
>md " \"
とするとディレクトリができた。
削除は
>rd " \"
でOK

って、よく試したらcdができないな。ダメポ。

298 名前:デフォルトの名無しさん :2005/11/19(土) 03:25:17
VCのリソースエディタでコンボボックスを置いて
ドロップダウンリストにしているのですが
クリックしてもリストが表示されません
(正確には表示されているようなのですが、数ピクセルしか縦の幅がなくて項目が一つも見えません)
どうしたらちゃんと表示されるのでしょうか?

299 名前:デフォルトの名無しさん :2005/11/19(土) 03:31:28
>>298
それFAQ。ってかスレ違い。
リソースエディタ上で、ドロップダウンさせてみれば分かるんじゃない?

300 名前:デフォルトの名無しさん :2005/11/19(土) 03:39:27
>>155
日本語訳されていない続きがあってそっちに正解が載ってる。
http://msdn.microsoft.com/library/en-us/dncode/html/secure03132003.asp
ImpersonateNamedPipeClientのエラーチェックをしていないので
失敗したときSYSTEM権限のまま続きのコードが実行されてしまう。

301 名前:デフォルトの名無しさん :2005/11/19(土) 03:40:58
>>296
どうでもいいけどx64 Editionだとそのオプションないな

302 名前:デフォルトの名無しさん :2005/11/19(土) 04:08:04
ある文字列の一部を指定した文字列に置換するようなAPIってありますか?
例えば、"abcdefg" の "cd" の部分を "\%" に置換するといったような感じで。

303 名前:デフォルトの名無しさん :2005/11/19(土) 04:41:13
APIには無いだろうが、標準ライブラリに有るだろ。

304 名前:デフォルトの名無しさん :2005/11/19(土) 06:31:46
1. GUIアプリが、自らコンソール窓を開いたり、既存のコンソール窓に出力したりすることは可能なのでしょうか?
2. Win32コンソールアプリが、コンソール窓を自ら閉じてしまう(実行は継続)ことは可能なのでしょうか?

305 名前:デフォルトの名無しさん :2005/11/19(土) 06:53:44
可能

306 名前:デフォルトの名無しさん :2005/11/19(土) 07:16:26
>>294
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/commctls/userex/topics/partsandstates.asp
なぜかここに書かれてる定数を利用できないので無理です
最新版のSDKいれてるのに
マジわかんね

307 名前:デフォルトの名無しさん :2005/11/19(土) 07:28:10
>>306
いれたSDKのフォルダをインクルードパスに指定してないか、指定順序が後のほうになってるんじゃない?

308 名前:デフォルトの名無しさん :2005/11/19(土) 07:41:57
>>307
最新版のSDKのインクルードファイルが詰まってるフォルダを一番先に指定してるけど無理

309 名前:デフォルトの名無しさん :2005/11/19(土) 07:47:29
直接定数値を入力すれば?

310 名前:デフォルトの名無しさん :2005/11/19(土) 07:48:48
つ Tmschema.h

311 名前:デフォルトの名無しさん :2005/11/19(土) 08:18:27
>>308
インスコしてんのに使えないんだから、
設定か記述か、どちらにしろあんたのやり方が悪いだけ

312 名前:デフォルトの名無しさん :2005/11/19(土) 08:48:26
Windows2000/XPだと、txtファイルなどの通常ファイルにもコメントやカテゴリを埋め込むことができる。
docファイルなどの内部ストレージファイルの場合は、
PSDKにあるStructuredStorageサンプルのpropdump.cppを単体ビルドしたもので閲覧できるのだけど、
通常ファイルの場合は、このサンプルではプロパティを取得することができない。

どなたか、txtなどの通常ファイルのプロパティ(カテゴリ・コメント・作成者など)を取得する方法をご教授下さい。

313 名前:デフォルトの名無しさん :2005/11/19(土) 08:59:57
>>312
NTFS副次ストリームのSummaryInformationに保存されている。
だからhoge.txtならhoge.txt:SummaryInformationという名前でファイルを開けばデータを読み出せる。
俺もやったことはないからどういう風に格納されているかは知らないけど。

314 名前:デフォルトの名無しさん :2005/11/19(土) 09:41:59
>>309-311
Tmschema.hインクルードするの忘れてました

315 名前:312 :2005/11/19(土) 09:57:05
>>313
回答ありがとうございます。
自分の環境では"StructuredStorage"の前に0x05が入るため、
"hoge.txt:\x50SummaryInformation"とする必要があるなど、汎用な取得方法ではないようです。
ですが、ヒントになるキーワードを頂いたのでさらに調査を進めることができました。
NTFS固有プロパティの取得方法が以下のURLにありました。今から試してみるつもりです。

ttp://msdn.microsoft.com/library/default.asp?url=/library/en-us/stg/stg/ipropertysetstorage_open.asp

316 名前:デフォルトの名無しさん :2005/11/19(土) 09:57:38
その後>>314の姿を見た者はいない

317 名前:デフォルトの名無しさん :2005/11/19(土) 09:58:22
(´・ω・) カワイソス

318 名前:315 :2005/11/19(土) 09:59:03
文章訂正:
× 自分の環境では"StructuredStorage"の前に0x05が入るため、 
○ 自分の環境では"SummaryInformation"の前に0x05が入るため、 

319 名前:デフォルトの名無しさん :2005/11/19(土) 10:09:48
どういう誤植だよそれ

320 名前:312 :2005/11/19(土) 10:31:02
>>319
直前にクリップボードに入ってた文字列が似てたから間違えただけ。

BTW、>>312で失敗サンプルとしてあげたpropdump.cppで呼び出している、
StgOpenStorageEx()の第7引数のGUIDを
IID_IStorage から IID_IPropertySetStorage に変更すれば、
ちゃんとNTFSプロパティでも動くっぽい。但し、なぜかassert()を吐く。

321 名前:315 :2005/11/19(土) 10:53:47
>>315の文章訂正:
×"hoge.txt:\x50SummaryInformation"
○"hoge.txt:\x05SummaryInformation"

322 名前:デフォルトの名無しさん :2005/11/19(土) 11:02:13
全然似てねぇ・・・

323 名前:デフォルトの名無しさん :2005/11/19(土) 11:08:03
ていうか取得して何に使うんだろう・・・
微妙に気になった

324 名前:デフォルトの名無しさん :2005/11/19(土) 11:40:31
エロ動画にジャンルを埋め込めば自動で整理するツールを簡単に作れる

325 名前:デフォルトの名無しさん :2005/11/19(土) 11:52:59
なるほど

326 名前:デフォルトの名無しさん :2005/11/19(土) 12:03:34
>>323
応用は色々だね。メディアファイルにユーザ定義の付加情報つける時に有益だ。
Office・一太郎ドキュメントファイルなどの内部ストレージ型情報と違って、他のPCに持ちこしできないけど。

327 名前:デフォルトの名無しさん :2005/11/19(土) 12:17:55
自作のメディアプレイヤーを使用しているのであれば、
メディアのタイムマーカー情報を副次ストレージに保存できる。
長時間のファイルの頭出し再生もこれで快適だ。

328 名前:デフォルトの名無しさん :2005/11/19(土) 14:41:54
副次ストレージって便利なんだな

329 名前:292 :2005/11/19(土) 15:55:15
>>301

レスありがとうございます。
うーん、他の Editor(sakura とか)では、その状態でも IME の
変換ウィンドウが出るから、やり方が悪いみたいなんだけど・・・。

ちょっとシンプルなサンプル作って考えて見ます。

330 名前:デフォルトの名無しさん :2005/11/20(日) 02:16:46
あるプロセスが起動しているかどうかを調べて
起動してなければ起動する、
既に起動していたら何もしない、
といった動作を考えているのですが、起動しているかどうか
を判別する方法はありますか?

331 名前:330 :2005/11/20(日) 02:18:55
ちなみに、その「あるプロセス」は、一番最初は
自分で起動する事が決まっています。そのため
ハンドル等は保持しておく事は可能なので
そのハンドルを使って判別するAPIとかがあれば
良いのですが。

332 名前:デフォルトの名無しさん :2005/11/20(日) 02:24:39
二重起動防止等でググればいろいろ出てくると思うが、CreateMutexでも使っとけば。

333 名前:330 :2005/11/20(日) 02:28:47
ありがとうございました。逝ってきます。

334 名前:デフォルトの名無しさん :2005/11/20(日) 11:13:24
OpenMutex⇒CreateMutexで2重起動出来たという落ちは未だ。チンチン(AA略

335 名前:デフォルトの名無しさん :2005/11/20(日) 12:06:24
アトム使ってもいい?

336 名前:デフォルトの名無しさん :2005/11/20(日) 12:50:57
お茶の水博士の承認が必要です。


337 名前:デフォルトの名無しさん :2005/11/20(日) 13:11:38
むしろ手塚プロダクションの承認の方が厳しいぞ

338 名前:デフォルトの名無しさん :2005/11/20(日) 14:33:09
ブラックジャックとサングラスと手塚センセがギャルゲーをしてるマンガで、
隅に「手塚プロダクション承認済み(本当)」と書いてあるのを見たことがある。

339 名前:デフォルトの名無しさん :2005/11/20(日) 16:38:29
マジレスが1人もいないのかw

GlobalAddAtom
GlobalGetAtomName
GlobalDeleteAtom
GlobalFindAtom

で、アトムテーブルを使っても逝ける。

340 名前:デフォルトの名無しさん :2005/11/20(日) 16:58:56
>>334
その間違いをやってた本もあったなあ。

http://www.expertmg.co.jp/html/cti/vctips/process.htm#%91%BD%8Fd%8BN%93%AE%82%F0%96h%8E~%82%B7%82%E9
↑は修正済み

341 名前:デフォルトの名無しさん :2005/11/20(日) 17:52:43
フリーソフトpasswinのソースですが、ウィンドウを動かした時などに
ちらつきが生じます。どこを修正すればよいか検討がつきませんので、
なにかアドバイスなどよろしくお願いします
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1122.c

342 名前:デフォルトの名無しさん :2005/11/20(日) 17:54:21
>>334
信長○野望オンラインがそれやってる。

343 名前:デフォルトの名無しさん :2005/11/20(日) 18:00:28
>>341
適当に言ってみるけど
wndclass.hbrBackground = GetStockObject( WHITE_BRUSH );
これをNULLにしてみては?

344 名前:デフォルトの名無しさん :2005/11/20(日) 18:08:48
>>340
そのリンク先の多重起動防止の所のコードでReleaseMutex()って必要なのかなぁ

345 名前:デフォルトの名無しさん :2005/11/20(日) 20:40:24
C言語初心者スレからきました。
ウインドウを表示するプログラムをコンパイルしたのですが、
外部シンボル ’_main’が未解決 (C:\borland\bcc55\lib\cox32.objが参照)
というエラーが表示されます。
どういう意味ですか?

346 名前:デフォルトの名無しさん :2005/11/20(日) 20:51:31
main()関数がないんだよ。

347 名前:345 :2005/11/20(日) 21:06:24
レスありがとうございます。
WinMain()が最初に書いていますが、別にmain関数がいるんですか?

348 名前:デフォルトの名無しさん :2005/11/20(日) 21:08:32
>>345スレ違い

349 名前:デフォルトの名無しさん :2005/11/20(日) 21:19:00
知識が無いなら金払えのいい見本だな。
そこから動くまで教えてやれるほど気が長くないよな。
普通の人は。

350 名前:デフォルトの名無しさん :2005/11/20(日) 21:21:59
>>345
bccのFAQ。ヘルプのコンパイラオプションのとこ嫁


351 名前:デフォルトの名無しさん :2005/11/20(日) 21:25:47
>>345にはこれがお似合い(;^ω^)
ttp://www.imgup.org/file/iup121219.png

352 名前:デフォルトの名無しさん :2005/11/20(日) 21:46:06
おー、懐かしい。
俺が買ったのはVer.2だったな。
BorlandC++も買ったけど、高校生だったから高かったなぁ。

353 名前:345 :2005/11/20(日) 21:49:59
ここも違いますか?
どこへ行けばいいのでしょうか?

354 名前:345 :2005/11/20(日) 21:51:34
>>350
すいません。リロードしてませんでした。
bccの問題なんですね。そこを読みます。
ありがとうございました!

355 名前:デフォルトの名無しさん :2005/11/20(日) 21:56:17
>>352
最近はDLできたりする罠

Turbo C++ 1.01
http://bdn.borland.com/article/0,1410,21751,00.html
Turbo Pascal 5.5
http://community.borland.com/article/0,1410,20803,00.html

356 名前:デフォルトの名無しさん :2005/11/20(日) 22:03:03
TurboC良かったけどな
マウスなかったから、左手だけでカーソル動かせるのが好きだった
そういやVCのキーコンフィグを弄らなくなったのはいつからだろう

357 名前:デフォルトの名無しさん :2005/11/20(日) 22:03:51
>>344
いらないけどこのMutexは本来の目的(待機)にはまったく使ってないから
間違いでもない

358 名前:デフォルトの名無しさん :2005/11/20(日) 22:55:07
win32 api はどうしてこんなに糞仕様が多いのでちゅか?

359 名前:デフォルトの名無しさん :2005/11/20(日) 23:15:21
>>358
昔はそれで良かったからさ。

360 名前:デフォルトの名無しさん :2005/11/21(月) 00:07:55
昔はパラメータチェックすらなかったから変なパラメータ渡すと
簡単にOSがおかしくなってたな

361 名前:デフォルトの名無しさん :2005/11/21(月) 00:29:04
Winampみたいに動的にタスクバー表示/非表示を切り替えるのって
どうやってるんですかね?
最初からずっと非表示なら、HIDEのメインウインドウを用意すれば
できましたけぢ。

362 名前:デフォルトの名無しさん :2005/11/21(月) 01:27:33
いかにもアバウトな欧米人の作ったものらしい

363 名前:デフォルトの名無しさん :2005/11/21(月) 02:35:39
俺らもアバウトになれば解決

364 名前:デフォルトの名無しさん :2005/11/21(月) 06:26:49
>>361
WM_EX_APPWINDOW拡張スタイルをつけたりはずしたりすればいいんでない?

365 名前:デフォルトの名無しさん :2005/11/21(月) 06:48:14
>>361
The Shell creates a button on the taskbar whenever an application creates a window that isn't owned.
To ensure that the window button is placed on the taskbar,
create an unowned window with the WS_EX_APPWINDOW extended style.
To prevent the window button from being placed on the taskbar,
create the unowned window with the WS_EX_TOOLWINDOW extended style.
As an alternative, you can create a hidden window and make this hidden window the owner of your visible window.

The Shell will remove a window's button from the taskbar only if the window's style supports visible taskbar buttons.
If you want to dynamically change a window's style to one that doesn't support visible taskbar buttons,
you must hide the window first (by calling ShowWindow with SW_HIDE), change the window style, and then show the window.


366 名前:デフォルトの名無しさん :2005/11/21(月) 08:42:29
マウスカーソルを移動させてクリックさせたいのですが
GetCursorPosで移動は出来たのですが、
クリックの方法が判りません。
教えてください。宜しくお願いします。

367 名前:デフォルトの名無しさん :2005/11/21(月) 08:54:04
mouse_event

368 名前:デフォルトの名無しさん :2005/11/21(月) 08:56:05
GetCursorPosで移動ってことは…

369 名前:デフォルトの名無しさん :2005/11/21(月) 08:56:50
>>368
気にしたら負け

370 名前:デフォルトの名無しさん :2005/11/21(月) 08:56:55
SendInput

371 名前:デフォルトの名無しさん :2005/11/21(月) 10:19:01
SendMessage WM_LBUTTONDOWN

372 名前:デフォルトの名無しさん :2005/11/21(月) 10:40:05
本当にありがとうございました

373 名前:デフォルトの名無しさん :2005/11/21(月) 17:17:47
>>361
こういうことですか?
http://www.runan.net/program/tips/sdk_10_ITaskbarList.shtml

374 名前:デフォルトの名無しさん :2005/11/21(月) 20:22:30
timeSetEventのTimerProcを同時に複数使うことは出来るでしょうか。
timeBeginPeriodとtimeEndPeriodを
前後に付けるルールがあるので、やり方が分かりません。

375 名前:デフォルトの名無しさん :2005/11/22(火) 00:22:49
何故WindowsのAPIを使ってコードを書くと
小汚くなってしまうのでしょうか?www

376 名前:デフォルトの名無しさん :2005/11/22(火) 00:29:13
書いてるやつにコーディングセンスがないから

377 名前:デフォルトの名無しさん :2005/11/22(火) 01:01:15
書いてるやつが小汚いから

378 名前:デフォルトの名無しさん :2005/11/22(火) 01:17:23
自己評価乙w

379 名前:デフォルトの名無しさん :2005/11/22(火) 01:35:21
EnumThreadWindows等の、ウィンドウ列挙APIで列挙したウィンドウ(というかダイアログ)が、
本当に目的のウィンドウかを区別する方法について。

SendMessageTimeoutを使って、「山」といえば「川」を返す、みたいな特定の「合言葉」を
何個かやりとりして、相手を識別する方法はどうかと思うのですが...問題ありますか?

380 名前:デフォルトの名無しさん :2005/11/22(火) 01:38:57
>>379
たまたまその投げた先のウインドウが実装している独自定義のメッセージIDとぶつかってしまった場合

381 名前:379 :2005/11/22(火) 01:52:27
そこはRegisterWindowMessageあたりで。
っていうか、まさにこういうときに↑を使うんですかね。

382 名前:デフォルトの名無しさん :2005/11/22(火) 02:02:41
>>379が何をしたいのかよくわからない。
俺様ルールを決めたところで他プロセスは全く従わないと思うが。

383 名前:デフォルトの名無しさん :2005/11/22(火) 03:05:42
ウィンドウ名かウィンドウのクラス名を調べればいいじゃん
と言ってみるテスト

384 名前:デフォルトの名無しさん :2005/11/22(火) 03:23:54
補足したい相手のアプリは自作なんだよな?
で、ウィンドウ名、クラス名、メッセージ通信だと偶然被るのが心配、と。
だったら共有メモリ使ってハンドルを受け渡すってのが確実といえば確実。

385 名前:デフォルトの名無しさん :2005/11/22(火) 03:25:07
ああ、RegisterWindowMessageで決着ついてたのか。
ゴメソ。見なかったことにしてくれ。

386 名前:デフォルトの名無しさん :2005/11/22(火) 11:47:49
これまで長いこと使ってて気がつかなかったんだが、TRACEマクロ内の文字列で、
'\n'だけの改行の後に日本語の文字列を出力すると、アウトプットウィンドウの
表示がおかしくなるのな。

例えば ...

TRACE("\n現在時刻 =%s",COleDateTime::GetCurrentTime().Format(_T("%Y/%m/%d %H:%M:%S")));

TRACE(_T("\n現在時刻 =%s"),COleDateTime::GetCurrentTime().Format(_T("%Y/%m/%d %H:%M:%S")));

の実行結果は...

現サ在時刻 =2005/11/22 12/34/56

と「現」と「在」の間に半角の「サ」が表示される。

TRACE("\r\n現在時刻 =%s",COleDateTime::GetCurrentTime().Format(_T("%Y/%m/%d %H:%M:%S")));

TRACE(_T("\r\n現在時刻 =%s"),COleDateTime::GetCurrentTime().Format(_T("%Y/%m/%d %H:%M:%S")));

と、「\n」→「\r\n」とすれば問題ない。

コンソールのバグが原因なのか?これって、ガイシュツ?
環境は、VC++6.0SP6で、Win2000,Win98とも同じ結果になった。

387 名前:デフォルトの名無しさん :2005/11/22(火) 12:03:22
改行文字を考えろ

388 名前:デフォルトの名無しさん :2005/11/22(火) 12:22:31
OutputDebugString("\n現在時刻");
OutputDebugString("\r\n現在時刻");
OutputDebugString("\r\r\n現在時刻");


389 名前:デフォルトの名無しさん :2005/11/22(火) 15:46:09
HPEN hPen = CreatePen(PS_SOLID, 2, RGB(255, 255, 255);
として作成したペンを
hPen = CreatePen(PS_SOLID, 1, RGB(128, 128, 128);
と後から変更しようと思ってるのですが2回目のCreatePen()の前にDeleteObject()は必要ですか?

それと二種類のペンが必要な場合は、↑の様にせずに
最初からペンを二つ用意しておいた方が無難ですか?

390 名前:デフォルトの名無しさん :2005/11/22(火) 15:52:40
>>389
それは、解放せずに同じ変数に上書きしてるだけ
リークしたくなければ、DeleteObjectするべき

391 名前:デフォルトの名無しさん :2005/11/22(火) 16:02:20
最初から二種類要るとわかってるなら用意しとけ

392 名前:デフォルトの名無しさん :2005/11/22(火) 16:11:43
>>390>>391
迅速なレスありがとうございます。
最初から二種類必要なのはわかってるのですが
同時に使用することはまず無いので
一つの変数を使いまわしで良いかと思いました。
使いまわす場合はDeleteObjectが必要で
使いまわすよりは別々に用意しておいた方が良いのですね。

393 名前:デフォルトの名無しさん :2005/11/22(火) 16:16:07
「同時に使用することは無い」は「交互に使用することは無い」の間違いでした

394 名前:デフォルトの名無しさん :2005/11/22(火) 16:33:42
文字列が見つかりません:「同時に使用することは無い」

395 名前:デフォルトの名無しさん :2005/11/22(火) 17:17:55
>>392
使い回さなくても、DeleteObjectはしろ。

396 名前:デフォルトの名無しさん :2005/11/22(火) 19:16:39
念のため聞いておくけど、SelectObjectの返り値を使って復元しているよな。

397 名前:デフォルトの名無しさん :2005/11/22(火) 20:02:38
>>395>>396
ああ、それはちゃんと心得ています。
お気遣いありがとうございます。

398 名前:デフォルトの名無しさん :2005/11/22(火) 23:42:20
evntはCreateEvent()で作成したハンドルです。

ret = WaitForSingleObject(evnt, 0);

の戻り値について質問なんですが、
evntがシグナルな状態ならWAIT_OBJECT_0
evntが非シグナルな状態ならWAIT_TIMEOUT
が戻ってくると考えて正しいでしょうか?

399 名前:デフォルトの名無しさん :2005/11/22(火) 23:57:03
MSDNを読む限りそう書いてあるようです。

400 名前:デフォルトの名無しさん :2005/11/23(水) 00:47:40
>>398
ドキュメントが本当に正しいかどうか自力で検証できるように、
関数の動作テスト用の小規模なプロジェクトを用意しておくべきだよ。
のちのちまで、その小テスト環境が威力を発揮することになる。

小テストをはじめるに当たって、何が影響を与えていて何が影響を与えていないのか、
最初に考えなければならないが、これが問題の切り分けをする良い機会になる。

401 名前:デフォルトの名無しさん :2005/11/23(水) 01:39:19
さすがM$の製品、ユーザが使用前にAPIのテストをしなきゃならんとは…ククク

402 名前:デフォルトの名無しさん :2005/11/23(水) 01:40:34
お前プログラマじゃないだろ

403 名前:デフォルトの名無しさん :2005/11/23(水) 01:56:13
標準のC/C++であっても動作テストはやるものだ。
Unix系のUnicode関連処理のお粗末ぶりを確認するためにも必要だ。
また、ドキュメントの微妙なニュアンスが正確にプログラマに伝わらないことは多い。
例えば、構造体メンバに渡した文字列のアドレスは、すぐに破棄してよいのか、維持する必要があるのかなど。

404 名前:デフォルトの名無しさん :2005/11/23(水) 02:22:25
SetWindowsHookExを使ってコンソールアプリもAPIフックしたいんだけど
SetWindowsHookExは コンソールアプリからだと使えないのかな
誰か知っている人が居たら教えて

405 名前:デフォルトの名無しさん :2005/11/23(水) 02:27:13
>>404
使えない。
コンソールアプリはメッセージキューが無い。
(無いっていっちゃうと厳密じゃないかもしんないけど。)

406 名前:デフォルトの名無しさん :2005/11/23(水) 02:36:16
>>405
あー、そうなんだ。

ということは、例え、全プロセスにAPIフックしていたとしても
コンソールアプリからAPIを叩かれると、ダメなんだ。

407 名前:デフォルトの名無しさん :2005/11/23(水) 02:37:55
というか全プロセスのAPIをフックしたかったら、
レジストリでやってもいいんじゃないか?

408 名前:デフォルトの名無しさん :2005/11/23(水) 02:41:51
>>407
でも、あれってやっぱりコンソールには通用しないんじゃなかったっけ。

http://www.codeproject.com/system/hooksys.asp
ここにそんな記述が。

409 名前:デフォルトの名無しさん :2005/11/23(水) 02:50:06
健全なキーストローク記録プログラムを制作しようと思うのですが、
タイマーでチェックしまくるのとフックするのって、どちらがオススメでしょうか?

410 名前:デフォルトの名無しさん :2005/11/23(水) 02:51:27
>>409
タイマーなんざ使い物にならない

411 名前:デフォルトの名無しさん :2005/11/23(水) 02:59:29
>>410
レスありがとうございます。フックで行く事にします。

#レスを見た後検証し、納得しました

412 名前:デフォルトの名無しさん :2005/11/23(水) 03:37:10
指定したウィンドウがMDIの子ウィンドウか調べる方法はありますか?

413 名前:デフォルトの名無しさん :2005/11/23(水) 04:50:24
ありますよ

414 名前:デフォルトの名無しさん :2005/11/23(水) 08:40:01
>>408
その通り。そのレジストリもUSER32.DLLが見てDLLをロードしている
(本来はプロセス間で共通のウィンドウクラスを登録するためのものだから)
よってUSER32.DLLを使わないプロセスに対しては無力。
コンソールアプリのAPIフックにはCreateRemoteThreadかDebugActiveProcessが必要。

415 名前:デフォルトの名無しさん :2005/11/23(水) 09:09:13
質問です。

ある関数のメモリ使用量をモニタリングする関数or方法があれば教えてください。
最終的にやりたい事は、その関数内における最大メモリ使用量の取得です。

416 名前:デフォルトの名無しさん :2005/11/23(水) 09:53:56
どんな変数があるかとかチェックして自分で計算すれば?

417 名前:デフォルトの名無しさん :2005/11/23(水) 10:01:13
>>415
・メモリとはヒープなのか、スタックなのか。
・ヒープの場合、その関数でallocして、外に所有権を移した場合、どうカウントするのか。
・その関数で作成したインスタンスがdelayed-initializeされた際のメモリはどの関数につけるのか。
・OSからのメモリ取得、言語内のメモリ管理どちらを対象にするのか。
・再帰した場合、どのようにカウントするのか。
・例外が発生した場合、どのようにカウントするのか。
・その関数が、他の関数を呼んだ場合、その呼ばれた関数の分もカウントするのか。
・その呼ばれた関数が、SendMessageだったりした場合、
 他のスレッドにメッセージを送ってその処理終了を待つことがあるが、その場合他スレッドの分はどうカウントするのか。
・その関数が内部で他のスレッドを起動した場合、そのスレッドの分はどうカウントするのか。

とりあえず思いついた謎。
スタックならプロファイラで分かったような気がする。

418 名前:デフォルトの名無しさん :2005/11/23(水) 10:11:57
実行状況で変わるんじゃないの?

419 名前:デフォルトの名無しさん :2005/11/23(水) 11:32:04
>>415
それは最終的にやりたい事じゃないだろ。
その値を使ってする事が最終的にやりたい事だろ。
どのみち関数毎は自分で計算するしかないな。
一応、パフォーマンスカウンタを調べれば出来ることと出来ない事が判るだろう。

420 名前:デフォルトの名無しさん :2005/11/23(水) 12:37:36
>>414
できますた。
色々なテクニックを組み合わせないと、実現できないのね。

感謝です。

421 名前:デフォルトの名無しさん :2005/11/23(水) 12:39:39
自ウィンドウ外でもマウスの動きを取得するには、どうすればいいんでしょうか

422 名前:デフォルトの名無しさん :2005/11/23(水) 14:15:31
APIからconsoleアプリを呼び出して標準出力の内容を呼び出し元で取得したいのだけれど
どうすれば良いの?

423 名前:デフォルトの名無しさん :2005/11/23(水) 14:21:14
>>422
つ[popen()]
APIもあるだろうけど取り敢えずこれ。

424 名前:デフォルトの名無しさん :2005/11/23(水) 14:35:01
>>423
呼び出し元がconsoleアプリじゃないのでpopenじゃ無理っぽいですがpopenのヘルプ内の
リンクにCreatePipeのサンプルがありました。これだと出来そうです。
ありがとうございました。


425 名前:デフォルトの名無しさん :2005/11/23(水) 15:27:20
>>421
SetCapture & ReleaseCapture ?

426 名前:デフォルトの名無しさん :2005/11/23(水) 15:31:50
>>425
ありがとう

427 名前:デフォルトの名無しさん :2005/11/23(水) 15:37:23
お久しぶりです(^o^)
さっそくですがツールバーやメニューバーに視覚スタイルを適用する方法を教えてください(^o^)
他の掲示板にいったけど完全にスルーされたので戻ってきました^^
http://up.mugitya.com/img/Lv.1_up12444.jpg
メニューバー・ツールバーを作ってみたら、上の奴のようになってしまうのです。
下や真ん中の奴のように視覚スタイルを適用したいのですがどうすればよいのでしょうか?
DrawThemeBackgroundでできると思ったのですが、それらしい定数が見つかりません(分かりません)
何卒お願いいたします(^^)

428 名前:デフォルトの名無しさん :2005/11/23(水) 15:46:47
>>424
別に呼び出し元がconsoleアプリじゃなくてもpopen()できると思うのだが。

429 名前:デフォルトの名無しさん :2005/11/23(水) 16:30:19
テキストファイルの特定の文字列のある1行を書き換えたいんだけど
何か便利なAPIってありますか?

今の所
ファイルを1行ずつ読み込みながら
条件によってそのままか書き換えして、別ファイルに書き出すってベタな方法考えてる。

430 名前:デフォルトの名無しさん :2005/11/23(水) 16:33:38
長さが変わる可能性がある以上は是非もないと思うが。

431 名前:デフォルトの名無しさん :2005/11/23(水) 16:45:37
  ,j;;;;;j,. ---一、 `  ―--‐、_ l;;;;;;
 {;;;;;;ゝ T辷iフ i    f'辷jァ  !i;;;;;   APIならやってくれる……
  ヾ;;;ハ    ノ       .::!lリ;;r゙  そんなふうに考えていた時期が
   `Z;i   〈.,_..,.      ノ;;;;;;;;>  俺にもありました
   ,;ぇハ、 、_,.ー-、_',.    ,f゙: Y;;f
   ~''戈ヽ   `二´    r'´:::. `!

ありがとうございました

432 名前:デフォルトの名無しさん :2005/11/23(水) 19:12:26
>>427
http://homepage2.nifty.com/winfaq/wxp/hints.html#1347

433 名前:デフォルトの名無しさん :2005/11/23(水) 19:43:41
>>432
それでは無理

434 名前:デフォルトの名無しさん :2005/11/23(水) 20:05:16
>>427
二度と来るな

435 名前:デフォルトの名無しさん :2005/11/23(水) 20:46:12
>>434
そんな事いわないで教えてくださいよ
教えてくれれば二度と着ませんよ

436 名前:デフォルトの名無しさん :2005/11/23(水) 20:48:13
今度からは、もっと上手く釣ろうな?

437 名前:デフォルトの名無しさん :2005/11/23(水) 20:49:31
>>435
「やり方」が知りたいんだよね?そこまでに簡単に出来る事じゃない気がする。
ここで聞くよりも、自分が使ってる開発環境のスレ行った方が早いよ。


438 名前:デフォルトの名無しさん :2005/11/23(水) 20:51:05
>>435
「独自に GUI 部品を作成している場合」とやらに該当するのか?

439 名前:デフォルトの名無しさん :2005/11/23(水) 20:59:33
俺には貼ってあるアイコンの絵が違うようにしかみえないんだけど?
視覚スタイルとはなんぞや?

440 名前:デフォルトの名無しさん :2005/11/23(水) 21:04:44
malloc(436);
free(439);

441 名前:デフォルトの名無しさん :2005/11/23(水) 21:07:37
>>435
MFCのコードを読めばどっかにあるよ

442 名前:デフォルトの名無しさん :2005/11/23(水) 21:40:41
>>436
うわっ
気持ち悪い
この人
>>437
俺の環境=bcc32+sdk
>>438
普通にツールバーを作成しただけで、独自に作ったわけじゃないよ
>>439
Visual Styleともいう
よく見てみてください。
色が違います。しかも真ん中や下の奴はグラフィカルです。
>>441
MFCとか知りません

443 名前:デフォルトの名無しさん :2005/11/23(水) 21:44:21
答え知る気ないだろ

444 名前:デフォルトの名無しさん :2005/11/23(水) 21:45:33
釣る気は満々のようだねぇ

445 名前:デフォルトの名無しさん :2005/11/23(水) 21:49:05
今日は大漁だなwww

446 名前:デフォルトの名無しさん :2005/11/23(水) 21:51:53
しかしま、ドッキングツールバーを作りたいのかと思いきや
独自のアイコンを作りたいだけみたいだな。

447 名前:デフォルトの名無しさん :2005/11/23(水) 21:58:19
それならこれはどうだ。
http://www.microsoft.com/japan/msdn/windows/windowsxp/winxpicons.asp

448 名前:デフォルトの名無しさん :2005/11/23(水) 22:03:40
>>446
こいつ頭大丈夫か
>>447
アイコンじゃないんだよ
http://up.mugitya.com/img/Lv.1_up12444.jpg
ちゃんと↑これみろよ

449 名前:デフォルトの名無しさん :2005/11/23(水) 22:04:55
あ、自己解決しました

450 名前:デフォルトの名無しさん :2005/11/23(水) 22:05:30
アイコンだろ

451 名前:デフォルトの名無しさん :2005/11/23(水) 22:06:38
>>450
もう解決したんでいいですよ
ちなみにアイコンじゃありません

452 名前:デフォルトの名無しさん :2005/11/23(水) 22:09:32
>>442
ツールバーの変なの使ってるってぐらいしかわからないんだけど?
猫でもわかる〜のところにのってなかったっけ?
俺もOSはXP使ってるけどXPスタイルにしてないせいか、
IEのツールバーがグラフィカルかどうかはさっぱりわからん。
つーか、グラフィカルってアイコンのこといってるわけじゃないんだよな?
ツールバーが白っぽいってことをいってるんだよな?

#ただ、へなへなアイコンに移動されると使いにくいだけだぞ。
#ドッキングツールバーと同じでやる意味あるのか?

453 名前:デフォルトの名無しさん :2005/11/23(水) 22:11:07
なんにしても普通はmanifestファイルを作るだけでできると思うのだけど。
432を試してどう駄目だったのか?

454 名前:デフォルトの名無しさん :2005/11/23(水) 22:14:03
>>453
普通にmanifestファイル作って置いとくだけじゃ、ボタンとかにしか反映されんよ

455 名前:デフォルトの名無しさん :2005/11/23(水) 22:15:18
なんだよ。
ちゃんと Luna スタイルって名前でのってんじゃん。

456 名前:デフォルトの名無しさん :2005/11/23(水) 22:16:09
>>454
http://www.microsoft.com/japan/msdn/windows/windowsxp/xptheming.asp
これじゃん?

457 名前:デフォルトの名無しさん :2005/11/23(水) 22:25:07
解決したっぽいな・・・w

458 名前:デフォルトの名無しさん :2005/11/23(水) 22:28:06
俺からすればこんなん死んでも入れたくないけどな。
こんなんだし↓w

タイトル表示やリンク コントロールなどの ComCtl32.dll バージョン 6 の機能を使用する場合、
これらのコントロールがユーザーのコンピュータで使用できない事態に対処する必要があります。
ComCtl32.dll バージョン 6 は、再配布することができません。

459 名前:デフォルトの名無しさん :2005/11/23(水) 22:40:38
そんなわけのわからんスタイルにする必要がないな

460 名前:デフォルトの名無しさん :2005/11/23(水) 23:12:33
>>448
頭おかしいのはお前だ

461 名前:デフォルトの名無しさん :2005/11/23(水) 23:24:13
consoleの簡易編集モードを無効にするにはどうしたら良いのでしょう?
あれが生きていると画面をクリックすると止まってしまうんですね。
console周りのAPIを調べたけどそれらしいのは見つからなかった。orz

462 名前:デフォルトの名無しさん :2005/11/23(水) 23:27:27
>>461
コマンドプロンプトのシステムメニューからプロパティを選んでそれらしいオプションをいじる

463 名前:デフォルトの名無しさん :2005/11/23(水) 23:27:56
>>452
>ツールバーが白っぽいってことをいってるんだよな?
そうそう
>>453
ツールバーは無理なんです
>>454
うんうん
>>455-456
違うよばーか
>>460
うわぁ
きもい

464 名前:デフォルトの名無しさん :2005/11/23(水) 23:28:33
おいお前らスルーしろよ!相手の思う壷だぞ・・。

465 名前:デフォルトの名無しさん :2005/11/23(水) 23:29:57
やっぱり頭おかしいな
ま、たくさん釣れたから満足しただろうが。

466 名前:デフォルトの名無しさん :2005/11/23(水) 23:43:08
>>463
どうみてもLunaスタイルじゃねーの?

467 名前:デフォルトの名無しさん :2005/11/23(水) 23:52:04
ちなみにクラシックウィンドウにかえてみるとツールバーの色に違いなんてないけど?
だからやっぱXPのLunaスタイルのなんかに反応して処理が変わってんじゃねーの?

468 名前:デフォルトの名無しさん :2005/11/23(水) 23:54:05
>>464

469 名前:デフォルトの名無しさん :2005/11/23(水) 23:55:14
>>462
それをプログラムからやりたいんですが・・・

470 名前:デフォルトの名無しさん :2005/11/24(木) 00:08:50
コモンダイアログ表示中、イベント処理をブロックしないようにしたいと
考えています。

・モードレスで起動
・別スレッドでダイアログを表示させる
といった方法があるのかな、と思いましたが
コモンダイアログをモードレスで表示させることは可能なのでしょうか。
(なるべくならスレッドは作成したくないので…)


471 名前:デフォルトの名無しさん :2005/11/24(木) 00:10:16
>>428
そ、そうなんですか。。
VC2003のランタイム ライブラリ リファレンスにはWindowsアプリから使うとハングするとか書かれていたので。

472 名前:デフォルトの名無しさん :2005/11/24(木) 00:43:42
>>466
Visual styleだよ
ばーか
>>467
ばーか

473 名前:デフォルトの名無しさん :2005/11/24(木) 00:48:07
>>470
不可視ウィンドウをメインウィンドウとして作成し、かつてのメインウィンドウの親にする。
その後、コモンダイアログの親を不可視ウィンドウにする。

かつてのメインウィンドウの作成方法を変更する必要があるけど、
不可視ウィンドウをメインウィンドウにする手法は一般的だよ。
タスクバーに表示される文字列と可視ウィンドウの文字列を違うものにしたい場合などにも、役に立つ。

474 名前:デフォルトの名無しさん :2005/11/24(木) 01:01:09
>>427
以前てめぇにゃ絶対もう教えないと言った者だ。
また暴れてるようだな。
めんどくせぇけどアク禁依頼出しとくから。有難く思え。

475 名前:デフォルトの名無しさん :2005/11/24(木) 01:04:13
これはひどい

476 名前:デフォルトの名無しさん :2005/11/24(木) 01:08:08
>>472
いや、だから、同じモンだろw

477 名前:デフォルトの名無しさん :2005/11/24(木) 01:11:27
なんか最近どのスレ行っても俺以外にもう一人変なの湧いてるんだけどなんだろう?
これが類は友を呼ぶって奴なの?

478 名前:デフォルトの名無しさん :2005/11/24(木) 01:13:39
朱に交われば赤くなるかもなwww
オリジナリティ0www

479 名前:デフォルトの名無しさん :2005/11/24(木) 07:03:28
>>473
親じゃなくてオーナー

480 名前:デフォルトの名無しさん :2005/11/24(木) 10:46:17
ちょいとお尋ねしますが、MSDNのMesageBOX()関数のヘルプは皆さんも英語ですか??

481 名前:デフォルトの名無しさん :2005/11/24(木) 10:50:39
MesageBOX()関数なんてものは無い

482 名前:デフォルトの名無しさん :2005/11/24(木) 10:51:30
MessageBox(hWnd, szBuf, "Debug", MB_OK);

これです。スペルミスでした

483 名前:デフォルトの名無しさん :2005/11/24(木) 10:51:30
日英両方あるますが。

484 名前:デフォルトの名無しさん :2005/11/24(木) 10:53:34
両方あるますね

485 名前:デフォルトの名無しさん :2005/11/24(木) 10:58:08
見つかったんですが、.net framework SDK の方にありました。

win32APIのドキュメントはMSDNではなく、こっちなんですかね?

486 名前:デフォルトの名無しさん :2005/11/24(木) 10:58:55
win32APIのドキュソメソトは

487 名前:デフォルトの名無しさん :2005/11/24(木) 11:04:13
検索後ちゃんと、MSDNから見れるようになりました。

488 名前:デフォルトの名無しさん :2005/11/24(木) 11:16:26
なんか色々と誤解がありそうな気がする

489 名前:デフォルトの名無しさん :2005/11/24(木) 11:37:52
横やり入れると、Visual Style != Lunaスタイルだよ。
Lunaは、Visual Styleで使える1デザイン。
タイトルバーが青くて、タブにオレンジの帯がついて…というのをLunaと言う。
(シルバーバージョンとかもあるが)
当然Visual Styleでは他のデザインも使用できる。

490 名前:デフォルトの名無しさん :2005/11/24(木) 12:00:45
それを言うなら、VS ≒ Luna

491 名前:デフォルトの名無しさん :2005/11/24(木) 12:37:11
DirectShowを使ってプログラムするためDirextX 9 SDK をインストールしたのですが、
C:\Program Files\Microsoft DirectX 9.0 SDK (October 2005)\Includeの中に
dshow.hがありませんでした。Graph Editなども付属していませんでした。他にインストールしなければいけないのでしょうか?
ご存知の方がいらっしゃいましたらご教授下さい。

492 名前:デフォルトの名無しさん :2005/11/24(木) 12:37:59
Lina⊆VS

493 名前:デフォルトの名無しさん :2005/11/24(木) 12:45:36
>>491
Extrasに入ってる

494 名前:デフォルトの名無しさん :2005/11/24(木) 12:51:13
う〜ん。Extrasってフォルダの名前ですよね?探したのですがExtrasが
見つかりませんでした。

495 名前:デフォルトの名無しさん :2005/11/24(木) 13:02:25
Negative

496 名前:495 :2005/11/24(木) 13:03:01
うんこ

497 名前:495 :2005/11/24(木) 13:06:36
Direct Showはいつからか忘れたけど、Platform SDKに統合されたんじゃなかったっけっか?

498 名前:491 :2005/11/24(木) 13:23:35
>>497
Platform SDKにありました。有難うございます。
bcc -I
で無事動きました。有難うございます。。

499 名前:495 :2005/11/24(木) 14:00:30
  _, ._
( ゚ Д゚)
 ( つ O   ガシャ
 と___)_)  __
      (__()、;.o:。

        ゚*・:.。

500 名前:デフォルトの名無しさん :2005/11/24(木) 19:43:46
この板にもIDが欲しいな・・・


■過去ログ置き場に戻る■ 1- 前250 次250 最新50
DAT2HTML 0.33f Converted.