- 1 名前:デフォルトの名無しさん mailto:sage [2007/03/21(水) 03:44:55 ]
- スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。
やさしいお兄さんやお姉さんたちが答えてくれるかも。 過去スレ、関連リンクは>>2-5くらい。 ■注意 ・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。 ・日本語版MSDN Online Libraryは不完全です。英語版(msdn.microsoft.com/library/)の利用推奨。 ・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。 ・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで
- 577 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 02:18:42 ]
- Win(というかFATとNTFS)にはファイル属性に隠しファイルビットがあるだろ
つーか質問はWindows上で隠しファイルを含めて検索する方法じゃないのか? もう回答出てるけど
- 578 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 02:26:51 ]
- VC2005でダイアログボックスを作りたいのですが、どうやって作ったらいいのかわかりません。
VC2003だったらリソースの追加でできたのですがorz ググッてみましたがわかりませんでしたので、教えてもらえると助かります。
- 579 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 02:56:36 ]
- >>578
Express Editionにはリソースエディタは付属しないので作れない。 別途にリソースエディタを用意するべし。
- 580 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 03:04:14 ]
- リソースエディタとはなんですか?
リソースの作り方すらわからない(´・ω・`)
- 581 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 03:07:18 ]
- これだからVCはオススメできない。
とりあえず、今までに作ったプロジェクトの拡張子が.rcの奴をテキストエディタで開け
- 582 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 03:12:15 ]
- 開きましたー!!
- 583 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 03:13:34 ]
- >>580
2003で作ったときには開発環境でダイアログボックスを作れたでしょ? あれは内部的にリソースエディタと呼ばれるツールを呼び出してただけなの んでExpress Editionではその機能が削除されてるので作ることができない。 作ることができないといってもVCの開発環境で作ることができないだけで リソースをプログラムから読み込むといったことは可能なので フリーソフトのリソースエディタでダイアログを作るしかない、ってこと
- 584 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 03:20:29 ]
- >>583
親切にありがとう。
- 585 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 07:52:10 ]
- リソースって言っても二種類の意味で使われてない?
バイナリで書かれたリソースとテキストで書かれたのリソース どう呼び分ければいいんだろう??
- 586 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 07:52:42 ]
- 「書かれたリソース」の間違い
- 587 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 08:17:00 ]
- っ「リソーススクリプト」
- 588 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 08:19:44 ]
- リソース
├フォーマットがテキストの └フォーマットがバイナリの
- 589 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 09:02:01 ]
- コンパイル済みリソースがバイナリリソース。
- 590 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 17:13:30 ]
- テキストのリソースファイル(.rcファイル)+バイナリ(画像など)を
リソースコンパイラでコンパイルして .res ファイルをつくり リンカで EXEにバインドする。直接.resを編集するツールもある。
- 591 名前:デフォルトの名無しさん mailto:久々だぜwwwwwww [2007/04/07(土) 21:12:44 ]
- 僕ハッカー
- 592 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 21:15:17 ]
- 僕バッカー
- 593 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 21:17:57 ]
- バカバッカー
- 594 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 21:18:00 ]
- バカばっかー
- 595 名前:デフォルトの名無しさん mailto:sage [2007/04/07(土) 21:57:10 ]
- けこん
- 596 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 02:15:51 ]
- winAPIでテキストエディタに文字列を書き込んで保存したいのですが、どのようにしたらよいですか?
VC使って組んでいます。
- 597 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 02:18:20 ]
- 意味が分からんな
外部のテキストエディタに文字を送り込むのか? 自前でテキストエディタを作るのか? …単にテキストエディタじゃなくてテキストファイルってオチか?
- 598 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 04:21:34 ]
- 普通にfopen、fwrite?
- 599 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 07:55:34 ]
- 他のアプリケーションのウインドウの座標と大きさを取得するにはどうすれば良いですか?
また、座標と大きさを指定するにはどうすれば良いですか?
- 600 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 08:00:51 ]
- GetWindowRect
MoveWindow プロセス跨いで使えたかはシラネ 春 の 香 り 乙 !
- 601 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 08:51:32 ]
- >>600
ありがとうございました
- 602 名前:596 mailto:sage [2007/04/08(日) 10:28:48 ]
- >>597
テキストファイルの間違いでしたw
- 603 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 13:44:29 ]
- マウスフックについての質問です。MOUSEHOOKSTRUCT構造体の内容を
フックプロシージャから他のウィンドウプロシージャへ渡したいのですが、 上手くいきません。フックプロシージャのコードは次の通りです。 LRESULT CALLBACK HookProc(int nCode,WPARAM wp,LPARAM lp) { COPYDATASTRUCT cds; if (nCode < 0) CallNextHookEx(hHook,nCode,wp,lp); cds.dwData = wp; cds.cbData = sizeof(MOUSEHOOKSTRUCT); cds.lpData = (PMOUSEHOOKSTRUCT)lp; SendMessage(hWnd,WM_COPYDATA,NULL,(LPARAM)&cds); return CallNextHookEx(hHook,nCode,wp,lp); } 間違いがあれば指摘して下さい。又、参考になるソースがあれば教えて下さい。 お願いします。<(_ _)>
- 604 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 13:54:02 ]
- 相手が別プロセスなら自メモリ領域のポインタを渡しても無意味。
相手のメモリ内に領域を確保してそのポインタを渡す。
- 605 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 14:12:44 ]
- Windows XPでのCPU使用率の取得方法を教えてください
- 606 名前:603 mailto:sage [2007/04/08(日) 14:19:45 ]
- >>604
そのためにWM_COPYDATAメッセージを使用しています。ファイルマッピングオブジェクトの 内容を参照するので、メモリを共有する必要は無いと思ったのですが。 yokohama.cool.ne.jp/chokuto/advanced/copydata.html
- 607 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 14:22:09 ]
- >>603
その中だとhWndが一番怪しい。 SendMessageするときにhWndにちゃんとした値が入ってる?
- 608 名前:603 mailto:sage [2007/04/08(日) 14:36:11 ]
- 問題ありません。
「猫でもわかる」の162章のように、フックプロシージャ内での処理には成功しました。
- 609 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 14:49:03 ]
- そもそもうまくいかないって何が巧くいってないんだ?
WM_COPYDATA が hWnd の WindowProc に来ないのか、来た WM_COPYDATA からデータが取れないのか
- 610 名前:603 mailto:sage [2007/04/08(日) 15:00:54 ]
- >>609
WM_COPYDATAメッセージは届くのですが、COPYDATASTRUCT構造体の内容の参照が上手くいきません。 フックは次のようにセットしています。 #define EXPORT __declspec (dllexport) #pragma data_seg(".shared") static HHOOK hHook = NULL; static HWND hWnd = NULL; #pragma data_seg() EXPORT HHOOK SetHook(const HWND hCaller) { hWnd = hCaller; hHook = SetWindowsHookEx(WH_MOUSE,(HOOKPROC)HookProc,hInst,0); return hHook; } ウィンドウプロシージャでは次のように処理しています。 case WM_COPYDATA: if (((PCOPYDATASTRUCT)lp)->dwData == WM_NCLBUTTONDOWN) { pmhs = (PMOUSEHOOKSTRUCT)lp; if (pmhs->wHitTestCode == HTCAPTION) { SetWindowText(pmhs->hwnd,"猫でもわかるフック"); } } break;
- 611 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 15:22:04 ]
- >>610
> pmhs = (PMOUSEHOOKSTRUCT)lp; pmhs = (PMOUSEHOOKSTRUCT)((PCOPYDATASTRUCT)lp)->lpData; だろ常識的に考えて
- 612 名前:603 mailto:sage [2007/04/08(日) 15:38:41 ]
- >>611
すみません。ウィンドウプロシージャの処理を訂正します。(^_^;) PCOPYDATASTRUCT pcds; PMOUSEHOOKSTRUCT pmhs; case WM_COPYDATA: pcds = (PCOPYDATASTRUCT)lp; pmhs = (PMOUSEHOOKSTRUCT)(pcds->lpData); if (pcds->dwData == WM_NCLBUTTONDOWN) { if (pmhs->wHitTestCode == HTCAPTION) { SetWindowText(pmhs->hwnd,"猫でもわかるフック"); } } break; ローカルフックには成功したのですが、グローバルフックに失敗します。
- 613 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 16:03:20 ]
- SetWindowText が気になって仕方ないが、
WindowProc 内での pcds->dwData とか pmhs->wHitTestCode とかはどうなんだ? 正しい値を示してるのか?
- 614 名前:603 mailto:sage [2007/04/08(日) 16:46:12 ]
- 他のアプリケーションにフックDLLがロードされていることは確認できたのですが、
COPYDATASTRUCT構造体の内容が空のようです。
- 615 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 18:41:35 ]
- msdn.microsoft.com/library/ja/jpwinui/html/_win32_setwindowtext.asp
> ほかのプロセス内のコントロールのテキストを設定するには、SetWindowText 関数を > 呼び出すのではなく、直接 WM_SETTEXT メッセージを送ります。 何でフックがうまくいってないと思い込めるんだかさっぱり分からん。 明らかに間違ってたソースも「訂正します」の一言で済まされるし。
- 616 名前:603 mailto:sage [2007/04/08(日) 18:54:38 ]
- あたながたが思いのほか低スキルだったのでがっかりしています。
2ちゃんもたいしたことないですね。
- 617 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 18:56:30 ]
- ↓真603による「616は私ではありません」というレス
- 618 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 18:56:33 ]
- 615は無視かよ
- 619 名前:603 mailto:sage [2007/04/08(日) 19:50:46 ]
- >>615
SendMessage(pmhs->hwnd,WM_SETTEXT,0,(LPARAM)"猫でもわかるフック"); としたのですが、ウィンドウタイトルは変更されません。 間違ったソースを掲載したことについては深くお詫びします。大変申し訳ありませんでした。
- 620 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 20:43:43 ]
- >>619
dll.defに SECTIONS .shared SHARED READ WRITE が有るか確認するとか char sz[100]; wsprintf(sz, "pmhs->hwnd:%p ", pmhs->hwnd); SetWindowText(hWndExe, sz); として様子を見るとか
- 621 名前:デフォルトの名無しさん mailto:sage [2007/04/08(日) 23:19:23 ]
- うまくいかないときには何がおきてるのかを見極めて原因究明。
期待通りにいくかいかないかだけを判断してたらいつまでたってもなおらん
- 622 名前:デフォルトの名無しさん mailto:sage [2007/04/09(月) 00:44:15 ]
- デバッガ使ってないのかね?
1ステップずつ確認すれば、問題点はすぐに分かると思うが。
- 623 名前:デフォルトの名無しさん mailto:sage [2007/04/09(月) 00:47:43 ]
- フックプロシージャのステップ実行なんて出来るの?
- 624 名前:デフォルトの名無しさん mailto:sage [2007/04/09(月) 01:14:11 ]
- フック先のプロセスにアタッチしろ。
- 625 名前:デフォルトの名無しさん mailto:sage [2007/04/09(月) 10:09:06 ]
- 別にデバッガ使わなくてもログをファイルに書き出せばいいだけだし
- 626 名前:603 mailto:sage [2007/04/09(月) 10:33:11 ]
- >>620-624 レスありがとうございます。
>>620 モジュール定義ファイルは作成済みです。内容は次の通りです。 LIBRARY hook SECTIONS .shared READ WRITE SHARED EXPORTS HookProc @1 ResetHook @2 SetHook @3 pmhs->hwndの値をウィンドウプロシージャ内で出力したところ、 ローカルフックでは00060AA2でした。グローバルフックでは何も出力されませんでした。 グローバルフックではWM_COPYDATAメッセージが届いていないようです。(^_^;) >>622 デバッガは使用していません。OutputDebugStringを使って変数の値をトレースしています。 >>623 プロセス間を跨いだデバッグ作業はどのように行うのでしょうか? >>624 明示的にアタッチする方法があるのですか? >>621 今までの状況を整理してみました。 ・ローカルフックには成功し、グローバルフックには失敗する。 ・ローカルフックの場合、フックDLLがロードされ、WM_COPYDATAメッセージが届く。 ・グローバルフックの場合、フックDLLはロードされるが、WM_COPYDATAメッセージは届かない。
- 627 名前:デフォルトの名無しさん [2007/04/09(月) 11:00:13 ]
- WindowsXPの[ユーザのログオフ]−[ユーザー切替]−[指定したユーザーのログオン]
という作業をプログラムから操作したいんですけど可能でしょうか? 可能なら使用するAPIを教えて頂けないでしょうか?
- 628 名前:デフォルトの名無しさん mailto:sage [2007/04/09(月) 11:05:12 ]
- 不可
- 629 名前:627 mailto:sage [2007/04/09(月) 11:11:17 ]
- やっぱりですね
即レスありがとうございました。
- 630 名前:デフォルトの名無しさん mailto:sage [2007/04/09(月) 11:31:48 ]
- >>627
Ginaで何とかなるでしょ。Ginaでぐぐってみたら?
- 631 名前:デフォルトの名無しさん mailto:sage [2007/04/09(月) 11:40:23 ]
- >>627
レジストリに自動ログオンの設定を書き込んで再起動
- 632 名前:デフォルトの名無しさん mailto:sage [2007/04/09(月) 11:58:25 ]
- >>626
プロセスにアタッチするのははDLLをデバッグする場合の基本操作なんだが、 そんな当たり前のことを自分で調べられないのか?
- 633 名前:デフォルトの名無しさん mailto:sage [2007/04/09(月) 14:27:57 ]
- グローバルフック成功してないんじゃね?
- 634 名前:デフォルトの名無しさん [2007/04/09(月) 15:14:14 ]
- Windowsで標準入力や出力がリダイレクトされてるかどうか知る方法を教えてください。
- 635 名前:デフォルトの名無しさん [2007/04/09(月) 15:56:31 ]
- 現在VS2005を使っているのですが、作成してるネイティブアプリのVisualStyleを切るにはどの様な方法がよろしいでしょうか?
よろしくお願い致します。
- 636 名前:デフォルトの名無しさん mailto:sage [2007/04/09(月) 16:28:21 ]
- まにふぇすとぶっこわす
- 637 名前:デフォルトの名無しさん mailto:sage [2007/04/09(月) 17:01:54 ]
- むしろバージョン5のcomctl32.dllを使うようにマニフェスト書け
- 638 名前:デフォルトの名無しさん mailto:sage [2007/04/09(月) 17:27:19 ]
- >>626
コードを一から書いたら、グローバルフックでもタイトルバーが変わった。 期待した動作にならなかったら、一から作り直すのも手かと。 つか、サンプルコードのコピペはおすすめできない。
- 639 名前:デフォルトの名無しさん mailto:sage [2007/04/09(月) 18:06:07 ]
- >>636-637
レスありがとうございます。 というか何か勘違いしてました。。 VS2005では勝手に有効になると思ってましたがならないんですね・・・ この前作ったときはなってたような・・・気のせいか・・・orz
- 640 名前:デフォルトの名無しさん [2007/04/10(火) 00:34:29 ]
- ツリービューのノードのアイコンを一つだけ変える場合って
どうすればええすか? Expandしたら広がったフォルダを表示とか。
- 641 名前:デフォルトの名無しさん mailto:sage [2007/04/10(火) 08:34:36 ]
- TVM_SETIMAGELIST で ImageList セット
TVM_SETITEM での fMask に TVIF_IMAGE|TVIF_SELECTEDIMAGE なり TVIF_STATE なり...
- 642 名前:デフォルトの名無しさん [2007/04/10(火) 12:49:04 ]
- USBリムーバブルハードディスクのデバイス識別子?(USB\Vid_04xx&Pid_10xx)とかから
割り当てられている論理ディスクのボリューム名を取得したいのですが どの辺を参照したらいいでしょうか。 「管理ツール」→「ディスクの管理」で下側ビューの左側「ディスクn」を右クリックしてプロパティを表示させて、 「ボリューム」プロパティーシートの下側リストビューに表示されているものが欲しいです。
- 643 名前:デフォルトの名無しさん [2007/04/10(火) 16:50:17 ]
- SetMenuContextHelpIdに渡す「ヘルプコンテキスト識別子」ってなんなんですか?
「ヘルプコンテキスト」ってリソースで用意するんでしょうか? それってどのような物で,どうやって作るんでしょうか?
- 644 名前:デフォルトの名無しさん [2007/04/10(火) 18:08:33 ]
- Win32API を使って、DLL 中のダイアログリソースの PUSHBUTTON の文字列を取得することはできますでしょうか?
FindResource -> LoadResource -> LockResource まではできましたが、文字列の取得が分からない。
- 645 名前:デフォルトの名無しさん mailto:sage [2007/04/10(火) 18:31:28 ]
- 自分で解析
- 646 名前:デフォルトの名無しさん mailto:sage [2007/04/10(火) 21:03:23 ]
- >>643のレスで思ったのだが、そーいや、2005からののヘルプはどうなんお?
昔は、HTML Help Workshopとかゴリゴリ作ったが? msdn.microsoft.com/library/en-us/htmlhelp/html/hwMicrosoftHTMLHelpDownloads.asp?frame=true ここでいいっけ? それとも、暗黙でツールが入ってるのかな?
- 647 名前:デフォルトの名無しさん mailto:sage [2007/04/10(火) 21:10:22 ]
- ゲームプログラムで質問ですwin32apiの関数を使うよりdirectxを使った方が画像の描画は早いですか
- 648 名前:デフォルトの名無しさん mailto:sage [2007/04/10(火) 21:18:57 ]
- >>647
ちなみに、何系ゲーム?
- 649 名前:デフォルトの名無しさん mailto:sage [2007/04/10(火) 21:30:43 ]
- シューティング系ゲームです。既にwin32apiで作ったのですが画面のスクロール速度を一定以上にあげるとフレームスキップが起こるです。
- 650 名前:648 mailto:sage [2007/04/10(火) 21:38:04 ]
- >>649
画面更新に速度を要求するなら、 DirectXなんじゃね? DirectX〜系の別スレがよろしいかと・・・
- 651 名前:デフォルトの名無しさん mailto:sage [2007/04/10(火) 22:52:12 ]
- >>644
MSDN に PEFILE.cpp というサンプルがあって、.exe/.dll の先頭から .rsrc section を割りだし、section 内のテーブルを追い掛けると、 個々の rsrc leaf に行き付ける例があったと思う。 dialog template の構造は MSDN に説明があった。 ただ、これらを取り出したり、差し替えたりするのに、ファイルとして 開く際、使用中だと開けないことがある。開く際の属性を指定すると 可能なのかも知れないが。
- 652 名前:デフォルトの名無しさん mailto:sage [2007/04/10(火) 23:30:31 ]
- >651
いや、メモリに一度読み込めば問題なし。 昔、ダイナミックにダイアログリソース作ったときはそうやったよ。
- 653 名前:デフォルトの名無しさん mailto:sage [2007/04/10(火) 23:36:48 ]
- GetCommandLine関数を利用する場合、
みんあはや空白の分割とかどしてる? 思いつき関数作ったけど、意見求む。
- 654 名前:653 mailto:sage [2007/04/10(火) 23:38:46 ]
- 前半
DWORD OrderCommandLine(LPTSTR lpBuffer, LPDWORD lpcchBuffer) { DWORD i, dwLen, dwPos, dwCnt, dwDiv; TCHAR tcChr; TCHAR szCmd[0xFFFF]; TCHAR szDmy[0xFFFF]; int fDQ; LPTSTR lpszCur; /* 初期化 */ ::lstrcpy(szCmd, ::GetCommandLine()); dwLen = (DWORD)::lstrlen(szCmd); szCmd[dwLen++] = _T('\0'); /* 捜査 */ for (i = 0, dwPos = dwDiv = 0, fDQ = 0, lpszCur = szCmd; i < dwLen; i++, lpszCur++){ tcChr = *lpszCur; if (tcChr == _T('\"')){ fDQ = !fDQ; }else if ((!fDQ) && (tcChr == _T(' '))){ tcChr = _T('\0'); } szDmy[dwPos++] = tcChr; if (tcChr == _T('\0')){ dwDiv++; } } szDmy[dwPos++] = _T('\0');
- 655 名前:653 mailto:sage [2007/04/10(火) 23:39:39 ]
- 後半
/* 整理 */ dwCnt = 0; if (dwDiv > 0){ for (i = 0, dwPos = 0, lpszCur = szDmy; i < dwDiv; i++, lpszCur++){ dwLen = (DWORD)::lstrlen(lpszCur); if (dwLen > 0){ ::lstrcpy(&szCmd[dwPos++], lpszCur); lpszCur += (dwLen); dwPos += (dwLen -1); szCmd[dwPos++] = _T('\0'); dwCnt++; } } szCmd[dwPos++] = _T('\0'); } /* 結果 */ if (lpcchBuffer){ if (*lpcchBuffer >= dwPos){ *lpcchBuffer = dwPos; if (lpBuffer){ ::CopyMemory(lpBuffer, szCmd, dwPos * sizeof(TCHAR)); } } } return dwCnt; }
- 656 名前:653 mailto:sage [2007/04/10(火) 23:42:59 ]
- DWORD OrderCommandLine(LPTSTR lpBuffer, LPDWORD lpcchBuffer)の
LPTSTR lpBufferはバッファ LPDWORD lpcchBufferはlpBufferのサイズ(文字単位)の入った変数のポインタ んでOrderCommandLineは分割した数を返す。 どっかおかしいとこない?
- 657 名前:デフォルトの名無しさん mailto:sage [2007/04/10(火) 23:48:04 ]
- 自作せずにCommandLineToArgvWを使ったほうが楽なのでは?
- 658 名前:653 mailto:sage [2007/04/11(水) 00:01:57 ]
- >>657
CommandLineToArgvW関数はしりませんですた... orz 調査してみますね。
- 659 名前:デフォルトの名無しさん mailto:sage [2007/04/11(水) 00:07:01 ]
- main関数のargc, argvは駄目なの?
main関数から始まるけどコンソールプログラムでないというのは変わっているかもしれないけど。
- 660 名前:デフォルトの名無しさん mailto:sage [2007/04/11(水) 00:13:42 ]
- boostにコマンドライン解析があった希ガス
- 661 名前:デフォルトの名無しさん mailto:sage [2007/04/11(水) 00:25:19 ]
- >>659
WinMain関数のLPSTR lpszCmdLine問題があったので、 片手間で作成してみました。 そりゃ、_tmain関数みたいなのが、一番いいですが。 >>660 ttp://www.boost.org/ですよね? ここも見てみます。
- 662 名前:デフォルトの名無しさん mailto:sage [2007/04/11(水) 00:25:41 ]
- __argv,__argcとかいうのもあったような
- 663 名前:デフォルトの名無しさん mailto:sage [2007/04/11(水) 00:43:11 ]
- Googleからも出てる。
ttp://code.google.com/p/google-gflags/
- 664 名前:デフォルトの名無しさん mailto:sage [2007/04/11(水) 03:12:11 ]
- CommandLineToArgvW以外はスレ違いじゃね?
>>661 _tWinMain VC++以外や、VC++でもバージョンによっては存在しないみたいだが その場合はGetCommandLineW つーかCommandLineToArgvWは_tmainが存在しなかったバージョンのVC++で GetCommandLineWと組み合わせて使うために提供されていた(だからW版しかない)ので
- 665 名前:653 mailto:sage [2007/04/11(水) 08:17:09 ]
- >>664
情報ありがとうございます。 へー_tWinMain関数ってあるんですかー。 特に変な意識して、関数作る必要もなかったのかな? 一回、整理して考え直してみます。 皆様ありがとうございました
- 666 名前:デフォルトの名無しさん mailto:sage [2007/04/11(水) 08:55:12 ]
- >>644
不可視でダイアログ開いて、GetDlgItemText()したら?
- 667 名前:デフォルトの名無しさん [2007/04/11(水) 11:33:08 ]
- CSV(カンマテキスト)を分割するAPIを教えてください
- 668 名前:デフォルトの名無しさん mailto:sage [2007/04/11(水) 11:59:02 ]
- ない
- 669 名前:デフォルトの名無しさん mailto:sage [2007/04/11(水) 12:55:54 ]
- ウィンドウズの起動時間(timeGetTimeやGetTickCountで返される数値)を変更する方法ありますか?
DirectShow辺りが怪しいので デバッグで24日間放置した状態にしたいのです
- 670 名前:デフォルトの名無しさん mailto:sage [2007/04/11(水) 13:05:35 ]
- >>669
hookして、好きな値返すとか?
- 671 名前:デフォルトの名無しさん mailto:sage [2007/04/11(水) 13:13:31 ]
- >>668
ADO等で出来なくもない気もするが
- 672 名前:デフォルトの名無しさん [2007/04/11(水) 13:45:05 ]
- 猫でもわかる・・の第10章タイマーで、コーディングして実行したところ、
一応動くのですが、文字列が再描画されず、字が重なったようになって しまいます。この場合、うまく表示するにはどうしたらよいでしょうか? よろしくお願いします。
- 673 名前:デフォルトの名無しさん [2007/04/11(水) 13:56:55 ]
- 大学院レベルの猫にしかわからないってことだね
- 674 名前:672 [2007/04/11(水) 13:57:59 ]
- ↑で質問したものです。
InvalidateRect(hWnd, NULL, FALSE); こいつを InvalidateRect(hWnd, NULL, TRUE);にしたらなおった。 でも載ってるのは最初のほうですよね。 なんかほかに方法があるのかなぁ
- 675 名前:デフォルトの名無しさん mailto:sage [2007/04/11(水) 14:01:28 ]
- つ SetBkMode
- 676 名前:672 [2007/04/11(水) 14:04:28 ]
- >>675
実装済みです
- 677 名前:デフォルトの名無しさん mailto:sage [2007/04/11(水) 14:14:29 ]
- 前と同じ幅の文字で上書きしてないとか
|

|