[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 05/10 00:36 / Filesize : 205 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Win32API質問箱 Build77



1 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 01:54:24 ]
スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。
やさしいお兄さんやお姉さんたちが答えてくれるかも。
「知らないならレスしないで下さい。ウザイだけです。 」なんて言わないでねっ!

過去スレ、関連リンクは>>2-10くらい。

■注意
・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。
・日本語版MSDN Online Libraryは不完全です。英語版(msdn2.microsoft.com/library/)の利用推奨。
・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。
・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで

- Win32API質問箱 wiki
wiki.livedoor.jp/program1/d/FrontPage

Win32API質問箱 Build76
pc11.2ch.net/test/read.cgi/tech/1233622578/

496 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 17:34:46 ]
俺も作ってみた(VB用)

Public Function MyInputBox(prompt, title, default)
  MyInputBox = InputBox(prompt, title, default)
End Function

'テスト
Debug.Print MyInputBox("input?","test","default")

497 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 17:36:34 ]
>>496
作るなよ・・・

498 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 17:37:52 ]
My(笑)

499 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 17:40:50 ]
>>496
目覚ましいたのか

500 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 17:40:51 ]
所詮は作れといわれてすぐに作り始めたと思い込むだけの馬鹿だったか・・・

501 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 17:41:17 ]
ほれ。

BOOL InputBox(LPTSTR buf, int siz)
{
 FILE*fp;
 AllocConsole();
 fp = fopen("CONIN$", "r");
 if(fp){_fgetts(buf, siz, fp);fclose(fp);}
 FreeConsole();
 return!!fp;
}

502 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 17:59:03 ]
で、汚いソースコード晒した>>462はどこ行った?

503 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:00:04 ]
>>477
SystemParametersInfoでSPI_GETNONCLIENTMETRICS
一緒に渡すNONCLIENTMETRICSの中のlfMessageFont

504 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:03:32 ]
>>503
ふむふむ。なるほど。d



505 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:04:04 ]
>>502
お前がコードを晒さないから呆れてどっか行ったんだろう

506 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:06:00 ]
>>505=>>462
なんだいるじゃんwww

507 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:08:53 ]
www

508 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:10:20 ]
>>502
お前がコードを晒すのを楽しみにして待ってるよ

509 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:12:46 ]
>>508
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8972.txt
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8973.txt

510 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:14:06 ]
>>509
死ねば

511 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:14:48 ]
>>509
これ以上のコードは書けないという意思表示と解釈した

512 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:19:08 ]
何故こんなに>>462がたたかれてるのかwwwwwww
お前ら愛しすぎだ

513 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:21:47 ]
>>511
他人にコード晒せと指図するならまずは自分の書いたコードをまともな物にしてから言えという事だ

514 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:22:55 ]
>>513
他人のコードを叩くならまずは自分の書いたコードを晒すべきだろw
馬鹿かお前は



515 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:23:28 ]
自分で書けないから他人に書かせようとしてんのかwwwwwww

516 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:24:46 ]
暇だなあおまいら

517 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:25:58 ]
別に作らなくてもいいのにわざわざ作る
    ↓
コードが糞で荒れる
    ↓
お前も作れと逆ギレ
    ↓
俺以上のコード書ける奴はいないと自己陶酔  ←今ここ

518 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:26:09 ]
飴と鞭は大事だ

519 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:29:01 ]
>>517
>>470

1時間前のことくらい覚えとけよ

520 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:29:21 ]
                          ┗0=============0┛
               \===========[_|_|_|_|_|_|_|_|_|_|_|_|_|_]===========/
            /三三三三三三三三三三三三三三三三三三三三\
                  0 │ |∞∞∞ |::|∞∞田田∞∞|::|∞∞∞ | ::|  0
            [二] | ::|       |::|┏━━━━┓|::|       | ::l [二]
