5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

Win32API質問箱 Build86

1 :デフォルトの名無しさん:2010/02/05(金) 15:23:00
スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。
やさしいお兄さんやお姉さんたちが答えてくれるかも。
「知らないならレスしないで下さい。ウザイだけです。 」なんて言わないでねっ!

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

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

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

Win32API質問箱 Build85
http://pc12.2ch.net/test/read.cgi/tech/1262430441/

2 :デフォルトの名無しさん:2010/02/05(金) 15:23:45
84 ttp://pc12.2ch.net/test/read.cgi/tech/1259478896/
83 ttp://pc12.2ch.net/test/read.cgi/tech/1256891725/
82 ttp://pc12.2ch.net/test/read.cgi/tech/1253699773/
81 ttp://pc12.2ch.net/test/read.cgi/tech/1249140049/
80 ttp://pc12.2ch.net/test/read.cgi/tech/1244057140/
79 ttp://pc12.2ch.net/test/read.cgi/tech/1240411224/
78 ttp://pc12.2ch.net/test/read.cgi/tech/1238289377/
77 ttp://pc12.2ch.net/test/read.cgi/tech/1235494464/
76 ttp://pc11.2ch.net/test/read.cgi/tech/1233622578/
75 ttp://pc11.2ch.net/test/read.cgi/tech/1231423602/
74 ttp://pc11.2ch.net/test/read.cgi/tech/1229239827/
73 ttp://pc11.2ch.net/test/read.cgi/tech/1227934931/
72 ttp://pc11.2ch.net/test/read.cgi/tech/1226575789/
71 ttp://pc11.2ch.net/test/read.cgi/tech/1224745158/
70 ttp://pc11.2ch.net/test/read.cgi/tech/1221446107/
69 ttp://pc11.2ch.net/test/read.cgi/tech/1217687038/
68 ttp://pc11.2ch.net/test/read.cgi/tech/1215348804/
67 ttp://pc11.2ch.net/test/read.cgi/tech/1212931246/
66 ttp://pc11.2ch.net/test/read.cgi/tech/1210775622/
65 ttp://pc11.2ch.net/test/read.cgi/tech/1208847084/
64 ttp://pc11.2ch.net/test/read.cgi/tech/1207099291/
63 ttp://pc11.2ch.net/test/read.cgi/tech/1204600558/
62 ttp://pc11.2ch.net/test/read.cgi/tech/1202060403/
61 ttp://pc11.2ch.net/test/read.cgi/tech/1199514664/

3 :デフォルトの名無しさん:2010/02/05(金) 15:23:57
60 ttp://pc11.2ch.net/test/read.cgi/tech/1196874830/
59 ttp://pc11.2ch.net/test/read.cgi/tech/1194701996/
58 ttp://pc11.2ch.net/test/read.cgi/tech/1191781463/
57 ttp://pc11.2ch.net/test/read.cgi/tech/1189255282/
56 ttp://pc11.2ch.net/test/read.cgi/tech/1186989201/
55 ttp://pc11.2ch.net/test/read.cgi/tech/1184853465/
54 ttp://pc11.2ch.net/test/read.cgi/tech/1181645965/
53 ttp://pc11.2ch.net/test/read.cgi/tech/1178882828/
52 ttp://pc11.2ch.net/test/read.cgi/tech/1176828891/
51 ttp://pc11.2ch.net/test/read.cgi/tech/1174416295/
50 ttp://pc11.2ch.net/test/read.cgi/tech/1171721448/
49 ttp://pc10.2ch.net/test/read.cgi/tech/1168708801/
48 ttp://pc10.2ch.net/test/read.cgi/tech/1166172047/
47 ttp://pc8.2ch.net/test/read.cgi/tech/1163375772/
46 ttp://pc8.2ch.net/test/read.cgi/tech/1159158014/
45 ttp://pc8.2ch.net/test/read.cgi/tech/1156032806/
44 ttp://pc8.2ch.net/test/read.cgi/tech/1151501925/
43 ttp://pc8.2ch.net/test/read.cgi/tech/1148005509/
42 ttp://pc8.2ch.net/test/read.cgi/tech/1144962549/
41 ttp://pc8.2ch.net/test/read.cgi/tech/1141392216/
40 ttp://pc8.2ch.net/test/read.cgi/tech/1138893959/
39 ttp://pc8.2ch.net/test/read.cgi/tech/1136673250/
38 ttp://pc8.2ch.net/test/read.cgi/tech/1133798345/
37 ttp://pc8.2ch.net/test/read.cgi/tech/1131884991/
36 ttp://pc8.2ch.net/test/read.cgi/tech/1128951330/
35 ttp://pc8.2ch.net/test/read.cgi/tech/1125850096/
34 ttp://pc8.2ch.net/test/read.cgi/tech/1122723009/
33 ttp://pc8.2ch.net/test/read.cgi/tech/1120153520/
32 ttp://pc8.2ch.net/test/read.cgi/tech/1117271829/
31 ttp://pc8.2ch.net/test/read.cgi/tech/1114762194/