◎○@※◎○@※. |□|.│ |┌┬┐ |::|┃ Vista   ┃|::| ┌┬┐| ::|. |□| ◎○@※◎○@※
ii|iiii|iiii|iiii|iiii|iiii|iiii|iiii| `)三(´| ::|├┼┤ |::|┃ ∧_∧ ┃|::| ├┼┤| ::|`)三(´il|iiii|iiii|iiii|iiii|iiii|iiii|iiii|
@※◎○@※◎○ | ::| | ::|└┴┘ |::|┃(´Д` ) ┃|::| └┴┘| ::| | ::|  @※◎○@※◎○
ii|iiii|iiii|iiii|iiii|iiii|iiii|iiii|li┏━━━━━┓|::|┃(.    つ┃|::|┏━━━━━┓ li|iiii|iiii|iiii|iiii|iiii|iiii|iiii|l
◎○@iiii※◎○@ ┣┳┳┳┳┳┫|::|┗━━━━┛|::|┣┳┳┳┳┳┫ ◎○@iiii※◎○@
ii|iiii|iiii|iiii|iiii|iiii|iiii|iiii|l ○    ●        ∫∬∫∬        ●    ○ ii|iiii|iiii|iiii|iiii|iiii|iiii|iiii|li
               ○○  ●●      iiiii iii ii iiii       ●●  ○○
           [ ̄ ̄] [ ̄ ̄]   ( ̄ ̄ ̄ ̄ ̄)    [ ̄ ̄] [ ̄ ̄]
                |_○_|  .|_○_|     |_____|     |_○_|  .|_○_|
    ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧
    (NT3.1)(NT3.5)(NT3.51)(,,XP )  (2003)(2008)(Warp4)(,    )(,    ;)

         NTの徒花がめでたく散りますた。 すンげぇメシウマwww


521 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:31:06 ]
自慢気に汚いコード晒せば叩かれるぐらい想像できるだろ

「素晴らしい!とても綺麗なコードですね!有り難く使わせて貰います!!」
なんてレスが付くとでも本気で思ってたのか?

522 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:17:44 ]
そんなことのために上げたわけでもないのに
何を妄想を語ってるんだ?

523 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:20:09 ]
汚いコードしか晒せないから
叩かれるのがいやなので晒しません
という意思表示と見た

524 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:23:31 ]
>>522
API信者は妄想でのみしか語れない、そして、基地外である。覚えておくように
>>520 見事な基地外っプリ



525 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:23:49 ]
きれいなコードというやつを見せて欲しいな

526 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:28:12 ]
お前の入っているコタツから延びてるだろ



527 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:31:38 ]
>>525
ここのスレ住民は妄想でいつも綺麗なAPIのみコードを書いている
それは自分の美学を追及した綺麗なコードだ

528 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:39:57 ]
妄想かいw

529 名前:446 [2009/03/14(土) 19:41:43 ]
マジごめんなさいヽ(`Д´)ノ ウワァァン!!

530 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:43:53 ]
( ´∀`)σ)`Д´)ノ ウワァァン!!

531 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:44:23 ]
そもそも>>462のコードって別に汚くはないよな?
フォントとボタンのキャプションが決めうちな点で問題はあるが
それは別に汚いと表現することでもないし

532 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:48:37 ]
汚いというより間違ってる

533 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:52:46 ]
> そもそも>>462のコードって別に汚くはないよな?

自画自賛乙

534 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:03:53 ]
CancelにもBS_DEFPUSHBUTTONしてあるしな



535 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:04:30 ]
>>533
お前のコードが見てみたい

536 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:05:19 ]
>>533
自画自賛で何か問題でも?

537 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:06:25 ]
>>536
自画自賛の開き直り乙

538 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:07:02 ]
>>537
ありがとう

539 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:09:19 ]
>>462
なんかスキル浅い人が色々やってみましたって感じ
てかフォントやコントロールのサイズ決め打ちするぐらいなら>>467の方法でいいと思うが

540 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:09:48 ]
もう駄目かもしれんね

541 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:12:28 ]
メッセージとエディットボックスのサイズは決めうちしてないけど

542 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:14:25 ]
とりあえずみんなコードで語れ

543 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:15:43 ]
つーか横幅は固定でいいだろ。しかも字幅の計算がなんかアレだし。

544 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:16:00 ]
固定はまずいだろ・・・



545 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:16:58 ]
GetTextExtentPoint以外に何かいい方法あるのん?

546 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:17:33 ]
>>544
WSHやVBのInputBox使ったこと無いのか?

547 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:22:05 ]
MessageBoxが伸びるからInputBoxも伸ばしただけだが

548 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:23:26 ]
>>546
なんとも不便なんだな

549 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:27:34 ]
ダイアログなのにGWLP_USERDATAとか使っちゃってるし
しかもLONG_PTRじゃなくてLONGにキャストしちゃってるし
SM_C?SCREENで画面サイズ計算しちゃってるし

猫プログラミングぐらいのレベルだな

550 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:32:35 ]
画面サイズはメジャーを使ってモニターに押し当てないと測れないな。

551 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:37:45 ]
MAX_WIDTHっておい、どう見てもMIN_WIDTHの間違いだろw

で、MessageBoxと違ってmaxは考慮しないのな
WUXGAとかで開発してるとnetbookで使った時えらい事になりそうだw

552 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:39:42 ]
ダイアログは別のやつ使うんだった気がしてたけど調べるの忘れてたわ。 >GWLP_USERDATA
LONGになってんのは単純なミス。
画面サイズは何を使えば満足? マルチディスプレイはよく分からん。
どう見てもMIN_WIDTHの間違い。 >MAX_WIDTH
MessageBoxってmax考慮してたっけ? 画面外にまで突き抜けてた気がするけど。

553 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:41:20 ]
WM_SETFONTした後のGetDCでフォントが選択されてる保証ってあるの?

554 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:45:22 ]
何ていうか、見た人のスキルで評価の分かれるコードだw
「どこがダメなんだ?」と思った人は猫わかレベルの人だろう



555 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:46:52 ]
勉強になるなあ

556 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:55:10 ]
もろもろ考慮しても>>467は50行で作れるし
>>479は5分で作れるのか
すげぇな

557 名前:デフォルトの名無しさん mailto:SAGE [2009/03/14(土) 20:55:45 ]
ウィンドウの中のある座標に向かってクリックメッセージを送るAPIってありますか?
ボタン風に書いてあるメニューボタンがあるんですが、実際は絵なので
ハンドルが取れないのです。


558 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:58:51 ]
クリックした際の処理を自分で走らせれば?

559 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:06:56 ]
>>556
だってさ、最小コードはこれだろ?50行なんて余裕でしょ

INT_PTR CALLBACK InputBoxProc(HWND hDlg,UINT Msg,WPARAM wParam,LPARAM lParam)
{
 switch(Msg){
 case WM_INITDIALOG:
  return SetWindowLongPtr(hDlg,DWLP_USER,lParam),TRUE;
 case WM_COMMAND:
  switch(GET_WM_COMMAND_ID(wParam,lParam)){
  case IDOK:
  {
   LPTSTR p = (LPTSTR)GetWindowLongPtr(hDlg,DWLP_USER);
   GetDlgItemText(hDlg,IDC_TEXT,p,*(int*)p);
  }
  case IDCANCEL:
   EndDialog(hDlg,GET_WM_COMMAND_ID(wParam,lParam));
  }
 }
 return FALSE;
}

560 名前:デフォルトの名無しさん mailto:SAGE [2009/03/14(土) 21:11:01 ]
すみません、説明不足でした。
外部アプリのメニューを操作したいのですが、そのメニューボタンが
すべて絵なんです。

561 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:17:30 ]
>>559
リソース使ってる点は無視するにしても
メッセージの長さにウィンドウを合わせる処理がないのでは・・・

562 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:19:03 ]
>>560
何か怪しいことに使おうとしてるんじゃないのかね

563 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:19:06 ]
>>560
WM_LBUTTONDOWN じゃだめなの?