4 :デフォルトの名無しさん:2010/02/05(金) 15:24:06
30 ttp://pc8.2ch.net/test/read.cgi/tech/1112345886/
29 ttp://pc8.2ch.net/test/read.cgi/tech/1110281860/
28 ttp://pc5.2ch.net/test/read.cgi/tech/1108199304/
27 ttp://pc5.2ch.net/test/read.cgi/tech/1106103119/
26 ttp://pc5.2ch.net/test/read.cgi/tech/1104109858/
25 ttp://pc5.2ch.net/test/read.cgi/tech/1101393155/
24 ttp://pc5.2ch.net/test/read.cgi/tech/1098967135/
23 ttp://pc5.2ch.net/test/read.cgi/tech/1095534704/
22 ttp://pc5.2ch.net/test/read.cgi/tech/1092524669/
21 ttp://pc5.2ch.net/test/read.cgi/tech/1090422324/
20 ttp://pc5.2ch.net/test/read.cgi/tech/1088140233/
19 ttp://pc5.2ch.net/test/read.cgi/tech/1084697545/
18 ttp://pc5.2ch.net/test/read.cgi/tech/1081702990/
17 ttp://pc5.2ch.net/test/read.cgi/tech/1077470361/
16 ttp://pc2.2ch.net/test/read.cgi/tech/1073830065/★
15 ttp://pc2.2ch.net/test/read.cgi/tech/1069339866/★
14 ttp://pc5.2ch.net/tech/kako/1065/10653/1065328397.html
13 ttp://pc5.2ch.net/tech/kako/1059/10595/1059549320.html
12 ttp://pc5.2ch.net/tech/kako/1056/10560/1056033645.html
11 ttp://pc5.2ch.net/tech/kako/1052/10526/1052651750.html
10 ttp://pc5.2ch.net/tech/kako/1047/10478/1047819779.html
9 ttp://pc5.2ch.net/tech/kako/1044/10449/1044929160.html
8 ttp://pc5.2ch.net/tech/kako/1040/10409/1040964626.html
7 ttp://pc3.2ch.net/tech/kako/1036/10366/1036654893.html
6 ttp://pc3.2ch.net/tech/kako/1032/10325/1032548635.html
5 ttp://pc3.2ch.net/tech/kako/1028/10285/1028580373.html
4 ttp://pc3.2ch.net/tech/kako/1023/10233/1023361418.html
3 ttp://pc.2ch.net/tech/kako/1017/10170/1017072275.html
2 ttp://pc.2ch.net/tech/kako/1006/10067/1006783012.html
1 ttp://pc.2ch.net/tech/kako/991/991576947.html

5 :デフォルトの名無しさん:2010/02/05(金) 15:24:34
引き続きクソスレクソレスの嵐をお楽しみください

6 :デフォルトの名無しさん:2010/02/05(金) 15:31:55
前スレの991さんへ

これですこれです
出来ましたありがたや

7 :デフォルトの名無しさん:2010/02/05(金) 15:35:19
それじゃない
それじゃない
コンソールアプリとして組んで(int mainエントリー)
GUIも使う
それが出来てからWinMainエントリーなGUIアプリ
に改造する
これが常道。
WinMainから始めるのは外道

8 :デフォルトの名無しさん:2010/02/05(金) 15:40:42
そんなやり方もあるんですか?
よかったらそれも教えてください
subsystemスイッチを消すとエントリポイントを勝手に探してくれるのは知ってるけど
GUI用のメッセージキューとか?は
どうやって準備するんですか?

9 :デフォルトの名無しさん:2010/02/05(金) 15:45:06
てか今時コンソールにメッセージ出すんじゃなくて
ファイルにHTMLとかでメッセージ出したほうが
見やすくね?表とかに整形して出すこととか
出来るし、フォントの大きさも色も変えられるし...

10 :デフォルトの名無しさん:2010/02/05(金) 15:45:17
何も変わらない
WinMainがなにか用意してくれたか?

11 :デフォルトの名無しさん:2010/02/05(金) 15:54:32
なるほど。hInstanceにGetModuleHandle(NULL)渡したら普通に出来ました
こっちはGUIが終了してもコンソールは残るのか

12 :デフォルトの名無しさん:2010/02/05(金) 16:20:55
>>7
実は外道と常道なんてちょっとした差
でしかないという考えもある。ブラウザ
とかインフラが揃っておるご時世、
UNIXのシェルアプリのような組み合わせ
て使ってナンボなアプリにするわけでもな
きゃ、最初からコンソール出力はせず
>>9のようにリアルタイムにHTML出
力してブラウザでログを眺めるというよう
なやり方もありだとオモ

13 :デフォルトの名無しさん:2010/02/05(金) 16:45:27
いつまでもあると思うなカネとブラウザ
ってか?

14 :デフォルトの名無しさん:2010/02/05(金) 16:48:12
できた!
int test()
{
 HKEY hRootKey;
 char KeyName[512];
 strcpy(KeyName, "SOFTWARE\\Microsoft\\NET Framework Setup\\NDP\\v2.0.50727");
 if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, KeyName, 0, KEY_READ, &hRootKey) != ERROR_SUCCESS) {
  printf("err!\n");
  return 0;
 }
 DWORD dwType, DWordValue, cbBuff;
 dwType = REG_DWORD;
 cbBuff = sizeof(DWordValue);
 if (RegQueryValueEx(hRootKey, "Install", NULL, &dwType, (LPBYTE)&DWordValue, &cbBuff) != ERROR_SUCCESS) {
  RegCloseKey(hRootKey);
  printf("err!\n");
  return 0;
 }
 RegCloseKey(hRootKey);
 printf("dwType=%d\n", dwType);
 printf("DWordValue=%d\n", DWordValue);
 return 0;
}

15 :デフォルトの名無しさん:2010/02/05(金) 17:15:15
Ctrl+Oでファイルを開くとかのアクセラレータキーって
対応するメニューアイテムないと使えないんでしょうか

ショートカットキー込で再利用できる部品を作れないかと思ったんですが
メニューアイテムとセットになってるんだとすると
そういう部品化は出来ないってことになりますよね?

16 :デフォルトの名無しさん:2010/02/05(金) 18:27:16
独自でアクセラレータテーブル作って非メニューコマンドを実装することはできる
CreateAcceleratorTable()で作ったハンドルをTranslateAccelerator()に渡すだけでよい
複数のハンドル作れば、PCゲームみたいな1つの操作に複数のキー割り当て的なこともできる

17 :デフォルトの名無しさん:2010/02/06(土) 04:28:49
EnumWindowsて先に起動された順に列挙していくの?

18 :デフォルトの名無しさん:2010/02/06(土) 09:05:10
何を言ってるんだ

19 :デフォルトの名無しさん:2010/02/06(土) 11:07:19
だから
早く起動されたアプリの情報から順番に
プロシージャへ渡されるの?

20 :デフォルトの名無しさん:2010/02/06(土) 11:10:35
EnumWindows で取得できるウィンドウと、プロセスには直接の関係はない。

21 :デフォルトの名無しさん:2010/02/06(土) 19:00:01
Win32APIって.netでも使えますか

22 :デフォルトの名無しさん:2010/02/06(土) 20:57:55
使えます。

23 :デフォルトの名無しさん:2010/02/06(土) 22:42:13
つ ttp://ja.wikipedia.org/wiki/P/Invoke


24 :デフォルトの名無しさん:2010/02/07(日) 00:03:34
うぃなぴ

25 :デフォルトの名無しさん:2010/02/07(日) 06:06:38
全スレは史上最低の無駄スレだったな

26 :デフォルトの名無しさん:2010/02/07(日) 10:02:41
そうだなすべてが無駄だ

27 :デフォルトの名無しさん:2010/02/07(日) 13:32:15
winsockとSocketクラスってどっちが優れてるの

28 :デフォルトの名無しさん:2010/02/07(日) 13:49:03


Socketクラスはwinsockで実装されてるんじゃないかな

29 :デフォルトの名無しさん:2010/02/07(日) 14:11:27
ツールバーのボタンの右横に、▼マークのついた
メニューボタンをつけるにはどうしたらいいの?

30 :デフォルトの名無しさん:2010/02/07(日) 14:16:36
TB_SETEXTENDEDSTYLEとTBSTYLE_EX_DRAWDDARROWS

31 :デフォルトの名無しさん:2010/02/07(日) 14:43:01
有名なこのサイト
ttp://www.kumei.ne.jp/c_lang/index_sdk.html
信頼度は高いですか?

32 :デフォルトの名無しさん:2010/02/07(日) 14:47:28
うまくいかないと思ったらMSDN確認するくらいの気で行けば平気

33 :デフォルトの名無しさん:2010/02/07(日) 14:48:25
本家というかMSDNライブラリ(>>1)を信頼したほうがいい

34 :デフォルトの名無しさん:2010/02/07(日) 17:07:56
apiで数式エディタを作りたいのですが
参考になるサイト等がありましたら教えて

35 :デフォルトの名無しさん:2010/02/07(日) 17:12:54
http://msdn.microsoft.com/

36 :デフォルトの名無しさん:2010/02/07(日) 17:17:29
参考になるサイトっていうのは
APIで数式エディタを作ろう!みたいなタイトルでサンプル提供してるような所を指してるの?
そんなニッチなもんあるわけねえだろ

37 :デフォルトの名無しさん:2010/02/07(日) 17:29:32
数式エディタは難しいよ
Σとかどうやって作るんだよ

38 :デフォルトの名無しさん:2010/02/07(日) 17:35:54
>>30
ありがとう

39 :デフォルトの名無しさん:2010/02/07(日) 18:16:44
>>34
こんなんあるけど↓ ???
http://www.vector.co.jp/magazine/softnews/091212/n0912121.html


40 :デフォルトの名無しさん:2010/02/07(日) 19:17:50
数式を表示できるソフト普及するよりは、コンピュータに適した形で
数式の体系自体を変えるべきだと思うんだ

41 :デフォルトの名無しさん:2010/02/08(月) 02:59:53
Tex最強!

42 :デフォルトの名無しさん:2010/02/08(月) 18:02:11
ツールバーのドロップダウンメニューにチェックマークを付けたいのに
クリックしても何もおこらないんですがなんでですかねえ

HWND hToolbar;
HMENU hPopupMenu;

LRESULT CALLBACK WndProc(HWND hwnd , UINT msg , WPARAM wp , LPARAM lp) {
switch (msg) {
case WM_COMMAND: {
if(LOWORD(wp) == 50){
MENUITEMINFO info;
info.cbSize = sizeof(info);
info.fMask = MIIM_STATE;
GetMenuItemInfo(hPopupMenu, 50, false, &info);
if(info.fState == MFS_CHECKED){
info.fState = MFS_UNCHECKED;
SetMenuItemInfo(hPopupMenu, 50, false, &info);
} else {
info.fState = MFS_CHECKED;
SetMenuItemInfo(hPopupMenu, 50, false, &info);
}
DrawMenuBar(hToolbar);
}
return 0;
}

43 :デフォルトの名無しさん:2010/02/08(月) 18:03:23
つづき
case WM_NOTIFY:{
#define lpNM ((LPNMHDR)lp)
#define lpnmTB ((LPNMTOOLBAR)lp)
RECT rc;
TPMPARAMS tpm;
if(lpNM->hwndFrom == hToolbar && lpNM->code == TBN_DROPDOWN){
SendMessage(lpnmTB->hdr.hwndFrom, TB_GETRECT,
(WPARAM)lpnmTB->iItem, (LPARAM)&rc);
MapWindowPoints(lpnmTB->hdr.hwndFrom,
HWND_DESKTOP, (LPPOINT)&rc, 2);
tpm.cbSize = sizeof(TPMPARAMS);
tpm.rcExclude.top = rc.top;
tpm.rcExclude.left = rc.left;
tpm.rcExclude.bottom = rc.bottom;
tpm.rcExclude.right = rc.right;
hPopupMenu = CreatePopupMenu();
AppendMenu(hPopupMenu, 0, 50, TEXT("開く(&O)"));
TrackPopupMenuEx(hPopupMenu,
TPM_LEFTALIGN| TPM_LEFTBUTTON| TPM_VERTICAL,
rc.left, rc.bottom, hwnd, &tpm);
DrawMenuBar(hToolbar);
}

44 :デフォルトの名無しさん:2010/02/08(月) 23:15:32
Windowsで開発したことないんですが、
あるスレッドが複数のイベントを待ちたい場合ってどういうふうに
設計するのが一般的でしょうか?

複数のイベントとは、片方はソケットからの入力、
もう片方は他のスレッドからの要求です。

MsgWaitForMultipleObjectはソケットが待てないっぽいんで。
環境はCで、MFCなしです。

45 :デフォルトの名無しさん:2010/02/09(火) 00:35:34
windowsプログラミングでオブジェクト指向なコードが書きたいときって、アンマネージド限定でどうするのがベター?
メインウィンドウのプロシージャに振り回されて、まともな設計ができない

46 :デフォルトの名無しさん:2010/02/09(火) 00:46:55
>>44
むしろ、MsgWaitForMultpleObjectでソケットが待てないソースを教えてほしい。
WaitForMultipleObjectsとかでもソケット使えるのだから、
直感的にはMsgWaitForMultpleObjectでダメとは思えないのだけど。

47 :デフォルトの名無しさん:2010/02/09(火) 00:51:09
>>45
つMFC

48 :デフォルトの名無しさん:2010/02/09(火) 00:56:55
>>45
Windows API自体オブジェクト指向の固まりだと言うことに気付け。
ハンドル1つ1つがインスタンス。

それはともかく、ウィンドウプロシージャをクラスのメンバ関数にする方法は
いくつかあって誰か書いているはずだから、ググれば見つかる。
それでメインウィンドウという括りで1つのクラスが出来上がる。

49 :デフォルトの名無しさん:2010/02/09(火) 00:59:20
ExtTextOutで文字を表示する時に等間隔にしてくれるような関数ありますか?
例えば日本語(全角)5文字表示する所に半角10文字のスペースを上書きしても
日本語の方が横長みたいで全て埋まらないのです

まとめると、全角5文字を半角10文字のスペースできっちり埋めれるようにするような関数はありますか?


50 :デフォルトの名無しさん:2010/02/09(火) 01:06:27
等幅フォントは?

51 :デフォルトの名無しさん:2010/02/09(火) 01:13:26
>>50
CreateFontのcharsetに等幅フォントやってみようと思います
ありがとうございました


52 :デフォルトの名無しさん:2010/02/09(火) 02:40:04
>>45
WTLもあるよ

53 :44:2010/02/09(火) 08:44:11
>>46
*WaitFor*Objectで待てるものに、ソケットが対象になっていませんでした。
ハンドルしか待てないからソケットは待てないと思っているのですが、
何か方法があるのでしょうか?
単純に待つハンドルの配列にソケットを突っ込めばいけてしまうとかでしょうか?

MFCのAPIを使えば、ソケットとハンドルが関連付けられてWaitFor*でも
待てるっぽいところまでは分かったのですが、今回はMFCが使えないので…。

54 :デフォルトの名無しさん:2010/02/09(火) 09:06:56
>>43
毎回CreatePopupMenu呼んでるから

55 :デフォルトの名無しさん:2010/02/09(火) 09:40:54
他のスレッドからの要求もソケットでやればいいな

56 :デフォルトの名無しさん:2010/02/09(火) 09:42:19
>>44
WSAEventSelect

57 :デフォルトの名無しさん:2010/02/09(火) 11:54:22
CSSパーザ探してます。
だいぶ昔に作り捨てたプログラムではスタイルシートをres:プロトコルでIEコン
ポーネントに流し込む手法を使いましたが、この方法は使えなくなってしまった
ようで、IHTMLStyleSheet::addRuleで流し込む必要ががあるようです。

元データ自体はCSSの文法で持ちたいので、C/C++から利用できるフリーのCSSパー
ザまたはIEコンポーネントの再利用法は有りませんか?

58 :デフォルトの名無しさん:2010/02/09(火) 12:57:07
>>57です
正規表現だけでいけるような気がしてきたので質問取り下げます。

59 :デフォルトの名無しさん:2010/02/09(火) 15:54:13
TEXTマクロって1バイト文字には使わなくていいんだよね?

60 :デフォルトの名無しさん:2010/02/09(火) 16:09:28
_tcslen()に1バイト文字入れてみ


61 :デフォルトの名無しさん:2010/02/09(火) 16:48:18
unicode/MBCSをコンパイルオプションで切り替える、ってことをしないならTEXT自体使わなくていい。
切り替えるからTEXT使う、なら基本は全部に使う。(処理の詳細的に使わない場合はあり得る)
切り替えないけどLよりTEXTが好き、でも別にいい。

だいぶスレ違いな気がする。

62 :デフォルトの名無しさん:2010/02/09(火) 19:06:03
ファイルが関連付いているアプリケーションのアイコンを取得したいと思っています。
ExtractAssociatedIcon という API を使用すると 32 x 32 のアイコンしか取得することができません。
48 x 48 のアイコンを取得したいのですが、どのようにすれば良いでしょうか?

63 :デフォルトの名無しさん:2010/02/09(火) 22:50:25
漏れの記憶では
xn_resourceeditor

64 :デフォルトの名無しさん:2010/02/09(火) 23:02:59
>>56
ありがとです。
いろいろ検討してみます。

65 :デフォルトの名無しさん:2010/02/10(水) 04:59:51
IMPLEMENT_DYNAMIC(CCustomFileDialog, CFileDialog)

CCustomFileDialog::CCustomFileDialog(BOOL bOpenFileDialog, LPCTSTR lpszDefExt, LPCTSTR lpszFileName,
DWORD dwFlags, LPCTSTR lpszFilter, CWnd* pParentWnd) :
CFileDialog(bOpenFileDialog, lpszDefExt, lpszFileName, dwFlags, lpszFilter, pParentWnd)
{
m_customDlgPtr = this->GetIFileDialogCustomize();
if(m_customDlgPtr != NULL){
m_customDlgPtr->AddComboBox(IDC_COMOBOBOX1);
m_customDlgPtr->AddControlItem(IDC_COMOBOBOX1,101,L"foo");
m_customDlgPtr->AddControlItem(IDC_COMOBOBOX1,102,L"bar");
}
}

BOOL CCustomFileDialog::OnFileNameOK()
{
DWORD Item;
m_customDlgPtr->GetSelectedControlItem(IDC_COMOBOBOX1,&Item);
return CFileDialog::OnFileNameOK();
}

コンボボックスから選択中のアイテムを取得できたんだが、そこから文字列を取得する方法がわからない。
くぐってもさっぱり出てこないので教えてほしい。

66 :デフォルトの名無しさん:2010/02/10(水) 10:35:41
コア別のCPU使用率を取得する方法を教えてください。


67 :デフォルトの名無しさん:2010/02/10(水) 10:39:47
パフォーマンスカウンタの値を見る
パフォーマンスカウンタデータヘルパーAPIっていうバカ長い名前のAPIがあるのでそれを使います

68 :デフォルトの名無しさん:2010/02/10(水) 10:41:47
使いかたの説明は面倒なので↓でも見て自分で考えてください
http://nienie.com/~masapico/api_PdhGetRawCounterValue.html

69 :デフォルトの名無しさん:2010/02/10(水) 12:31:50
>>65
記憶によると、comboboxの各アイテムに文字列へポインタをユーザ定義のデータと
して埋め込んでおく。

70 :デフォルトの名無しさん:2010/02/10(水) 12:33:51
コントロールの文字を小さくするには?

71 :デフォルトの名無しさん:2010/02/10(水) 12:39:16
小さいフォントをセットすればいい

72 :デフォルトの名無しさん:2010/02/10(水) 19:46:50
>>65
選択中のならGetWindowText()でできた希ガス
リストボックスのほうならCB_GETLBTEXTとか

73 :デフォルトの名無しさん:2010/02/10(水) 22:11:54
>>69
>>72
とんくす。

74 :デフォルトの名無しさん:2010/02/11(木) 10:01:07
AnimateWindowでウインドウのフェードアウトをする方法を検索すると、
AW_BLEND | AW_HIDE としているのが見つかるのですが
msdnには、AW_BLENDとAW_HIDEを併用してはいけないと書いてあります。
どうやればいいのか教えてください。

75 :デフォルトの名無しさん:2010/02/11(木) 10:52:41
英語版のMSDNにはそんな事書いてないけど、日本語版が間違ってるんじゃ?

76 :デフォルトの名無しさん:2010/02/11(木) 10:55:07
日本語版は間違いだらけ
戻り値 True/False 間違えてて正反対の意味なんてことも


77 :デフォルトの名無しさん:2010/02/11(木) 11:04:31
>>74
http://msdn.microsoft.com/ja-jp/library/ms997507.aspx

78 :デフォルトの名無しさん:2010/02/11(木) 11:16:43
msdnに間違いがあるとは考えませんでした
ありがとうございました

79 :デフォルトの名無しさん:2010/02/11(木) 11:29:18
MSDNだけじゃなくて
●●入門とかの言語とかフレームワークとかの書籍も結構致命的な間違いがある

80 :デフォルトの名無しさん:2010/02/11(木) 15:40:49
ツールバーとステータスバー
両方画面の下に共存させるにはどうしたらいい?

81 :デフォルトの名無しさん:2010/02/11(木) 15:51:32
>>76
APIは一度公開したらインターフェースを返ることは
出来ないからな。使われない余計なパラメータがあ
ったりするのはそういう理由だし。
時には内容はほぼ同じだがインターフェースだけ
変えたAPIとかあるらしいし。古いAPIの更新を
やめて新しいAPIとして管理していくというやり方
を取らざるを得ないケースも多いだろうし
結局数は増える一方。墓地の埋葬者名簿みたいな
もので正確性を永続的に保証できるものじゃない
だろ

82 :デフォルトの名無しさん:2010/02/11(木) 15:55:56
日本語ページが正しくないことの言い訳としては筋違い。

83 :デフォルトの名無しさん:2010/02/11(木) 16:20:50
>>81
その言い訳は「かつては正しかった」という根拠を出してからにしろ。

84 :デフォルトの名無しさん:2010/02/11(木) 17:03:31
>>81
>墓地の埋葬者名簿
いいたとえだなw確かにそうだ

関数の戻り値の一貫性とか破綻してるから困ったもんだな・・・

85 :デフォルトの名無しさん:2010/02/11(木) 17:54:48
MSの技術者でさえこんな設計するんだから
一般人のコードが汚くても誰も責めることはできない

86 :デフォルトの名無しさん:2010/02/11(木) 17:58:55
>>85こういう奴と一緒に仕事はしたくないな。

87 :デフォルトの名無しさん:2010/02/11(木) 19:46:47

いっしょにコードを
書きませんか?

   ∧_∧ [windows.h]
    (・ω・)丿 ッパ
.  ノ/  /
  ノ ̄ゝ

88 :デフォルトの名無しさん:2010/02/11(木) 21:28:50
http://msdn.microsoft.com/en-us/library/ms633494%28VS.85%29.aspx
>Return Value
>  Not used.

http://msdn.microsoft.com/ja-jp/library/cc410802.aspx
>戻り値.
>関数が成功すると、0 以外の値が返ります。
>関数が失敗すると、0 が返ります。拡張エラー情報を取得するには、 関数を使います。


戻り値の説明が勝手に増えててしかも間違っている
翻訳ミスどころかゴミ埋め込んでどうするw

89 :デフォルトの名無しさん:2010/02/11(木) 21:32:45
MSに言えよ

90 :デフォルトの名無しさん:2010/02/11(木) 21:35:19
Win関連の訳本はASCII時代がよかったな、1000ページ本とかバンバンだしやがって・・・

91 :デフォルトの名無しさん:2010/02/11(木) 21:36:52
肘で押えながら検証コード打ったりな

92 :デフォルトの名無しさん:2010/02/11(木) 22:08:35
>>88
そもそも、何でNot usedなのにBOOL返すようになってるんだ?

93 :デフォルトの名無しさん:2010/02/11(木) 22:11:51
>>92
元々 BOOL で使用されていたが
ドキュメントが糞で誰も使わなくなったから
Not used に書き直された

94 :デフォルトの名無しさん:2010/02/11(木) 22:19:15
VC++でヘッダーコントロールを扱っていますが、
HDITEM hdi;
SendMessage(hwnd,HDM_GETITEM,0,(LPARAM)&hdi);
sprintf(str1,"%d",hdi.cxy)
でヘッダーアイテムの幅が取得できるはずなのですが、上手くいきません
参考書はVC++逆引き大辞典です
どうしたらいいでしょうか?

95 :デフォルトの名無しさん:2010/02/11(木) 22:23:29
一応、FALSEを返す状況もあるんだけどな。

96 :デフォルトの名無しさん:2010/02/11(木) 22:44:42
HttpQueryInfoでヘッダーの内容を全部文字で見たい場合に
HTTP_QUERY_RAW_HEADERS_CRLFを指定してるのですが
どうも中に書き込まれた情報は2バイトコードになっているようです
この辺の文字コードを切り替えるにはどうすればいいのでしょうか?

97 :96:2010/02/11(木) 23:43:54
自己解決しました
参考にしたソースがwchar_tを前提にしてない古い物だったのが原因でした

98 :デフォルトの名無しさん:2010/02/12(金) 01:06:37
Windows 7 Home Premium 64bit版のPCで
Win32 APIを使ってアプリケーション製作できる?

99 :デフォルトの名無しさん:2010/02/12(金) 01:20:48
できる

100 :デフォルトの名無しさん:2010/02/12(金) 01:26:03
>>99
サンクス!助かった

216 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)