564 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:20:57 ]
>>559
自信満々に出してきたコードがこれでは…



565 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:22:11 ]
>>561
別にメッセージの長さに合わせる必要性が無いし、
リソース使ってるのに問題でもあるのか?
フォント決め打ちよりはマシだろ

566 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:24:12 ]
てか、メッセージを設定する部分はどこ行った

567 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:24:22 ]
>>561
メッセージを表示するコードがないんだから、長さを合わせる以前の問題だろうw

568 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:26:06 ]
だから>>559は最小コードだって
これに肉付けしていっても50行ぐらいで十分収まるだろってこと

569 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:27:22 ]
リソース使えばそりゃ>>462だって短くなるし
ちゃんとした比較にならないのでは

570 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:30:13 ]
リソースもフォント決め打ちじゃないの?

571 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:30:18 ]
いや、>>556の「50行・5分で作れるのすげぇ」レスを受けて5分で書いてみただけだし

572 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:32:02 ]
もろもろ考慮されてるか?

573 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:34:00 ]
API使いならリソースなんて使わないんじゃないか

574 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:35:14 ]
リソースはソース配るのが面倒だな



575 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:35:58 ]
>>573
お前アホだろw

576 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:36:03 ]
>>573
リソースを使うAPIを使いたいだろw

577 名前:560 mailto:SAGE [2009/03/14(土) 21:41:02 ]
>>562
そ、そんなんじゃないです。
>>563
カーソルを移動させてってことですか?

他のソフトで目的の外部アプリを操ってるのがあって
どうやってるのかなってのと、自分もそういうのを作る
必要があったので。

578 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:41:41 ]
mouse_event, SendInput

579 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:46:30 ]
> メニューボタンがすべて絵
最近こういうのホント多いよなぁ。動画編集ソフトとか特に。
使い勝手が良ければまだしも、キーボード操作を全く受け付けなかったりとか。

もう素直に標準のコントロール使ってくれよ・・・。

580 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:49:31 ]
もはやあらゆるものをDirect3Dで描画する時代に入ったんだよ

581 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 22:05:54 ]
2D(GDI)のハードウェアアクセラレーションはRADEONもGeForceも既に搭載しとらんだろ
XPはもうロートルなんだから7600GSやX1650でも積んでればいいんだ


582 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 22:12:44 ]
>>580-581
誤爆?

583 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 22:30:59 ]
moudamedakonosure

584 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 00:00:19 ]
>>579-581
そこで、ActiveAccessibilityの幻想ですよ。



585 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 00:22:30 ]
自プロセス内の全スレッドのレジスタの値を取得するAPIは無い?

586 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 00:26:33 ]
インラインアセンブラで取ってろ

587 名前:560 mailto:SAGE [2009/03/15(日) 07:23:43 ]
>>578
ありがとうございます。
ググってみたら出来そうな気がします。

588 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 07:40:34 ]
レジストリエディタでキーを作成すると、日本語Windowsだと(標準)という名前でエントリが1つ
常に存在してるようなのですが、このエントリを読み書きするにはどうすれば
いいのでしょうか?よろしくお願いします。

589 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 08:02:48 ]
588です。解決しました。MSDNに書いてありましたね。すみません。
名前にNULLまたは空文字列を設定するんですね。

590 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 11:40:33 ]
www.fnn-news.com/news/headlines/articles/CONN00151035.html

591 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 11:58:57 ]
>>585
関数呼び出し自体がレジスタを変えるというのに
どうやってそんな API を作ればいいんだよ

592 名前:デフォルトの名無しさん [2009/03/15(日) 12:12:58 ]
CONTEXT 構造体にアクセスしたいんじゃね?

593 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 12:16:30 ]
GetThreadContextじゃねーの?

594 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 14:36:03 ]
espやeipの値が変わる分は補正すればいいということか



595 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 14:49:11 ]
GetThreadContextを呼んだ時点でeaxやedxは確実に変わってるだろが

596 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 14:51:40 ]
だから補正しろつってるだろ。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<205KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef