Win32API質問箱 Build66at TECH
Win32API質問箱 Build66 - 暇つぶし2ch200:デフォルトの名無しさん
08/05/21 22:39:34
>>197
じゃあケツ出せよ

201:デフォルトの名無しさん
08/05/21 22:41:15
>>156
WM_ACTIVATEでフォーカスを失った時にブレークにはかかったのですが、
カスタムドローするのに必要なパラメータがなかったのでできませんでした。
オーナードローで頑張ればできるのでしょうか?

202:デフォルトの名無しさん
08/05/21 22:52:33
聞きたいのですが、
BITMAPの合成はどうやればよいのですか?

203:デフォルトの名無しさん
08/05/21 23:33:54
>>195
別にWM_CREATE時じゃなくていいよ。
ちらつきを抑えたいからダブルバッファしたいんだろうからBMPは常にメモリ上にあるという仮定で、
WM_CREATEがきたときに別途mallocでもnewでもいいからバッファを確保して
そのバッファに背景BMPと表示したいBMPを合成したものを作成。
それをBitBltやStretchDIBitsのような描画関数で表示。

204:デフォルトの名無しさん
08/05/22 00:00:22
WindowsX.h にある
HANDLE_MSG() マクロを WM_COMMAND に対して使うとき、なんで return 0; になるんだ?

HANDLE_MSG() に渡すfn は void func(HWND...) でvoid型だし、HANDLE_MSG() 自体も

#define HANDLE_MSG(hwnd, message, fn) ¥
case message):return ((fn)(hwnd,...),0L)

でマクロ展開で「return 0;」が出てくる理由がよく解らん。

case message: return func(hwnd,...); //func() はvoid型

になるんじゃないの?

205:デフォルトの名無しさん
08/05/22 00:10:42
カンマ演算子
return a, b;
returnされるのはbの値。

206:デフォルトの名無しさん
08/05/22 06:15:18
メッセージクラッカって定義おかしくね?

WM_DRAWITEMとか、
> If an application processes this message, it should return TRUE.
って書かれてるのにvoidでreturn 0;されてるし

207:デフォルトの名無しさん
08/05/22 06:17:56
さんくす>>205
カンマ演算子、か。K&Rの演算子の表の一番下に確かにそんなのあるな。いままで意識した事無かった

ありがと

208:デフォルトの名無しさん
08/05/22 08:01:40
>>205
間違っています。
以上。
↓次の方どうぞ

209:デフォルトの名無しさん
08/05/22 08:58:29
キモ

210:デフォルトの名無しさん
08/05/22 09:05:15
キモ

211:デフォルトの名無しさん
08/05/22 10:19:57
ゲーム作ってるんだけど、メモリ内のデータ書き換え防止する方法とかある?
外部アプリからメモリ内サーチして書き換えるやつ防止したい。助言よろ。

212:デフォルトの名無しさん
08/05/22 10:34:36
PCの電源切れ

213:デフォルトの名無しさん
08/05/22 11:03:18
>>211
オンラインゲームじゃないなら、改造対策は不要では?

俺もゲーム作ってるんだが、ブログで改造対策のこと書いたら、
「改造対策する時間があるなら、ゲームのボリュームを増やすこととか、
もっとまともなことに使って欲しい」ってコメントが多かったよ。
改造するかはユーザーの自由なんだし、ユーザーとしては当然のコメントだが。

あと、いまどきの改造は、プロセスメモリエディタ+ルートキットで
やるから、改造を防止するなら、ユーザーから非難されることを覚悟のうえで
ルートキットじみたことをするしかないでしょうね。

214:デフォルトの名無しさん
08/05/22 12:37:49
VC++のリソースエディタでダイアログボックスが作れますが、
そのような外観の(ダイアログでない)ウィンドウを、
ウィンドウクラスで作ったウィンドウに、コントロールぺたぺた貼って作ろうと思ったら、
(CWndではなく、RegisterClassEx、CreateWindow使って)

・ウィンドウの背景色は何故かCOLOR_BTNSHADOWが(ダイアログと)等しい
・エディットボックスはCreateWindowExの第1引数にWS_EX_CLIENTEDGEにしないと立体の縁にならない
・フォントはWM_SETFONT使ってサイズを変更しないと文字がでかい
・そもそもデフォルトのフォントが当然MS shell dlgではないようで、よくわからない
 (ただ、画面のプロパティから、故意にダイアログとウィンドウのフォントを違うものにした覚えはない…)

実際CreateDialogマクロでダイアログが作られるとき、ここら辺の設定ってどうなっているのですか?
このマクロもCreateWindowExを使ってウィンドウを作ると書いてあるので、
同じようなことが再現できるのではと思ったのですが…

(CreateDialogがウィンドウの大きさを決めるとき、フォントを元に作ってあるのはわかったのですが…)

215:デフォルトの名無しさん
08/05/22 13:05:33
Process Explorerで表示できるWindow Titleと同じものを取得したいと思っています。
どうもGetWindowTextで取得できるものとは別物らしく、
Process ExplorerでJuneブラウザのWindow Titleを見ると、
GetWindow~で取得した名前とは違うものを表示しているのがわかります。

一体Process Explorerで表示できるWindow Titleとは何者か、
どうすれば取得できるのでしょうか?


216:デフォルトの名無しさん
08/05/22 13:19:39
>>215
URLリンク(msdn.microsoft.com)
> GetWindowText cannot retrieve the text of a control in another application.

217:デフォルトの名無しさん
08/05/22 13:34:18
使えないAPIなんですか。エディットコントロールじゃなければいいはず…ですよね。
そうするとWindow Titleってなんだろうという話になりまして、

たとえばJaneブラウザを表示したとき、以下のようになります。

・キャプションバー、およびProcessExplorer上WindowTile列の表示
 →”Jane Doe Style 【プログラム】 - Win32API質問箱 Build66”

・GetWindowText、およびタスクマネージャ上の表示
 →”Jane”

”Jane Doe Style 【プログラム】 - Win32API質問箱 Build66”の文字列を取得したいわけですが、
その方法はご存知でしょうか?

218:デフォルトの名無しさん
08/05/22 13:44:31
Delphiアプリケーションには実は見えないアプリケーションウィンドウがあって・・・

219:デフォルトの名無しさん
08/05/22 14:00:33
>>218
VBアプリもそんな感じだったな
だからタスクバーに表示しないプロパティなんてのがあるんだけど

220:デフォルトの名無しさん
08/05/22 14:07:52
spy++ とか眺めてみるといいと思う

221:デフォルトの名無しさん
08/05/22 14:14:12
あー…なんとなくイメージ掴めてきました
メインウィンドウに見えたのは子ウィンドウで、だから取得できなかったと。

子ウィンドウのウィンドウタイトルの取得とか、そのあたりを調べてみます。

ありがとうございます

222:デフォルトの名無しさん
08/05/22 14:14:17
>>217
こんなんでいいのかな?
#include<windows.h>
#include<stdio.h>

int main(void){
char title_buf[256], *class_name="TMainWnd";
int title_len;
HWND hwnd;

hwnd=FindWindow(class_name, NULL);
if(hwnd==NULL){
printf("Window not found. class name [%s]\n", class_name);
return 1;
}

title_len=GetWindowText(hwnd, title_buf, sizeof(title_buf)-1);
if(title_len>=0) printf("%s\n", title_buf);

return 0;
}

223:デフォルトの名無しさん
08/05/22 14:59:33
>>222
どうもです
実行結果とSpy++を併せて見て、おおよそ理解できました。

デルファイでもVBでもデフォルトのクラス名でウィンドウを検索したのち、
目的の名前を取得する事ができました

ありがとうございます

224:デフォルトの名無しさん
08/05/22 15:05:00
WM_GETTEXTでいいのでは

225:デフォルトの名無しさん
08/05/22 16:22:09
> title_len=GetWindowText(hwnd, title_buf, sizeof(title_buf)-1);
今時こんなソース書く奴はJavaか.NETで開発してろよと思う

226:デフォルトの名無しさん
08/05/22 16:25:53
>>225
この場合同書くのがいいのかも示して欲しいです

227:デフォルトの名無しさん
08/05/22 16:28:58
>>225
>>226に同意
どう書けばよいのでしょう?
TCHARの話でしょうか?

228:デフォルトの名無しさん
08/05/22 16:29:51
TCHARじゃないとかARRAYSIZE, _countofを使えとかnullは考慮されてるから-1はいらないとか
あたりじゃない?

229:デフォルトの名無しさん
08/05/22 16:54:54
grep で include 内を探したけど ARRAYSIZE と _countof とは無かった
(使用しているのは MinGW)

230:デフォルトの名無しさん
08/05/22 16:59:28
>>229
ARRAY_SIZE と countof はあったの?

231:デフォルトの名無しさん
08/05/22 17:01:22
>>230
無いです

232:デフォルトの名無しさん
08/05/22 17:12:16
_countofはMFCで定義されていてVC2005ぐらいからCRTでも定義されてた気がする
SDKにはwinnt.hにRTL_NUMBER_OFがある

いずれにしろ>>222は人に教えられる立場で無いのは確か

233:デフォルトの名無しさん
08/05/22 17:20:27
結局は、どう書くのが模範解答になるんでしょう?

234:デフォルトの名無しさん
08/05/22 17:24:19
WinAPIはよく知らんのだが、GetWindowText()の戻り値ってエラーチェックくらいしか使い途ないのかな。
>222もエラーチェックにしか使ってないようだし、>228によればナルターミネートはしてくれているようだし。
つーか、溢れたかどうかは単純には判らないのね。


235:デフォルトの名無しさん
08/05/22 17:27:19
>>222
if(title_len>=0) printf("%s\n", title_buf);

if(title_len>0) printf("%s\n", title_buf);
にしないとエラーチェックになってない


236:デフォルトの名無しさん
08/05/22 18:18:19
>>234
GetWindowTextLengthで事前にバッファ長を調べておけば済むだろ

237:デフォルトの名無しさん
08/05/22 18:27:58
GetGlyphIndices()という、文字列からグリフインデックスに変換するAPIがありますが、
この逆のことをするAPI、つまりグリフインデックスから文字列に変換する方法って解りますか?

238:デフォルトの名無しさん
08/05/22 18:28:29
バッファ足りなくてもバッファサイズまでコピーする仕様なの?
そうだとしても戻り値にNULL文字は数えないって書いてあるから
指定サイズ==戻り値ならあふれてるのでは。

239:デフォルトの名無しさん
08/05/22 18:31:24
>>238
馬鹿丸出し

240:デフォルトの名無しさん
08/05/22 18:37:47
>>236
しかし長さを調べた直後には別のウィンドウタイトルに変わっているかもしれない
そのアプリケーションがどう振舞うか想定できない

241:デフォルトの名無しさん
08/05/22 18:50:52
そんな事を気にするなら他プロセスのテキスト取得なんて考えないことだ

(そろそろフックネタ出す奴が現れる頃か)

242:デフォルトの名無しさん
08/05/22 18:50:58
仮にバッファ長が100だったとして、GetWindowTextLength()が99を返した後GetWindowText()が99を返しても、
その間にタイトルが書き換わっていたら溢れたかどうかは判らないのね。

243:デフォルトの名無しさん
08/05/22 19:10:58
>>240>>242
必要十分なサイズのバッファを渡せば溢れる可能性は無くなる。

LPTSTR buffer = (LPTSTR)malloc(sizeof(TCHAR) * 0x7fffffff);
if (buffer == NULL) {
  MessageBox(NULL, _T("この環境では使用できません"), _T("メモリ買いましょう"), 0);
  exit(-1);
}
GetWindowText(hwnd, buffer, 0x7fffffff);

244:デフォルトの名無しさん
08/05/22 20:36:32
32bit環境だと/3GBスイッチ使っても厳しそうだ。
VirtualAllocのMEM_RESERVEでアドレスだけ確保して、
SEHで動的にメモリを割り当てるのが現実解だな。

245:デフォルトの名無しさん
08/05/22 20:59:09
ヒント:APIフック

246:デフォルトの名無しさん
08/05/22 21:19:35
>>245
ヒント:お前は馬鹿

247:デフォルトの名無しさん
08/05/22 21:23:10
たまにはブローとかアッパーとかさぁ

248:デフォルトの名無しさん
08/05/22 21:34:08
まずはジャブから

249:デフォルトの名無しさん
08/05/22 21:51:37
このスレの質が低下したのは、優秀な人は.NETに移ったからかもな。

250:デフォルトの名無しさん
08/05/22 21:58:09
正解

251:デフォルトの名無しさん
08/05/22 22:06:48
今頃気付いたのか

252:デフォルトの名無しさん
08/05/22 22:25:19
Advanced Windowsの著者だって.NETの本を書くこんな世の中じゃ

253:デフォルトの名無しさん
08/05/22 23:38:50
poizun

254:デフォルトの名無しさん
08/05/22 23:47:16
poison

255:デフォルトの名無しさん
08/05/22 23:49:58
prison

256:デフォルトの名無しさん
08/05/22 23:57:59
ぬるぽ

257:デフォルトの名無しさん
08/05/23 00:07:37
ga

258:デフォルトの名無しさん
08/05/23 00:35:25
てか、sizeof(title_buf)-1を最後の引数に指定してるから、
溢れる可能性など皆無だが?
溢れるとかなに言ってるんだ?

259:デフォルトの名無しさん
08/05/23 00:47:09
↑理解していない何か

260:デフォルトの名無しさん
08/05/23 06:45:56
↑話を理解している天才

261:デフォルトの名無しさん
08/05/23 10:20:45
↑流れを読む天才

262:デフォルトの名無しさん
08/05/23 10:22:11
↓通常の流れに戻すという偉業を成し遂げた天才

263:デフォルトの名無しさん
08/05/23 10:30:46
#include<stdio.h>
#include<windows.h>

int main(void)
{
/**/MSG msg;

/**/while(0 < GetMessage(&msg,NULL,0,0)){
/******/switch(msg.message){
/**********/case WM_KEYDOWN:
/**************/puts("keydown");
/**************/break;
/******/}
/**/}
/**/return 0;
}

これで何かkey押してもダメなんだけどどうすればいい?

264:デフォルトの名無しさん
08/05/23 11:01:41
ウィンドウが無いじゃんか

265:デフォルトの名無しさん
08/05/23 11:06:59
コンソールに表示させたいん

266:デフォルトの名無しさん
08/05/23 11:52:02
な ん で ( ´∀` ) や ね ん !

267:デフォルトの名無しさん
08/05/23 12:31:48
プロシージャならメッセきたら処理するけど
コンソールの場合はどうやるのか気になって

268:デフォルトの名無しさん
08/05/23 13:12:02
CreateWindowでスタティックテキストを作りました。
テキストの背景色を透過したいんだけど、いい方法ありませんか?

hStatic = CreateWindowEx(0, "STATIC", cString, WS_VISIBLE | WS_CHILD | SS_SIMPLE,
X, Y, Width, Height, hWnd, (HMENU)Static, (HINSTANCE)hInst, NULL);

269:デフォルトの名無しさん
08/05/23 13:20:55
WS_EX_TRANSPARENTじゃダメ?

270:268
08/05/23 13:31:00
>>269
ダメでした。。
レバーコントロールに入れたツールバーにスタティックテキスト置いてます。

hStatic = CreateWindowEx(WS_EX_TRANSPARENT, "STATIC", cString, WS_VISIBLE | WS_CHILD | SS_SIMPLE,
X, Y, Width, Height, hWnd, (HMENU)Static, (HINSTANCE)hInst, NULL);

271:デフォルトの名無しさん
08/05/23 13:39:40
ツールバー、もしくはメニューの背景にブラシを使う事は出来ますか?

272:デフォルトの名無しさん
08/05/23 13:40:07
WM_CTLCOLORSTATICでNULL_BRUSHを返す

273:デフォルトの名無しさん
08/05/23 14:12:15
あるプロセスが、自分を起動したプロセス(親プロセス)を知る方法はありますか。

274:デフォルトの名無しさん
08/05/23 14:20:00
ある

275:デフォルトの名無しさん
08/05/23 14:21:19
レバーじゃなくてリバーだと思う

276:デフォルトの名無しさん
08/05/23 14:23:18
"レバーコントロール" の検索結果 約 1,270 件中 1 - 10 件目 (0.13 秒)
"リバーコントロール" の検索結果 約 185 件中 1 - 10 件目 (0.13 秒)


277:デフォルトの名無しさん
08/05/23 14:27:41
>>276
それ「レバー」「コントロール」別単語として検索した結果だから

278:デフォルトの名無しさん
08/05/23 14:27:45
どっちもすくな!

279:デフォルトの名無しさん
08/05/23 14:28:42
リバーコントロールでググると

もしかして: レバーコントロール
と出るなw

280:268
08/05/23 14:28:43
>>272
どうも。WM_CTLCOLORSTATICメッセージ勉強してみます。

281:デフォルトの名無しさん
08/05/23 14:41:49
>>277
馬鹿

282:デフォルトの名無しさん
08/05/23 15:02:53
レバー ReBar に一致する日本語のページ 約 268 件中 1 - 30 件目 (0.03 秒)
リバー ReBar に一致する日本語のページ 約 277 件中 1 - 30 件目 (0.24 秒)

283:デフォルトの名無しさん
08/05/23 15:28:05
rebarの発音はrí:bà:rだからリバーと読む方が実際の発音に近い
つまりレバーと読みたいならパーチーとかボデーとか言ってろってこった

284:デフォルトの名無しさん
08/05/23 15:33:15
↑アホ

285:デフォルトの名無しさん
08/05/23 15:35:16
↑話を理解してない馬鹿

286:デフォルトの名無しさん
08/05/23 15:36:33
ReBarをレバーっていうのは斬新だなw

287:デフォルトの名無しさん
08/05/23 15:39:09
↑馬鹿

288:デフォルトの名無しさん
08/05/23 15:40:32
>>281=>>284=>>287=大馬鹿

289:デフォルトの名無しさん
08/05/23 15:41:46
↑はずれ

290:デフォルトの名無しさん
08/05/23 15:43:10
>>281,>>284,>>287∈大馬鹿
という意味だろ

さすが大馬鹿

291:デフォルトの名無しさん
08/05/23 15:45:37
レバーという表現は日本語としても定着してるんだからいんじゃね?

292:デフォルトの名無しさん
08/05/23 15:49:00
>>290
はずれ

293:デフォルトの名無しさん
08/05/23 15:51:19
意味が通じるなら、それでおk。

294:デフォルトの名無しさん
08/05/23 15:59:11
>>291
定着していません。
ほとんどの日本人はレバーと聞くと肝臓の事だと認識します。

295:デフォルトの名無しさん
08/05/23 16:05:50
取っ手(lever)と認識する人も居るよ


296:デフォルトの名無しさん
08/05/23 16:09:36
ReをReTryとかのReって解釈する人もいる

297:デフォルトの名無しさん
08/05/23 16:11:51
Win API ReBar レバー 11件
Win API ReBar リバー 100件

Yahoo

298:デフォルトの名無しさん
08/05/23 16:13:41
↑全角数字馬鹿

299:デフォルトの名無しさん
08/05/23 16:17:03
>>296
語源的には同じ

300:デフォルトの名無しさん
08/05/23 16:17:51
うーん、、、全角数字の時点で言い訳できないな

301:デフォルトの名無しさん
08/05/23 16:19:22
ほとんどの日本人はリバーと聞くと川の事だと認識します。

302:デフォルトの名無しさん
08/05/23 16:23:40
ReBarって書けばいいんだよ
カタカナ読みに拘ると面倒事になるだけだ

303:デフォルトの名無しさん
08/05/23 16:27:03
このスレで「リバー」だとriverよりはrebarだろう。
このスレで「レバー」だとliverやleverよりは「rebarのことなんだろうなぁ」だろう。

304:デフォルトの名無しさん
08/05/23 16:27:55
↑話を理解してない馬鹿

305:デフォルトの名無しさん
08/05/23 16:35:18
え?あれ取っ手付いてるからレバーなんだと思ってたよ
別モノだったのかw

306:デフォルトの名無しさん
08/05/23 16:44:39
URLリンク(msdn.microsoft.com)
では一応「リバー コントロール」でも他のページに見当たらない

307:デフォルトの名無しさん
08/05/23 16:44:40
BitBltやStretchBltで表示した画像が解像度を変更すると消えてしまい困っています。
WM_DISPLAYCHANGEでWM_PAINTを投げたりInvalidateRectを投げたりしましたが再描画されません。
SW_MINIMIZEとSW_NORMALを立て続けに投げる方法は表示される時とされない時があり駄目なようです。
どうすれば解像度変更直後にきちんと再描画出来るようになるのでしょうか。

308:デフォルトの名無しさん
08/05/23 16:52:59
おっ!質問きたぞ
雑談はこれまでだ

309:デフォルトの名無しさん
08/05/23 16:55:21
>>307
WM_PAINTで描画してるんだよな?
再描画されないことは無いと思うが、いったいどうやってんの?
再描画されないとは具体的にどうなんのの?
>WM_PAINTを投げたり
まあこれ見て怪しいのはわかるが。

310:デフォルトの名無しさん
08/05/23 17:01:56
InvalidateRectの後にUpdateWindow呼んでる?

311:309
08/05/23 17:02:18
一応書いておくけど
WM_PAINTを投げたくなったら、
InvalidateRect → UpdateWindow のコンボで。

InvalidateRect自体は投げてるみたいだから、この場合は解決策じゃないけど。

312:デフォルトの名無しさん
08/05/23 17:10:39
>>311
RedrawWindowにRDW_UPDATENOWを指定すればいい

313:デフォルトの名無しさん
08/05/23 17:17:34
なんちゃってAI作った人いる?

314:デフォルトの名無しさん
08/05/23 17:21:43
>>313
const char* msg[] = {
"↑話を理解してない馬鹿",
"知らないならレスしないでください",
"それぐらい察してほしかったってのが本音"
};
for(;;) post2ch(msg[rand()%3]);

315:デフォルトの名無しさん
08/05/23 17:32:59
>>313
スレタイ

316:307
08/05/23 18:17:10
InvalidateRect(hWnd, NULL, FALSE);
UpdateWindow(hWnd);
RedrawWindow(hWnd, NULL, NULL, RDW_UPDATENOW);
これらを投げても駄目でした。

画像のみを表示するソースはウィンドウを透過すれば(SetLayeredWindowAttributes)特に何もしなくても表示されました。
透過しないとやはり何も表示されません。

CreateWindowExでボタン、ステータスバー、ツールチップを追加している問題のソースではこれらコントロールは再描画されるのに画像が表示される場所はまるで非表示にしたかのように背景色のみになっています。
もう訳が分からないですo...rz。

もしかしたらウィンドウプロシージャの書き方に問題があるのかも知れませんが、以下の各caseのbreak;をreturn 0;に書き換えると何故かウィンドウの挙動も表示もおかしくなり、CPU使用率も100%になってしまいます。
因みに今回の場合はreturn 0;に書き換えても症状は改善しません。

LRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp)
{
switch (msg)
{
(中略)
case WM_PAINT:
SetStretchBltMode(hDC, STRETCH_DELETESCANS);
StretchBlt(hDC, 10, 10, 256, 192, hCompatDC, 0, 0, bmp.bmWidth, bmp.bmHeight, SRCCOPY);
break;
(中略)
}
return DefWindowProc(hWnd, msg, wp, lp);
}

317:デフォルトの名無しさん
08/05/23 18:25:29
>>316
・・・BeginPaintとEndPaintは・・?
hDCはどこからきたの?

318:デフォルトの名無しさん
08/05/23 18:28:02
やはり怪しかったのね

319:デフォルトの名無しさん
08/05/23 18:34:01
>>317が正解だな
的を射ている

320:デフォルトの名無しさん
08/05/23 18:44:10
WM_PAINTでBegin/EndPaint忘れって上にもあるし前スレにもあったな
いったい何を見て勉強してるんだ?

321:デフォルトの名無しさん
08/05/23 18:45:07
猫だろ。どうせ。

322:デフォルトの名無しさん
08/05/23 19:04:37
犬希望

323:デフォルトの名無しさん
08/05/23 19:18:07
WM_PAINTワンBeginPaintワンワン

324:デフォルトの名無しさん
08/05/23 19:19:40
MFC使えとまでは言わないけど、コンストラクタ・デストラクタでBegin/EndPaintをラップした
クラス程度は作っておくと便利よ。

325:デフォルトの名無しさん
08/05/23 19:27:38
それならOnPaintをオーバーライドするだけで描画できるクラスを作った方が遥かに便利

326:デフォルトの名無しさん
08/05/23 19:30:54
CpaintDC と OnDraw ですね

327:デフォルトの名無しさん
08/05/23 19:33:07
つうか今時MFCやWTLを使わずに素のWin32SDKでアプリ作る奴なんているの?
死ぬほど面倒じゃん

328:316
08/05/23 19:39:21
static PAINTSTRUCT ps;
(中略)
BeginPaint(hWnd, &ps);
SetStretchBltMode(hDC, STRETCH_DELETESCANS);
StretchBlt(hDC, 10, 10, 256, 192, hCompatDC, 0, 0, bmp.bmWidth, bmp.bmHeight, SRCCOPY);
EndPaint(hWnd, &ps);
return 0;

にしたら正常に表示されました。本当にありがとうございました。
一見正常に動いていたのはDefWindowProcに処理を回していたからなんですね。

因みに参考にしたサイトはこちらです。

Programing Place
URLリンク(www.geocities.jp)

>>324-327
VC++2008EEでC及びC++の勉強中です。
まだC++はまともに使えないのでクラスの使い方も(VB.NETやC#はともかく)分かりません。
今後の課題としてクラスの勉強を始めようと思います。

329:デフォルトの名無しさん
08/05/23 19:43:13
そのサイトにも、
>描画の処理を行うとき、必ずBeginPaint()とEndPaint()を使って、描画処理を挟み込む形を取っていましたが、これは必ずそうしなければなりません。
って書いてるじゃん

330:デフォルトの名無しさん
08/05/23 19:44:22
>>328
そこ、前スレにもトンデモサイトとして出てたよ
特にこれ
URLリンク(www.geocities.jp)


以下を次スレからテンプレ化キボン

●参考すべきでない所
Programing Place
URLリンク(www.geocities.jp)

331:デフォルトの名無しさん
08/05/23 19:44:23
>>328
志村!足りない!足りない!

332:デフォルトの名無しさん
08/05/23 19:45:32
と思ったら、BitBltのあたりでいきなりはしょってるなw

333:デフォルトの名無しさん
08/05/23 19:46:42
"Programing"の時点で糞確定だけどな

334:デフォルトの名無しさん
08/05/23 19:47:04
>>328
hDCはBeginpaintの戻り値かps.hdc 使う

335:デフォルトの名無しさん
08/05/24 06:15:24
本当の所、BeginPaintを必ず使わなければいけないという決まりはない。
ただ、これ一回の呼び出しで行われる処理内容を考慮すると、使わない理由が無いな。

336:デフォルトの名無しさん
08/05/24 07:17:06
>>330
それよりお勧めサイト書いてくれたほうがうれしい

337:デフォルトの名無しさん
08/05/24 07:52:52
>>336
英語版MSDN

338:デフォルトの名無しさん
08/05/24 10:56:51
調べても分からなかったので質問させてください
CreateMenuでよくアプリケーション上部にあるFile(F)とか表示(V)のようなメニュー作成しています。
メインウィンドウのサイズを変更したとき、Menuのサイズを変更しないようにしたいです。
メニューの横幅固定で。この場合、メニューサイズを固定するAPIか、メニューの構造体に横幅指定することができるとか
方法がありましたら、ご教示ください。よろしくおねがいします。

環境はVC + SDKです。

339:デフォルトの名無しさん
08/05/24 10:58:48
無理

340:デフォルトの名無しさん
08/05/24 11:35:06
ツールバーで代用するとか
苦労の割に見返りがサイズ固定だけって泣けるけど

341:デフォルトの名無しさん
08/05/24 11:44:03
標準と違う動きをするアプリって違和感があるよね。

342:338
08/05/24 11:48:09
単刀直入に言うと、ウィンドウサイズ変更時にメニューのちらつきをなくしたいです。
勉強中なので間違ってるかもしれないですが、CreateMenuで作成してもWNDCLASSEXで
wc.lpszMenuName=MAKEINTRESOURCE( IDR_MENU);登録にしても、
結局はメインウィンドウの再描画に巻き込まれる形になるので、ちらつきます。
Janeとかのメニューはどうやって実現してるのかなぁ。。

343:338
08/05/24 12:54:04
もうちょっと考えて見ます
お騒がせしました。

344:デフォルトの名無しさん
08/05/24 12:57:53
>>341
IEのメニューはツールバーで出来てるが
コマンドバーって呼ばれてる

WTLにCCommandBarCtrlってクラスがあるけどこれはバグが多すぎてあまり使えない

345:デフォルトの名無しさん
08/05/24 14:20:04
>>344
CCommandBarCtrlのバグって例えばどんな?

346:デフォルトの名無しさん
08/05/24 15:09:32
>>345
とりあえず致命的なのを2点ほど

メニューをクリックするとCommandBarにフォーカスを持って行かれる
→フォーカスを元に状態設定を行っていると正常に機能しなくなる

IEのようなReBar上で右クリックメニューを出すようなのを作っていると
メニューが出ているときにメニュー項目上で右クリックすると落ちることがある
→DoTrackPopupMenuに再入してしまうのが原因なので適当にフラグ立てて回避するしかない


Donut系ブラウザはこの辺のバグを回避するためにCCommandBarCtrlを使っていない
俺もこの辺のバグを回避するためにDonutのソースを参考にして自作した

347:デフォルトの名無しさん
08/05/24 15:10:10
>>338
>メインウィンドウのサイズを変更したとき、Menuのサイズを変更しない
??
ウインドウを小さくした時メニューがはみ出してもいいの?
変なアプリーw

348:デフォルトの名無しさん
08/05/24 15:15:16
サイズ固定でシェブロン出すのよくあるけど。

349:デフォルトの名無しさん
08/05/24 15:15:46
右端に >> を付けたいって事だろ
そういうのはコマンドバーって言うんだよっていうのが以後の流れ

350:デフォルトの名無しさん
08/05/24 15:40:07
APIの話では無いのでスレ違いだと思いますが
Windows XPで外部信号に対して±10mS程度以内で
応答を返すことは可能なのでしょうか?

351:デフォルトの名無しさん
08/05/24 15:51:28
エスパーじゃないしマイナスは厳しいんじゃないか。

352:デフォルトの名無しさん
08/05/24 16:26:25
え、-10ms以内で応答を返せないの?
近頃のWindowsは糞だなぁ

353:デフォルトの名無しさん
08/05/24 16:31:12
さすがのWINDOWSでも、時をかけるのは難しいんじゃないか?

354:デフォルトの名無しさん
08/05/24 16:53:26
待ってられない信号がある。

それはさておき、「何らかのインターネット接続が存在するかどうか」を知る方法はありますか?
今は自分のグローバルIPアドレスに対してpingを打っているのですが、激しく間違っている気がします。

355:デフォルトの名無しさん
08/05/24 16:58:33
それはすれ違いじゃないか?
ネットワーク相談室の方がいい気がする。。

356:デフォルトの名無しさん
08/05/24 17:05:24
Network Managementで接続を列挙するとか
wininetでonline/offlineをとるとか

357:デフォルトの名無しさん
08/05/24 17:31:55
wininet.dll が使えるなら(というか使えない環境のほうがレアだろうが)、
InternetGetConnectedStateEx だろう。

358:デフォルトの名無しさん
08/05/24 17:50:12
>>357
インターネット環境が無いと使えない某ソフトが確かそのAPIでチェックしてたような
勿論nopで埋めうわ何をするやmくぁwせdrftgyふじこlp

359:デフォルトの名無しさん
08/05/24 18:02:39
>>358
日本語でそっち関連の情報を提供してるとこある?
中国語とかならわんさかあるんだけど...

360:デフォルトの名無しさん
08/05/24 18:06:37
そんな物自分で勉強しろよ
スレ違いな上にグレーゾーンな事をここで聞くな馬鹿

361:デフォルトの名無しさん
08/05/24 18:09:26
>>359
英語を苦にしないならMSDN。
ていうか、なんで日本語版にはwininet関数が載ってないんだ。

362:デフォルトの名無しさん
08/05/24 18:22:47
昔はWinAPIの日本語ヘルプが付いてたのに、今やWin95時代から更新止まってる古い情報しか無いのはどうよ
そもそもMSKBですら最近は機械翻訳だらけだし、中国語とかの方が翻訳されてるなんておかしい

もう日本のIT技術者は世界から見捨てられてるという事?

363:デフォルトの名無しさん
08/05/24 18:23:14
>>350
デバイスドライバならともかく、
一介のアプリケーションで100%確実の保証は絶対無理だな。

364:デフォルトの名無しさん
08/05/24 18:24:59
>>362
おかげで、英語を読むことの抵抗感がなくなったから感謝しているw
日本のIT技術者はもっと世界に羽ばたけということだよ。

365:デフォルトの名無しさん
08/05/24 18:26:49
>>362
正解

366:デフォルトの名無しさん
08/05/24 18:32:43
まぁIMEが中国で開発されてるぐらいだから仕方ないか
日本のプログラマはもう用済みなんだろうな

367:デフォルトの名無しさん
08/05/24 18:39:15
英語も中国語もできる俺は勝ち組。



368:デフォルトの名無しさん
08/05/24 18:41:12
>>367
すぐにプログラマから足を洗って商売でも始めるんだ。

369:350
08/05/24 18:41:48
>>351-353
ですな~
信号を受けて50mS±10mSとかです。

皆さん親切だ。w



370:デフォルトの名無しさん
08/05/24 18:47:08
Windows上であるいじょう、確実な保障はできないが、
そのくらいの精度なら、大抵の環境で余裕だろ。

371:デフォルトの名無しさん
08/05/24 18:47:36
>>369
50±10ms ぐらいなら可能なはず。
Windows のタイマの精度が 16ms ぐらいだから結構ギリだがな。
リアルタイム性を Windows に求めるのは少しつらいかも知れん。

372:デフォルトの名無しさん
08/05/24 18:48:52
そこでRTLinuxですよ、俺は使ったこと無いけど

373:デフォルトの名無しさん
08/05/24 19:16:19
Windowsで精度を求めるなら。
URLリンク(msdn.microsoft.com)(VS.85).aspx

374:デフォルトの名無しさん
08/05/24 19:34:05
ダイアログに関する質問です。
SS_BITMAPを指定してスタティックコントロールを作って画像を表示した場合、画像がウィンドウより大きいとはみ出しますが、StretchBlt()のように固定サイズ内での縮小表示は出来ますか。
事前に何処かで縮小処理を行ったビットマップを読むしかないのでしょうか。

375:デフォルトの名無しさん
08/05/24 19:38:28
>>374
つ SS_REALSIZECONTROL

XP以降でダイアログのビットマップやアイコンが潰れてる元凶

376:350
08/05/24 19:50:25
やはり10mSの精度は無理っぽいですね。
出来たとしても15mSくらいが限界なんでしょうな。

全然分ってないけど、デバイスドライバーにすればタイムスライスの
壁は越えられるのでしょうか。。

377:デフォルトの名無しさん
08/05/24 19:51:39
>>375
手書きでリソースファイルを修正したら出来ました、ありがとうございます。
ResEdit1.4.3のバグでSS_REALSIZECONTROLをtrueにしてもリソースファイルに反映されないのが原因だったようです。

378:デフォルトの名無しさん
08/05/24 20:04:34
CreateWindow関数って使われなくなったのですか?
何故か、自動的にCreateWindowExAと解釈されてしまうのですが……。

ちなみに環境はVC++2008ExpOSはXP使ってます。

379:デフォルトの名無しさん
08/05/24 20:08:38
すみません自己解決しましたorz
マクロのコンパイルエラーだった。

380:デフォルトの名無しさん
08/05/24 20:21:55
>>376
タイムスライスの壁は越えられないこともないが下手な実装だと Windows 全体が不安定になるわな。
デバイス側から割り込みをかけられる機構があるなら手っ取り早い。(割り込みはほぼ最大優先度で処理されるため。)

381:デフォルトの名無しさん
08/05/24 20:51:01
Webダウンローダー等でダウンロードしたファイル名に
?等が入っている場合があるのですが、これは問題ないのですか?

382:デフォルトの名無しさん
08/05/24 20:58:11
>>381
問題あり
ウイルスに感染していると自動的に?等が入る仕組みなので中身を見る前に捨てましょう

383:デフォルトの名無しさん
08/05/24 21:02:10
>>382
例えば
.cgi?name=abcd等では?

384:デフォルトの名無しさん
08/05/24 21:07:51
せめてAPIの質問してくれよ

385:デフォルトの名無しさん
08/05/24 21:12:11
>>384
ファイルの新規作成では?使えないのに
CreateFileが?使えるのは何故ですか?

386:デフォルトの名無しさん
08/05/24 21:14:13
>>376
> Windows XPで外部信号に対して
今実装してる方法では、どうやって信号取得してるの?
もうちょっと話が具体的にならないと、これ以上アドバイスできない。

387:デフォルトの名無しさん
08/05/24 21:14:41
>>385
Explorerのバグだろ
".htaccess"とかも作成できない

388:デフォルトの名無しさん
08/05/24 21:17:57
>>387
バグですか、
?をファイル名に含むファイルをプログラムが生成する事に何か問題はありますか?

389:デフォルトの名無しさん
08/05/24 21:19:35
そんな事知るか
MSに聞け

390:デフォルトの名無しさん
08/05/24 21:20:20
>>389
あなたの予想で構いません

391:デフォルトの名無しさん
08/05/24 21:21:51
>>387
それについてはこういう理由
URLリンク(blogs.msdn.com)

392:デフォルトの名無しさん
08/05/24 21:25:46
>>391
ありがとうございます。

393:デフォルトの名無しさん
08/05/24 21:34:14
>>391
以前その記事を見てバグだと確信した

・拡張子を表示しない設定にしていても".txt"のようなファイル名は拡張子含めて表示すればいい
・拡張子を表示する設定にしていれば".txt"のようなファイルを作成できるようにすればいい
・そもそも拡張子を表示しない設定なんて不要 (セキュリティ的に)

選択肢は色々あるし、.htaccessなんて比較的PCに詳しくない人間でも作る時代なのに
Win95以来から今に至るまで放置状態なんて開発者の傲慢だろ
自分でシェル拡張作れとか、もうアホかと

394:デフォルトの名無しさん
08/05/24 21:39:21
・そもそも拡張子でのファイル識別がアホ

395:350
08/05/24 21:39:23
>>386
未だ具体的な実装レベルの話にはなっていません。
Windowsで10mS応答は無理(?)なのでリアルタイム処理が必要な
部分は機器側で実装しないと無理~・・・のような話をしている段階です。

396:デフォルトの名無しさん
08/05/24 21:41:23
>>394
Macみたいにファイルの先頭にゴミ付けて識別するのもどうかと思う

397:デフォルトの名無しさん
08/05/24 21:41:52
この流れの中で質問するのは恐縮なのですが、「Wininet」を使用したFTP通信で困った状態になっています。

APサーバからファイルサーバ上の複数のFTPサイトに対して、ファイルをFTP PUTするサービスがあるのですが、
特定のFTPサイトだけ「550 access denied」になってしまいます。

ファイルサーバ上のFTPサイトは「書き込み:可」になっていますし、フォルダの権限も同様です。
新規ファイルのPUTなので上書きに失敗している訳でもありません。
使用しているユーザーは共通のものを使っているので、他のFTPサイトにPUTできることから、
権限は足りていると判断しています。でも、アクセス拒否エラーが発生してしまいます。
ファイルサーバを再起動しても改善しません。

このような場合、他にどの点を疑って調査すれば良いでしょうか?

398:デフォルトの名無しさん
08/05/24 21:41:52
いい加減ファイルシステムにファイルタイプ情報持たせろよ

399:デフォルトの名無しさん
08/05/24 21:42:41
>>396
いつの話?

400:デフォルトの名無しさん
08/05/24 21:44:26
いまどき拡張子でタイプ判別なんてうんこプログラム書いてる奴はいないだろ…


401:デフォルトの名無しさん
08/05/24 21:45:27
>>400
つExplorer

402:デフォルトの名無しさん
08/05/24 21:47:09
>>398
Vistaで間に合わなかったアレか

403:デフォルトの名無しさん
08/05/24 21:49:16
>>393
いやちょっとまて、一体どこを読んだらそういう解釈になるんだよ。
そりゃまあ、世の中には.htaccessぐらい余裕で書ける婆ちゃんがいるかもしれんさ。
でもな、世の中はそーじゃねーんだよ。
だから一番バカに合わせておくんだ。

404:デフォルトの名無しさん
08/05/24 21:49:44
間に合わなかったっつーか、Windowsの機能として入れる計画は無くなった。

405:デフォルトの名無しさん
08/05/24 21:54:14
>>401
いやMS以外で

406:デフォルトの名無しさん
08/05/24 21:54:27
>>403
バカはPCを使わなくていい
バカに合わせると使いづらくなるだけ
バカは紙と鉛筆で十分

407:デフォルトの名無しさん
08/05/24 21:55:39
バカにはTablet PCでも与えてとけばおk

408:デフォルトの名無しさん
08/05/24 21:56:41
カプセルPCでおk

409:デフォルトの名無しさん
08/05/24 22:03:45
>>405
Windowsのファイルシステム系APIを使うほぼ全てのアプリがそうじゃない?
バイナリフォーマットを扱うアプリであれば、最初に拡張子で選別して、次に中身を見るだろうけど。
(適切かつ安全に見ることができないアプリも多いが)

410:デフォルトの名無しさん
08/05/24 22:09:35
あ~もういいや

411:デフォルトの名無しさん
08/05/24 22:16:11
やいいうも~あ

412:デフォルトの名無しさん
08/05/24 22:18:00
あぃいおまぁ

413:デフォルトの名無しさん
08/05/24 22:21:45
>>398
NTFSなら副次ストリームとか使えるけど、
古いファイルシステムも捨てられない。
Windowsは互換性をけっこう気にするからな。

414:デフォルトの名無しさん
08/05/24 22:27:31
古いファイルシステムってFATの事を言いたいのか?
USBメモリやSD/CFカードではまだまだ現役バリバリだろ

415:デフォルトの名無しさん
08/05/24 22:30:02
>>378
CreateWindowとCreateWindowExだったら、
どっちでもいいときは好きなほうを使えばいい。

仮に、CreateWindowが実在したとしても、どうせ中でCreateWindowExを呼ぶだけ。
それだったらCreateWindowはヘッダでCreateWindowExに展開する今の方式なら、
システムDLLがCreateWindowの実装を省ける分サイズ削減できる。

416:デフォルトの名無しさん
08/05/24 23:24:53
>>415
大抵内部で~Exを呼んでる (LoadLibraryとか)
むしろマクロで済ませてるCreateWindowが特殊

417:デフォルトの名無しさん
08/05/24 23:50:21
>>395
10mS精度ぐらいならおおむねできるけど、ほかの処理で数百ミリ遅れることは多々ある。だからリアルタイムを現実的に無理。デバイスドライバでも同じ。
でもHALでリアルタイム実行させたり、windowsを仮想化させてリアルタイム実行させるるソフトがあるから、リアルタイムHALやRTXでググってみれれ


418:デフォルトの名無しさん
08/05/25 09:35:17
>>397
ほかのFTPソフトを使うとそのサイトにはうpできるんんか?

419:デフォルトの名無しさん
08/05/25 09:53:00
んんか?

420:デフォルトの名無しさん
08/05/25 10:01:00
できるんんか の検索結果 約 1,850,000 件
w

421:デフォルトの名無しさん
08/05/25 10:02:13
よく見たら一つ上のレスを真似しただけかな

実行させるるソフト
ググってみれれ

今時カナ打ちかよw

422:デフォルトの名無しさん
08/05/25 10:41:50
かな入力の方が日本語のタイピングは速い。

423:デフォルトの名無しさん
08/05/25 10:45:00
というのは間違い。

424:デフォルトの名無しさん
08/05/25 10:47:13
キーをタイプする回数が減るから事実。

425:デフォルトの名無しさん
08/05/25 10:51:25
かな入力じゃ10分間で5000タッチできる気がしない

426:デフォルトの名無しさん
08/05/25 10:56:24
それは慣れていないだけ。

427:デフォルトの名無しさん
08/05/25 11:07:29
まあどうせ俺なんか入力速度に脳が追いつかないからどうでもいいんだけどね

428:デフォルトの名無しさん
08/05/25 11:09:03
しかし日本語は読みから漢字に変換しなければならないので、
いくら読みがなを早く入力できたからといって、それほど早くはならない気がする。
完璧に変換してくれるIMEは存在しないし。

429:デフォルトの名無しさん
08/05/25 11:28:27
そこでT-Code

430:デフォルトの名無しさん
08/05/25 12:54:12
ライターじゃあるまいし日本語のタイピング速度なんてどうでもいいだろ
それともひまわりでプログラミングしてるのか?

431:デフォルトの名無しさん
08/05/25 12:57:08
日本語のレスに対する突っ込みだったから。

432:デフォルトの名無しさん
08/05/25 13:04:24
>>417=>>422=>>431って事でいいの?
とりあえず君がカナ入力マンセーなのは分かったからもういいよ

433:431 = 424 = 422;
08/05/25 13:07:11
>>432
違う。俺はローマ字入力。事実を伝えただけ。スレ違いなので終わる。

434:デフォルトの名無しさん
08/05/25 13:08:42
なんで怪しい日本語になるダヨ

435:デフォルトの名無しさん
08/05/25 13:14:17

/* ここまで雑談 */


436:デフォルトの名無しさん
08/05/25 13:15:51
>>433
431 = 424 = 422;
          ↑
こうやって反射的にセミコロンを付けてしまう事ってよくあるよねw

437:433
08/05/25 13:19:53
>>436
板を考慮して付けた。

438:デフォルトの名無しさん
08/05/25 13:23:08
もういいから

439:デフォルトの名無しさん
08/05/25 13:31:24
こういう空気読めない奴ってホントどこにでもいるな
リアルでも空気読めなくて周囲からウザく思われてるんだろうな

440:デフォルトの名無しさん
08/05/25 13:34:53
>>439
いい加減ウザイよ君

441:デフォルトの名無しさん
08/05/25 15:33:05
質問がないと暇を持て余すんだろう
質問来ても、その調子なら邪魔以外の何者でもないが・・・

442:デフォルトの名無しさん
08/05/25 16:37:35
int 21Hとか割り込み命令って今でも使える?
Win32API使わないとだめ?

443:デフォルトの名無しさん
08/05/25 17:05:30
試せば分かるだろ

444:デフォルトの名無しさん
08/05/25 18:55:52
>>442
DOSアプリからなら使えるよ。32ビットアプリだとクラッシュ。
9x系だと確か一部のものはクラッシュしなかったような?
動かないだろうけど

445:デフォルトの名無しさん
08/05/25 19:09:09
>>444
後半二行の不確かな情報は要りません

446:デフォルトの名無しさん
08/05/25 20:43:34
>>444
DOSアプリのみということは、
Win32 コンソールアプリではだめなのか
なるほど

447:デフォルトの名無しさん
08/05/25 20:46:32
Invalid icon format ってエラーが出るんですけど、アイコンの絵そのものが
問題あるってことですよね?XPのペイントで書いてみたのが問題ですか?



448:デフォルトの名無しさん
08/05/25 20:48:03
アイコンって、大きさ正方形だったかサイズ固定だったか
決まりがあったような気がする。

449:デフォルトの名無しさん
08/05/25 20:50:56
>>447
icon≠windows bitmap
そもそもフォーマットが違います
アイコンエディタを使いましょう

450:デフォルトの名無しさん
08/05/25 20:57:13
>>448
それはgoogle検索で出てきたので、32×32にしてます。
>>449
そうなんですか、分かりました。

皆さんありがとうございました。

451:デフォルトの名無しさん
08/05/25 21:23:51
そういえばVistaのPNG形式アイコンがあるとRC.EXEがエラー吐いたりしたけど
最近のバージョンのRC.EXEでは直ってるの?

452:デフォルトの名無しさん
08/05/25 21:48:19
>>444
9xで、32ビットアプリケーションからファンクションコールをするとしたら、
DeviceIoControlを呼ぶのが正式な手段。全部使えるわけではないけど、
ディスクを直接読み書きするときとかに使った。

453:デフォルトの名無しさん
08/05/25 22:00:33
9xの話を今頃されてもオッサン乙で終わるのだが

454:デフォルトの名無しさん
08/05/26 00:19:42
ウィンドウプロシージャを差し替えたいんだけど、
なんかできないんだよね。

SetClassLong(hWnd, GCL_WNDPROC, (LONG)AnotherMyWindowProc);
この関数を用いる上でなんか注意点ある?
マウスやアプリのアイコン変更も反映されないんだけど。

455:デフォルトの名無しさん
08/05/26 00:33:58
注意点 msdnをよく読む事

456:デフォルトの名無しさん
08/05/26 00:43:49
>>453
そのオッサンのやりとりにお前が絡む必要はないのに、何が乙なんだ

457:デフォルトの名無しさん
08/05/26 00:45:43
俺の家の玄関に「硫化水素発生中」って貼った奴、氏ねよ

458:デフォルトの名無しさん
08/05/26 01:04:43
そのネタはもう旬を過ぎてるよ

459:デフォルトの名無しさん
08/05/26 01:06:41
まじでか

460:デフォルトの名無しさん
08/05/26 01:09:56
>>454
わろた

461:デフォルトの名無しさん
08/05/26 01:17:49
わらっつぁらめぇー

462:454
08/05/26 01:24:30
URLリンク(homepage1.nifty.com)
ここみてる限り間違ってないと思うんだがナー

463:デフォルトの名無しさん
08/05/26 01:33:14
>>462
それは良かったですね

464:デフォルトの名無しさん
08/05/26 01:37:50
とってもよかったでーす^^^;


465:デフォルトの名無しさん
08/05/26 01:53:01
>>462
赤字で書いてるとこと違う事をしてるのは、分かっててやってるの?
変更したクラスから新しくウィンドウを作るってんなら、それでいいんだけど。

466:デフォルトの名無しさん
08/05/26 11:46:16
どこをどう見ると間違ってないんだよw

SetWindowLong、SetWindowLongPtr、SetWindowSubclass使えよ

467:デフォルトの名無しさん
08/05/26 11:53:56
間違い探しかよw
ぱっと見てスルーしてたけど、SetClassLong使ってたのか

468:デフォルトの名無しさん
08/05/26 12:56:47
>>451
VS2005なら、Windows SDK6.0だか6.1入れてCLやRCをそちら付属品を
使うようにすればVista圧縮形式に対応できる。
VS2008はRCでもMSDEVリソースエディタでも標準サポート

469:デフォルトの名無しさん
08/05/26 15:43:24
>>452
9xだと本当にDOSが動いてるからね。
NTだと単なるエミュだし

470:デフォルトの名無しさん
08/05/26 15:52:02
>>468
さんくす
RC.EXEだけでも入れ替えておけばビルド後のイベントでゴニョゴニョする必要は無さそうだw
IDEのリソースエディタでアイコンなんて作らないからそっちはまぁいいや

471:デフォルトの名無しさん
08/05/26 16:26:48
>>470
VS2005だと、圧縮形式アイコンが含まれる.rcファイルがMSDEVで開けないんで注意

472:デフォルトの名無しさん
08/05/26 16:35:26
VC2005はmsdevじゃなくてdevenvだったと思うが。
そんな俺はVC6ユーザー

473:デフォルトの名無しさん
08/05/26 17:01:52
URLリンク(imepita.jp)
このような四角いボタンってどうやって作るんですか?

474:デフォルトの名無しさん
08/05/26 17:03:04
言い忘れました。×ボタンです。

475:デフォルトの名無しさん
08/05/26 17:09:14
クローズボタンのことが聞きたいのかオーナードローのボタンのことが聞きたいのか

476:デフォルトの名無しさん
08/05/26 17:25:53
1. Toolbar を作る
2. ImageList を作る
3. [×] のビットマップを作る
4. 3. のビットマップを 2. の ImageList に追加する
5. ImageList を Toolbar にセットする
6. Toolbar に 3. のビットマップを持つボタンを追加する

477:デフォルトの名無しさん
08/05/26 18:08:23
指定したiniファイルのキーを削除するapiを教えてください

478:デフォルトの名無しさん
08/05/26 18:08:57
やだ

479:デフォルトの名無しさん
08/05/26 18:55:43
WritePrivateProfileStringで
lpAppNameにセクション名
lpKeyNameにキー名
lpStringにNULL
lpFileNameにiniファイルのパスを指定すると
指定したセクション内のキーが消える

480:デフォルトの名無しさん
08/05/26 19:04:01
>>479
まじっすか^^
WritePrivateProfileStringで値をNULLにすると消えるんですね
これは知らなかった。ありがとうございます!

481:479
08/05/26 19:04:52
ってかMSDN読めよ

482:デフォルトの名無しさん
08/05/26 19:05:09
MSDNも読まずにWin32APIを使おうとする奴の気が知れない

483:デフォルトの名無しさん
08/05/26 19:05:36
つーか引数どうやって知ったのかw
そこに説明もあると思うんだがなあ

484:デフォルトの名無しさん
08/05/26 19:33:34
MSDNなんて読まなくていい
ここで質問するだけで丁寧な解説が日本語で得られる
お人好しな人間ほどうまく扱えば便利なものは無い


というのが俺の妄想

一応言っとくが俺はちゃんとMSDNで調べる派だからな

485:デフォルトの名無しさん
08/05/26 19:36:57
俺みたいに嘘を教える奴も居るから気をつけないと

486:デフォルトの名無しさん
08/05/26 19:40:39
俺みたいにかく乱する奴もいるからry

487:デフォルトの名無しさん
08/05/26 19:45:04
お前ら必死でワロタ

488:デフォルトの名無しさん
08/05/26 20:31:16
VC.net2003 + SDKで、ImageList使える?
ビルドは通るが、CreateWindowExでウィンドウ作成した時点で、'hoge, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' から
型 '_IMAGELIST' を読み込めません。って出て落ちるんだけど・・・

489:デフォルトの名無しさん
08/05/26 20:37:28
DiskcopyコマンドってどういうAPI使ってフロッピーに出力してるの?
このコマンドに限らずブート領域を書き込めるのって同じやり方だと思うんだけぢ
少なくともfoutやCopyFileではなさそう。

490:デフォルトの名無しさん
08/05/26 20:39:08
> 思うんだけぢ
どこの方言でぢか?

491:デフォルトの名無しさん
08/05/26 20:43:52
アマゾン地方の方言が出てしまいました

492:デフォルトの名無しさん
08/05/26 20:47:15
DeviceIoControlとかじゃないの
知らんけど

493:デフォルトの名無しさん
08/05/26 20:55:32
>>489
DDKを見ましょうね。

494:デフォルトの名無しさん
08/05/26 21:04:43
やだ

495:デフォルトの名無しさん
08/05/26 23:06:57
>>489
NTならCreateFileで"\\\\.\\A:"のようにすると生のドライブを開ける。SDKにも書いてある。
9xなら>>452。KB125712やKB174569など。

496:デフォルトの名無しさん
08/05/26 23:10:48
あした試してみよう

497:デフォルトの名無しさん
08/05/26 23:27:50
もうすぐ明日だろ

498:デフォルトの名無しさん
08/05/26 23:56:37
関数を動的に作ってウィンドウプロシージャとして渡す事ってできないんですか?

クラスのメンバ関数をウィンドウプロシージャにできないのが、
理屈ではよくわかるんですけど、なんか納得できなくてw
static使って場合分けするのもなんか反則的というか、やりたいことと違う気がして…
クラスのコンストラクタで関数を動的に作ってコントロールのプロシージャとして使い、
デストラクタでコントロールは期すると共に関数も破棄できないかなぁと。


…ゴメンナサイ、なんかもう投げやりです。

499:デフォルトの名無しさん
08/05/27 00:06:12
グローバル関数でのプロシージャで
各クラス内の自作プロシージャにそれぞれ処理を割り振ったりすれば良いんじゃない?

500:デフォルトの名無しさん
08/05/27 00:09:06
つーか自分でラッパー書けばいいだけじゃね

501:デフォルトの名無しさん
08/05/27 00:10:07
僕ハッカー!!!

502:489
08/05/27 00:11:11
CreateFile
DeviceIoControl
WriteFile
でなんかフロッピーに出してるのは判った
しかしこの方法でフロッピーの中にファイルを作る方法がわからなう

503:デフォルトの名無しさん
08/05/27 00:13:47
FAT32の仕組みでも覚えろ

504:デフォルトの名無しさん
08/05/27 00:14:44
>>498
URLリンク(web.archive.org)
ようするに、静的メンバ関数の中から
何らかの方法でウィンドウに対応するオブジェクトを得て、
そのオブジェクトの非静的メンバ関数に処理を渡せばいい。

ウィンドウクラスの場合、次のようなものを使って
オブジェクトへのポインタを保存する例が多い。
Get/SetProp
Get/SetWindowLongPtrとウィンドウクラスごとの追加データ
Get/SetWindowLongPtrとGWLP_USERDATA

ちなみに、ATLは本当に動的に関数を作って対処している。
URLリンク(hp.vector.co.jp)



505:デフォルトの名無しさん
08/05/27 00:16:02
>>502
逆に、ファイルがある状態のフロッピーディスクを
吸い出して中身を眺める、もちろんFATの構造の解説と一緒に。

506:デフォルトの名無しさん
08/05/27 02:10:13
アプリケーションへのアイコン設定は、
検索で調べると必ず .rc への記述方法が紹介されてますが、
.rc を経由せずに .cpp のプログラムのみで設定って出来るんでしょうか?
よろしくお願い致します。

507:デフォルトの名無しさん
08/05/27 03:17:45
>>502
何がしたいのかよくわからんが
フロッピーの中にファイルを作るのならばCreateFileでいいと思うが。
diskcopyだったらセクタを全部コピーすればいい

508:デフォルトの名無しさん
08/05/27 07:09:57
あるウィンドウがHWND_TOPMOSTで最善面になっているかどうかを判断するにはどうすればいいのでしょうか?

509:デフォルトの名無しさん
08/05/27 07:58:26
GetWindowLong(hwnd, GWL_EXSTYLE) & WS_EX_TOPMOST

510:デフォルトの名無しさん
08/05/27 08:25:20
>>504
atlthunk.cppが凄い
てかこんなのMSの中の人でないと書けないだろw

511:デフォルトの名無しさん
08/05/27 08:45:38
書ける奴はいくらでもいるだろうが、実際に、書こう思う奴は、それほどいない。
MFCはHWNDとベースクラスへのポインタを、
いわば、std::map< HWND, Hoge >的なもので管理していて、メッセージが来るたびに検索してると聞いたが。

512:デフォルトの名無しさん
08/05/27 09:33:10
>>511
実際に中身を見てから言って欲しいね

513:デフォルトの名無しさん
08/05/27 09:46:49
コード生成はWindowsより前なら常套手段だから昔の人なら楽勝

514:デフォルトの名無しさん
08/05/27 09:52:23
そんな話はしていない
いいから当該ソースを見ろ

515:デフォルトの名無しさん
08/05/27 10:24:54
WinMainからDialogBoxでモーダルダイアログを作成しております。
DialogProc内から例外をthrow(あるいはRaiseException)したところ、
WinMainで正常にcatch出来ました。

ところがDialogProcからさらに孫ダイアログを作成し、
孫ダイアログのDialogProc内から例外をthrowしたところ、
子ダイアログのDialogProcでcatch出来たのですが、
return後にAccess violationで落ちてしまいました。

どうすればreturn後に処理を続行できるのでしょうか?

516:デフォルトの名無しさん
08/05/27 10:27:53
長くて恐縮ですがソースを貼らせて頂きます。
INT_PTR CALLBACK proc2(HWND wnd, UINT msg, WPARAM w, LPARAM) {
 switch (msg) {
  case WM_INITDIALOG: return TRUE;
  case WM_COMMAND:
   switch (LOWORD(w)) {
    case IDOK:
     EndDialog(wnd, LOWORD(w));
     throw std::exception("HOGE!"); // 例外をthrow
    case IDCANCEL: EndDialog(wnd, LOWORD(w)); return TRUE;
   } break; } return FALSE;
}
INT_PTR CALLBACK proc1(HWND wnd, UINT msg, WPARAM w, LPARAM) {
 switch (msg) {
  case WM_INITDIALOG: return TRUE;
  case WM_COMMAND:
   switch (LOWORD(w)) {
    case IDOK:
     try {
      DialogBox(GetModuleHandle(0), MAKEINTRESOURCE(IDD_2), wnd, proc2);
     } catch (const std::exception&) {}
     return TRUE; // return後にAccess violation
    case IDCANCEL: EndDialog(wnd, LOWORD(w)); return TRUE;
   } break; } return FALSE;
}
int WINAPI _tWinMain(HINSTANCE, HINSTANCE, LPSTR, int) {
 try {
  DialogBox(GetModuleHandle(0), MAKEINTRESOURCE(IDD_1), 0, proc1);
 } catch (const std::exception&) {
 } catch (...) {} return 0;
}

517:デフォルトの名無しさん
08/05/27 10:44:00
>>515
C++以外のスタックフレームを飛び越えるthrow~catchって
頭の悪いlongjmpと同じだと思うがどうか

518:デフォルトの名無しさん
08/05/27 11:01:23
文字列の"123.45"をfloatに変換するAPIを教えてくだせえ

519:デフォルトの名無しさん
08/05/27 11:07:35
なんでわざわざAPI使うん?

520:デフォルトの名無しさん
08/05/27 11:11:36
wsprinf があるんだから wsscanf もあるにちがいないw

521:デフォルトの名無しさん
08/05/27 11:13:22
atofの返値がfloatじゃなくてdoubleだからって言いそうな気がする。

522:デフォルトの名無しさん
08/05/27 11:17:36
いやdoubleでもいいからさっさと教えろよ
どうせ知らないだろーけど


523:デフォルトの名無しさん
08/05/27 11:36:08
VarR4FromStr
VarR8FromStr

524:デフォルトの名無しさん
08/05/27 12:23:01
>>520
wsscanfならMSのFTP鯖にソースが置いてある
Win16時代の物みたいだから今でも使えるかどうかは知らん

525:デフォルトの名無しさん
08/05/27 12:30:58
crtdll.dllからscanfをインポートして使う・・・ってのはAPIの範疇というと苦しいか?

526:デフォルトの名無しさん
08/05/27 12:52:43
msvcrt.dllならいいんじゃね

527:デフォルトの名無しさん
08/05/27 13:07:36
crtdllとかmsvcrtにあるprintfとかscanfって_stdcallじゃなくて_cdeclでいいんだよね?

528:デフォルトの名無しさん
08/05/27 14:28:31
wsprintfもcdeclだろ
可変長なのにどうやって呼び出し先でスタックポインタを戻せるんだよ

529:デフォルトの名無しさん
08/05/27 15:10:26
うるせークズ

530:デフォルトの名無しさん
08/05/27 15:13:58
>>528
キモいよ

531:デフォルトの名無しさん
08/05/27 15:14:00
可変長のはともかく、strcpyとかもCDECLでいいんだろうか?

532:デフォルトの名無しさん
08/05/27 15:16:09
試せばいいだろハゲ

533:デフォルトの名無しさん
08/05/27 15:23:22
そんなの関係ねーだろクズが

534:デフォルトの名無しさん
08/05/27 15:31:18
関係ねー事聞くなカス

535:デフォルトの名無しさん
08/05/27 15:35:03

            ノ
           (゚Д゚)
           ( (7
           < ヽ

536:デフォルトの名無しさん
08/05/27 15:38:25
>>531みたいなのは実際試した場合間違っていても動いちゃうから困りもの

537:デフォルトの名無しさん
08/05/27 15:44:25
>>535
なんだその態度は!!

538:デフォルトの名無しさん
08/05/27 16:42:51
>>536
デバッグビルドなら呼び出し後にchkstkでESPがチェックされるから大抵気付く

539:デフォルトの名無しさん
08/05/27 18:25:05
FindWindow関数によってハンドルを調べたウィンドウを強制的に移動させるにはどうしたらよいでしょうか。
SendMessage関数でWM_MOVEを送っても移動しないことがあります。

540:デフォルトの名無しさん
08/05/27 18:26:36
WM_MOVEは動いた後に送られてくるメッセージなのに
それで動くウインドウがあるのか?

541:デフォルトの名無しさん
08/05/27 18:28:35
正しくはどのメッセージを送ればよいのでしょうか?


542:デフォルトの名無しさん
08/05/27 18:29:27
>>541
MoveWindow 関数で

543:デフォルトの名無しさん
08/05/27 18:30:30
ありがとうございます。

544:デフォルトの名無しさん
08/05/27 18:32:30
SetWindowPosとかもあるし、好きなので。

545:デフォルトの名無しさん
08/05/27 19:17:01
>>540
WM_SIZEを送ると動くウィンドウならあるよ

546:デフォルトの名無しさん
08/05/27 19:29:00
動かないウィンドウもあるってことですね。

547:デフォルトの名無しさん
08/05/27 19:49:39
>>517
遅レスすいません。
プロシージャ内で気軽にSTLなどを使いたかったのですが、邪道だったでしょうか・・・。
とりあえずプロシージャをreturnする前に全てcatchする方向で再考してみます。

548:デフォルトの名無しさん
08/05/27 19:50:20
STLが○| ̄|_にみえたのは俺だけですか?

549:デフォルトの名無しさん
08/05/27 19:53:30
>>548
面白くないよ

550:デフォルトの名無しさん
08/05/27 20:02:12
確かDispatchMessageを例外捕捉しとくとウィンドウ内部の例外が捕まえられたような

551:デフォルトの名無しさん
08/05/27 20:07:35
>>549は大爆笑して悔しかったんだろうなぁ

552:デフォルトの名無しさん
08/05/27 20:09:17
そもそもAPIから呼ばれるコールバック関数内で例外を投げるなんてアホとしか思えない

553:デフォルトの名無しさん
08/05/27 20:09:49
>>548=>>551
はいはいわろす

554:デフォルトの名無しさん
08/05/27 20:11:58
>>535,537
ワロタw

555:デフォルトの名無しさん
08/05/27 20:41:01
>>550
VC++ではC++例外を構造化例外で実装してるようだから捕まえられるかもしれないけど
C++言語的には未定義動作だからやめた方がいい

556:デフォルトの名無しさん
08/05/27 20:56:03
未定義とか不定とかどうでもいい
今時VC++以外でWin32開発してる奴の方が悪い

557:デフォルトの名無しさん
08/05/27 20:57:48
VCなんてもう終わってるだろうがw

558:デフォルトの名無しさん
08/05/27 21:27:35
終わってません
というか終わりません

559:デフォルトの名無しさん
08/05/27 22:08:58
MSではVBについで売れてる言語製品だしな

560:デフォルトの名無しさん
08/05/27 22:13:15
でも、そのVB6も来月で...

561:デフォルトの名無しさん
08/05/27 22:13:38
何その時代錯誤

562:デフォルトの名無しさん
08/05/27 22:39:04
俺も516みたいにWinMainにcatch書くことはあるけど、
その場合はエラーログ書いたりメッセージ出したりして、
とっととExitProcessするだけだな。

563:デフォルトの名無しさん
08/05/28 11:16:09
VBwwwwwwwwwwwwwwwwwwwwww

564:デフォルトの名無しさん
08/05/28 18:11:40
Visual Baka

565:デフォルトの名無しさん
08/05/28 18:21:52
violence bokan

566:デフォルトの名無しさん
08/05/28 19:41:40
>>564
C、C++に挫折した馬鹿しか使わない言語という事ですね?

567:デフォルトの名無しさん
08/05/28 20:34:14
int wmain()
{
HMODULE hModule;
HBITMAP hBitmap;
int count = 0;
std::wcout.imbue(std::locale("japanese"));
while (1)
{
hModule = LoadLibrary(L"hoge.exe"); //単一で数MBのBMPリソースのあるファイル
hBitmap = LoadBitmap((HINSTANCE)hModule, L"#200"); //そのリソース番号
if (!hBitmap)
{
FreeLibrary(hModule);
std::wcout << L"画像読み込み失敗" << std::endl;
return 1;
}
FreeLibrary(hModule);
count++;
std::cout << count << std::endl;
}
return 0;
}

大した回数(自分の環境では45回)も行かない内に画像リソースの読み込みに失敗します。
原因は何でしょうか。
環境はWinXP Home SP3、VC++2008EEです。
上記はあくまで耐久テスト用ですが、実際のソフトも仕様上ファイルのロード→アンロード回数は予測出来ません。

568:デフォルトの名無しさん
08/05/28 20:43:12
>>567
MSDNライブラリでLoadBitmap引いたらちゃんと注意書きがあるから嫁。

569:デフォルトの名無しさん
08/05/28 20:43:21
>>567
DeleteObject(hBitmap)してないからでは?

570:デフォルトの名無しさん
08/05/28 21:05:12
NT系ならDeleteObjectしなくても約10000回Loadできるはずだが

571:デフォルトの名無しさん
08/05/28 21:24:59
なんでできるの?画像がたとえば4MBだとして、500も読めば
アプリの仮想アドレス空間が枯渇するぜ?

572:デフォルトの名無しさん
08/05/28 21:27:54
外からウィンドウ内にカーソルを持って来ると、大きさ変更するときの ←→ の
形のままで普通のカーソルの形に戻りません。
CreateWindowEx、WS_OVERLAPPEDWINDOW 以外に何かいるんですか?

573:デフォルトの名無しさん
08/05/28 21:29:04
GetWindowLong, SetWindowPos 等で失敗すると 0 が返る関数は
製作者が引数に渡す値をしくじった時に失敗するのは当然ですが
絶対に動作するはずの引数で、OSが何かしらの問題で失敗する事ってありますか?
他人が書かれているコードを見ても、成功する事が前提で書かれているものばかりで問題ないのか疑問です
このような関数が失敗する時は、OSが動いているのも不思議なくらいの状態で いつOSが止まってもおかしくない状況なので
アプリケーションで取得できなかった値を使用して不具合が出るよりOSの方が重症なのでエラーチェックを行っていないという事なのでしょうか?
誰か詳しい方 教えてください

574:567
08/05/28 21:33:00
回答ありがとうございます。
耐久テストのコードではその方法で解決しました。

実際のコードはhBitmapをウィンドウプロシージャのスタティックなローカル変数として宣言し、メッセージ処理先(LBN_SELCHANGE)で画像リソースを呼び出しています。
これを止めてメッセージの処理先で
static HBITMAP hBitmap;
と宣言したら以下のコンパイルエラーが出てしまい、どうにも出来ません。

error C2065: 'hBitmap' : 定義されていない識別子です。

575:デフォルトの名無しさん
08/05/28 21:35:28
>>572
WNDCLASS の hCursor にカーソルを設定する
あるいは WM_SETCURSOR メッセージで SetCursor を呼びカーソルを設定する

576:デフォルトの名無しさん
08/05/28 21:42:58
>>575
ありがとうございました。

577:デフォルトの名無しさん
08/05/28 21:43:16
>>574
Win32API以前の問題だ。
自分でなんとかしろ。

578:デフォルトの名無しさん
08/05/28 22:04:56
>>577
ダイアログに画像を表示したらDeleteObject()しても良かったんですね…。
VB.NETで同じようなコードをBitmapオブジェクトで行ったらエラーが出たのでWin32APIでもそうだと勘違いしていました。
C++でGUIアプリを作り始めてまだ1週間ですが、少し背伸びし過ぎました。

579:デフォルトの名無しさん
08/05/28 22:05:28
C言語すら禄に理解してない癖に何が耐久テストだよ

580:デフォルトの名無しさん
08/05/28 22:07:06
なんだVisual Bakaプログラマだったのかw

581:デフォルトの名無しさん
08/05/28 22:37:55
>>579,580
罵るしか能の無い奴は消えろ


582:デフォルトの名無しさん
08/05/28 22:45:51
いやです

583:デフォルトの名無しさん
08/05/28 22:47:12
それぐらいしか楽しみがないんだろうから許してやってもいいんじゃ

584:デフォルトの名無しさん
08/05/28 22:50:05
つうか罵られるのが嫌なら2ちゃんで質問しなければいいのでは

585:デフォルトの名無しさん
08/05/28 23:01:23
当事者以外にも罵り文を見て不快に思う人がいるだろう

586:デフォルトの名無しさん
08/05/28 23:02:54
不快に思うのが嫌なら2ちゃんに来なければいいのでは

587:デフォルトの名無しさん
08/05/28 23:03:23
次にお前は「そんな奴が2ちゃん見るなよ」と言う。

って書こうと思ったのに

588:デフォルトの名無しさん
08/05/28 23:09:08
MSDNすら読まずに質問する奴なんて叩かれて当然

589:デフォルトの名無しさん
08/05/28 23:09:13
○○が嫌なら××しなければいいだろう

この言葉だけでは解決できない事がどれだけ溢れてると思ってるんだ

590:デフォルトの名無しさん
08/05/28 23:10:09
>>588
なら「MSDN読め」でいい、独り言を言うように罵り煽る奴はいらん

591:デフォルトの名無しさん
08/05/28 23:13:03
>>590
MSDN読め

592:デフォルトの名無しさん
08/05/28 23:21:30
それくらい察して欲しかったって言うのが本音。

593:デフォルトの名無しさん
08/05/28 23:25:43
話を理解してない馬鹿は知らないならそれぐらい察してレスしないでMSDN読んでほしかったってのが本音

594:デフォルトの名無しさん
08/05/29 03:55:50
VBwwwwwwwwwwwwwwwwwwwwww

595:デフォルトの名無しさん
08/05/29 08:10:11
複数スレッドから参照されるキューへの出入力で排他処理を行いたいのですが、
カウンタ1の無名セマフォとクリティカルセクションではどちらの使用が適切なのでしょうか?

596:デフォルトの名無しさん
08/05/29 08:30:48
クリティカルセクション

597:デフォルトの名無しさん
08/05/29 08:48:08
このスレの住人ってVBプログラマいないの?
まあVBだとネイティブなAPI使わない事が
多いだろうから少ないかもね

598:デフォルトの名無しさん
08/05/29 09:51:07
ドットロネットロに移行してるだろうし

599:デフォルトの名無しさん
08/05/29 10:14:39
>>596
ありがとうございます。

600:デフォルトの名無しさん
08/05/29 12:47:24
Virtual Batouスレですね

601:498
08/05/29 13:22:09
>>504
質問しといて、亀でゴメンナサイ…
やはりキーとなるデータ使ってマップみたいなことするのが一般的なんですね…

…動的に関数作れるのならちょっと試してみます
ありがとうございました。

602:デフォルトの名無しさん
08/05/29 14:34:11
マップつっても二分探索なら大して負荷にならんだろ

603:デフォルトの名無しさん
08/05/29 16:15:07
おまんこ

604:デフォルトの名無しさん
08/05/29 16:32:52
んがくく

605:デフォルトの名無しさん
08/05/29 21:53:12
画面を分割してそれぞれに違うものを表示するのは子ウィンドウを使っているのですか?
例えばIEだと、HPを表示する部分とお気に入り・履歴などが分かれていますが、あれも子ウィンドウを使っているのでしょうか?


606:デフォルトの名無しさん
08/05/29 21:56:59
>>605
そうだと思うよ。
SPYとかで調べてみたらいいんじゃないかな。

607:605
08/05/29 22:13:08
>>606
SPYを使えばそういうことまで分かるのですか
ダウンロードしてみようと思います
ありがとうございました

608:デフォルトの名無しさん
08/05/29 22:56:43
Spy++ってタダで入手できたか?

てか、今やWin32/C++使いから見ると商用版VisualStudioの価値って
リソースエディタとCRT/ATL/MFCのソースコードとSpy++ぐらいなんだよなー

609:デフォルトの名無しさん
08/05/29 23:00:11
SDKのUISpyでも十分目的は果たせると思うお

610:デフォルトの名無しさん
08/05/29 23:05:04
フリーソフトでスパイよりいいのあるお

611:デフォルトの名無しさん
08/05/29 23:25:35
Spy++の代わりにフリーソフト使ったら負けかなと思ってる

612:デフォルトの名無しさん
08/05/30 00:23:14
Winspactor Spy使ってる

613:デフォルトの名無しさん
08/05/30 00:28:05
Winsp「e」ctorだろう

614:デフォルトの名無しさん
08/05/30 00:33:25
昔のPlatform SDKにサンプルとしてSpyってのがあったんだけどな。
ソース付きで、Spy++のちょっとショボくなったやつ。
今はそういうサンプル全部無くなってるな。

615:デフォルトの名無しさん
08/05/30 00:46:35
>>614
あれ、ちょっとどころか相当ショボイだろ

URL忘れたけど、MSサイトのどこかに
解凍すると130MBのchmが出てきて大量にSDKサンプルの入ってるやつがあった
その中におまいさんの言ってるSpyのソースコードも入ってるよ

616:デフォルトの名無しさん
08/05/30 00:49:07
そんなにショボかったかw
見たの10年くらい前だから、もうよく覚えてないな。

617:デフォルトの名無しさん
08/05/30 01:23:01
>>616
歳がばれるぞw

618:デフォルトの名無しさん
08/05/30 01:42:32
現役大学生か。若いな。

619:デフォルトの名無しさん
08/05/30 02:33:33
spyそのものはspy++が出るまでSDKの普通のツールだったしな

620:デフォルトの名無しさん
08/05/30 08:56:51
MIIM_CHECKMARKS の
MIIMって何の略ですか?
Menu* だとは思うのですが.

621:デフォルトの名無しさん
08/05/30 09:35:02
MenuItemInfoMask

622:デフォルトの名無しさん
08/05/30 11:41:50
int main(int argc, char *argv[])
コンソールアプリだとこれで引数渡せるけど

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
APIじゃこう宣言されてるよね
非コンソールアプリを実行する時に
プログラム名 -オプション
ってやるにはどうすればいい?

623:デフォルトの名無しさん
08/05/30 11:43:40
>>615
探したけどみつからないお><
もうなくなちゃったのかな?

624:デフォルトの名無しさん
08/05/30 11:44:00
>>622
lpCmdLineに引数が入ってる

625:デフォルトの名無しさん
08/05/30 12:28:02
GetCommandLine

626:デフォルトの名無しさん
08/05/30 12:29:15
__argcと__argv

627:デフォルトの名無しさん
08/05/30 12:46:09
ついでにUnicodeであればlpCmdLineをCommandLineToArgvWに通すとLPWSTRの配列に分解してくれる

628:デフォルトの名無しさん
08/05/30 12:47:43
>>619
VC2の頃なんか普通にあったなSpy。アイコンもスパイ風の男で、VC4だかの初代Spy++は
そのアイコンに++の絵が付いただけ。
というかSpyの強化版だから「Spy++」になったわけだし

629:デフォルトの名無しさん
08/05/30 13:05:35
次のバージョンではSpy#になるんですね。わかります。

630:デフォルトの名無しさん
08/05/30 13:15:19
その次はSpy.NETになるんですね。わかります。

631:デフォルトの名無しさん
08/05/30 15:21:58
Spy.NETってもうなかったっけ?

632:デフォルトの名無しさん
08/05/30 15:28:33
URLリンク(www.spy.net)

633:デフォルトの名無しさん
08/05/30 16:22:32
ウィンドウで
Set/GetWindowLongがあるように

スレッドとかプロセス別に値収納する奴ってありますか?

634:デフォルトの名無しさん
08/05/30 16:35:56
>>633
スレッドはスレッドローカルストレージってやつでスレッド固有の値を保持できるよ。詳細はmsdnみろ
プロセスは普通にグローバル変数使えばいいんでは…?

635:デフォルトの名無しさん
08/05/30 16:40:02
Get/SetLastErrorを使うとスレッド別に32bitの値を格納できる

636:デフォルトの名無しさん
08/05/30 17:11:13
スレッドならTLSを使う。

プロセスについては、自分以外のプロセスを管理する上でそれぞれに値を割り当てたいなら、
HPROCESS取得・VirtualAllocExで確保してRead/WriteProcessMemoryでアクセスという手はある。
用途が全く見えないが。

637:デフォルトの名無しさん
08/05/30 17:15:30
HPROCESS
HPROCESS
HPROCESS

638:デフォルトの名無しさん
08/05/30 20:17:10
ダイアログに追加したステータスバーにツールチップを表示したくてSBT_TOOLTIPSを指定して作成しました。
ディスプレイの水平解像度を超える長い文字列を表示するとツールチップがはみ出してしまいます。
これを折り返す方法はないのでしょうか。

SendDlgItemMessage(hDlg, IDC_STAT1, TTM_SETMAXTIPWIDTH, 0, (LPARAM)(int)320);

などとしても駄目でした。

639:デフォルトの名無しさん
08/05/30 20:45:15
確かこうやる
RECT rc;
SystemParametersInfo(SPI_GETWORKAREA, 0, &rc, 0);
SendMessage(hToolTip, TTM_SETMAXTIPWIDTH, 0, rc.right - rc.left);


640:デフォルトの名無しさん
08/05/30 21:22:52
>>639
試してみましたが駄目でした。
ステータスバーに初めから備わったツールチップ機能を使用しているので、独自にツールチップをCreateWindowEx()している訳ではありません。

VB.NETやC#に例えるなら以下のプロパティを設定した場合とほぼ同じです。
これらの言語では特に何もしなくても折り返し表示されました。

ToolStatusStripLabel1.AutoToolTip = False
ToolStatusStripLabel1.ToolTipText = "表示する内容"

641:デフォルトの名無しさん
08/05/31 01:37:42
VB.NETやC#の宣伝がしたいなら余所へどうぞ
そもそもステータスバーにそんな長いツールチップを出すのがUIとして間違い


とは言え
ToolStripとその派生コンポーネントって便利杉だよなー
まぁ.NET2.0のウリだったからな

642:デフォルトの名無しさん
08/05/31 02:41:56
ToolStripをパクったクラスをC++で作ればいいじゃない

643:デフォルトの名無しさん
08/05/31 02:51:43
ブビ厨がそんなの作れる訳ないじゃんw

644:デフォルトの名無しさん
08/05/31 04:52:35
メニューのRebar化ってどうやってやるのかなと思って、
WTLのソース覗いてみたら、5000行近くあって吹いた。

645:デフォルトの名無しさん
08/05/31 05:02:49
メニューのレバー化、俺も考えたけど、メニューをツールバー化しないと無理っぽいし。あきらめたわ
ツールバー化したら、メニュー文字間隔が変だし。どうにかしてメニューをレバーに突っ込めないかな

646:デフォルトの名無しさん
08/05/31 05:14:30
だからレバーじゃなくてリバーだと(ry

つうかReBar化って何だよ
ReBarに入れるって意味ならそう言え

647:デフォルトの名無しさん
08/05/31 05:20:58
>>644
WTLのはメニュー項目にアイコン付ける為のオーナードロー込みだからデカいだけ
純粋にCommandBarだけなら2000行ぐらいだ

648:↑
08/05/31 05:22:46
最も無意味なカキコの例

649:デフォルトの名無しさん
08/05/31 05:30:19
妄言吐くだけのキモイ奴が多すぎ

650:デフォルトの名無しさん
08/05/31 05:32:54
>>646
Rebar化で十分通じるわマヌケ

651:デフォルトの名無しさん
08/05/31 05:34:57
>>650
開き直るなマヌケ

652:デフォルトの名無しさん
08/05/31 05:51:37
>>651
ごめんなさいマヌケ

653:デフォルトの名無しさん
08/05/31 05:52:52
>>652
どういたしましてマヌケ

654:デフォルトの名無しさん
08/05/31 05:53:39
煽りいれる奴は、かまってちゃんだから相手にしない方がいいよ

655:デフォルトの名無しさん
08/05/31 05:56:44
わかってるよ
俺もかまってちゃんなんだよ

656:デフォルトの名無しさん
08/05/31 06:03:17
かまってちゃんだから2ちゃんねらなんだよ

657:デフォルトの名無しさん
08/05/31 09:21:20
>>645
漏れ、レバーはキライなんだよ。

658:デフォルトの名無しさん
08/05/31 11:52:20
質問内容も馬鹿丸出しだし、レバーなんていう人にはロクなのがいないね。

659:デフォルトの名無しさん
08/05/31 12:00:21
訳:かまってほしいな


660:デフォルトの名無しさん
08/05/31 12:01:11
もっとかまってよー

661:デフォルトの名無しさん
08/05/31 13:46:51
657は食い物のことを言ってるんだと思った。

662:デフォルトの名無しさん
08/05/31 13:49:02
メニューの肝臓化

663:デフォルトの名無しさん
08/05/31 13:50:56
キモ

664:デフォルトの名無しさん
08/05/31 15:00:48
リバーでもレバーでもどっちでもいいよ。


そんなの見たことも聞いたこともないから。
なにみんな脳内妄想語ってるの?ってカンジ?みたいな~。

665:デフォルトの名無しさん
08/05/31 15:07:31
だって脳内妄想を語るスレじゃん?ってカンジ?みたいな~。

666:デフォルトの名無しさん
08/05/31 19:15:37
またレバーリバーの言葉遊びで100レス消費するつもりか?
頭悪い奴が増えたな

667:デフォルトの名無しさん
08/05/31 19:18:13
ビルゲイツ氏ね

668:デフォルトの名無しさん
08/05/31 19:58:34
不毛な論争で無駄なレスを消費しないよう今後は以下のカタカナ表記で統一しましょう。
(出来る限り英語の発音に合わせたため一般的なカタカナ語とは表記に違いがあります)

Common Control カムン ケントロウル

Button バテン
Static ステァティク
Edit エディト
ListBox リスト バクス
ComboBox カンボゥ バクス
ScrollBar スクロウル バー

Toolbar トゥール バー
Status Bar ステイテス バー
TrackBar トラェック バー
Progress Bar プラグレス バー
TreeView トゥリーヴュー
ListView リストヴュー
HotKey ハット キー
Header ヘダー
Tab テァブ
Animate エァネメイト
ToolTip トゥール ティプ
Month Picker マンス ピカー
DateTime Picker デイト タイム ピカー
ReBar リバー
UpDown アプ ダウン
Pager ペイヂア
Native Font ネイティヴ ファント
Chevron シェヴラン
ImageList イミヂ リスト

669:デフォルトの名無しさん
08/05/31 20:04:27
いやいや違うな

Common Control カマン カンチョロォ
Button バトゥン

とかの方が正確だろ

670:デフォルトの名無しさん
08/05/31 20:10:11
Button バラゥン

の方が正確かも

671:デフォルトの名無しさん
08/05/31 20:10:52
不覚にもwww

672:デフォルトの名無しさん
08/05/31 20:12:05
リソース外のbmpやjpeg等の画像を読み込むAPIがあれば教えてください

673:デフォルトの名無しさん
08/05/31 20:13:39
GDI+
OleLoadPicture
IImgCtx

674:デフォルトの名無しさん
08/05/31 23:28:22
>>671
ワロタwww

675:デフォルトの名無しさん
08/05/31 23:41:50
>>669はイギリス、>>670はアメリカの英語に近い。

676:デフォルトの名無しさん
08/05/31 23:52:32
もう発音記号でいいよ

677:デフォルトの名無しさん
08/06/01 00:00:51
国際音声記号でいいよ


678:デフォルトの名無しさん
08/06/01 00:04:42
発音する訳じゃないんだから、普通に英語表記でいいだろwww

679:デフォルトの名無しさん
08/06/01 00:13:43
カマン コンチュロゥルについてなのですが、コマンドゥバァをSDKで使うサンプルないのでしょうか?
ネッツで調べても見つからなくて

680:デフォルトの名無しさん
08/06/01 00:14:49
英語でおk

681:デフォルトの名無しさん
08/06/01 00:35:59
×サンプル
○サンポゥ

682:デフォルトの名無しさん
08/06/01 00:42:15
katakana yamete eigoni sitara?

683:デフォルトの名無しさん
08/06/01 00:43:51
sorya ro-maji yanke


684:デフォルトの名無しさん
08/06/01 00:45:24
muri iwanaide kudasai ><

685:デフォルトの名無しさん
08/06/01 00:50:13
yominikuidesu ><


686:デフォルトの名無しさん
08/06/01 00:52:25
omaera omoroi

687:デフォルトの名無しさん
08/06/01 00:52:53
nanda kono nagare

688:デフォルトの名無しさん
08/06/01 00:54:51
fudan doori jan


689:デフォルトの名無しさん
08/06/01 02:58:41
GetProcessHeap tte NULL ga kaettekuruktoaruno?

690:デフォルトの名無しさん
08/06/01 03:00:43
aruyo

691:689
08/06/01 03:02:16
>>690
kaette kitakoto naindaga
maa hinnpannnitukaumonojanaikara doudemoiika

692:デフォルトの名無しさん
08/06/01 03:04:45
おまえらローマ字とか恥ずかしいからやめてくれ

693:デフォルトの名無しさん
08/06/01 03:15:44
ryoukai

694:デフォルトの名無しさん
08/06/01 04:28:20
>>692
Yes, sir.

695:デフォルトの名無しさん
08/06/01 04:30:56
>>692
Okay.

696:デフォルトの名無しさん
08/06/01 04:48:58
>>692
ming bai le

697:デフォルトの名無しさん
08/06/01 10:10:52
>>692
daga kotowaru

698:デフォルトの名無しさん
08/06/01 10:36:43
I don't give a FUCK!!

699:デフォルトの名無しさん
08/06/01 10:54:51
nani konosure

700:デフォルトの名無しさん
08/06/01 11:10:45
英語の出来ない人が似非英語を書いたりローマ字書いたりするだけの悲しいスレ

701:デフォルトの名無しさん
08/06/01 11:42:38
>>696
nanigodetuka?

702:デフォルトの名無しさん
08/06/01 11:47:50
detteiu

703:デフォルトの名無しさん
08/06/01 11:56:07
>>701
[明白了] chugoku go desu yo

704:デフォルトの名無しさん
08/06/01 12:01:51
bokuhacker!

705:デフォルトの名無しさん
08/06/01 12:07:21
moudameda

706:デフォルトの名無しさん
08/06/01 12:10:57
romaji no dekinai hito ga, ese-chuugokugo wo kaitari nihongo kaitari surudakeno kanashii sure.

707:デフォルトの名無しさん
08/06/01 12:49:18
>>706
abusett teno's anu cincit unegun sent skipet?


708:デフォルトの名無しさん
08/06/01 12:52:16
明日まで書込み禁止

709:デフォルトの名無しさん
08/06/01 12:54:42
jichichuu otsu

710:デフォルトの名無しさん
08/06/01 12:55:30
いい加減にしろ

711:デフォルトの名無しさん
08/06/01 12:56:15
naniwo?

712:デフォルトの名無しさん
08/06/01 12:57:47
業とらしく言うんじゃねーよクソカス
黙れないなら死ね

713:デフォルトの名無しさん
08/06/01 12:59:48
hate?

714:デフォルトの名無しさん
08/06/01 13:00:34
ahosuguru

715:デフォルトの名無しさん
08/06/01 13:01:30
yaku : kamatte hoshiina

716:デフォルトの名無しさん
08/06/01 13:02:31
いいから黙れ
ローマ字で会話するのを止めろ

717:デフォルトの名無しさん
08/06/01 13:03:35
OK

718:デフォルトの名無しさん
08/06/01 13:04:12
nande sonnnani hitoni meirei shitagaruno?

719:デフォルトの名無しさん
08/06/01 13:05:35
souda, kaiwa suruna to iwaretakara, kaiwa wo naritatasenakereba iinda.

720:デフォルトの名無しさん
08/06/01 13:05:51
スレと関係ない話題をいつまでも引っ張ってるからだクソガキ

721:デフォルトの名無しさん
08/06/01 13:06:46
yaku : kamatte hoshiina

722:デフォルトの名無しさん
08/06/01 13:08:10
超伸びてると思ったら何この流れ。

723:デフォルトの名無しさん
08/06/01 13:09:14
日本語でおk

724:デフォルトの名無しさん
08/06/01 13:09:16
irassyai
isshoni asobo-

725:デフォルトの名無しさん
08/06/01 13:10:12
ここまで俺の自演。

726:デフォルトの名無しさん
08/06/01 13:10:51
いいや俺だ。

727:デフォルトの名無しさん
08/06/01 13:11:32
nani ka shitumon ga areba moto no nagare ni modoru yo
son-nani kakka sinai hou ga ii to omou na

728:デフォルトの名無しさん
08/06/01 13:23:31
久しぶりに基地害を見た。

729:デフォルトの名無しさん
08/06/01 13:24:05
毎日くれば毎日見られるよ


730:デフォルトの名無しさん
08/06/01 13:26:19
これやってるの一人か二人なんだろうな。そろそろ通報しとくか。

731:デフォルトの名無しさん
08/06/01 13:26:44
なんでWin32APIスレだけこんなに荒れるの?

732:デフォルトの名無しさん
08/06/01 13:33:38
普段、話についてこれないやつが初めて自分のローマ字を披露できたんだ。見守ってやれ

733:デフォルトの名無しさん
08/06/01 13:36:56
つーかなんでこの板IDないの?

734:デフォルトの名無しさん
08/06/01 13:59:07
そのように設定していないから。

735:デフォルトの名無しさん
08/06/01 14:10:52
今日はここに沸いてたのか

736:デフォルトの名無しさん
08/06/01 14:38:34
毎日ここに沸いてるよ

737:682
08/06/01 15:43:35
こんな事になるとは思わなかった
スマソ

738:デフォルトの名無しさん
08/06/01 16:00:04
ごみレスだらけだよ

739:デフォルトの名無しさん
08/06/01 16:07:37
>>737
二度と来るなカス

740:デフォルトの名無しさん
08/06/01 16:10:59
>>739
ごめんねカス

741:デフォルトの名無しさん
08/06/01 16:41:05
>>740
win32APIスレに居て欲しいタイプじゃないから、別スレに移動してくれませんか?

742:デフォルトの名無しさん
08/06/01 16:44:35
>>737
言葉の揚げ足取ってうれしがる奴は邪魔。
もうこないでほしい

743:デフォルトの名無しさん
08/06/01 16:45:22
あなた好みのタイプなんて知ったことじゃありません

744:デフォルトの名無しさん
08/06/01 16:51:33
相手にされてうれしがってるだけなんだから、もう相手するのやめようよ。

745:デフォルトの名無しさん
08/06/01 16:52:41
↑一番相手にするタイプ

746:デフォルトの名無しさん
08/06/01 17:00:21
683から736は俺じゃないんだがな

747:デフォルトの名無しさん
08/06/01 17:03:45
ほら早速。

748:デフォルトの名無しさん
08/06/01 17:07:59
DVDとかCDをフォーマットするには何て関数使えばいい?

749:デフォルトの名無しさん
08/06/01 17:16:13
見てる側からすれば変な発言にノッタお前らも邪魔なんだけどな
煽る奴も邪魔

スルー覚えろよ

750:デフォルトの名無しさん
08/06/01 17:22:36
>スルー覚えろよ
そういうあなたがスルーを覚えられていないようなので
スルーを覚えるつもりはありません。

751:デフォルトの名無しさん
08/06/01 17:23:53
} while (1);

752:デフォルトの名無しさん
08/06/01 17:28:40
do { が見つからないんだが

753:デフォルトの名無しさん
08/06/01 17:31:18
} while (1);

754:デフォルトの名無しさん
08/06/01 17:34:44
質問があるんですが、なんか変な流れみたいなので自重しときます。

755:デフォルトの名無しさん
08/06/01 17:35:23
goto >>1000;

756:デフォルトの名無しさん
08/06/01 17:36:14
同じく質問があるんですが、なんか変な流れみたいなので自重しときます。

757:デフォルトの名無しさん
08/06/01 17:36:54
コマンドバーのSDKサンプルあるとこ教えてください
海外サイトでもおk

758:デフォルトの名無しさん
08/06/01 17:40:56
>>757
いい加減しつこい

MSDNに説明があるだろうが
あれ読んで分からなかったら猫の糞サンプルでも見て勝手にやってろ

759:デフォルトの名無しさん
08/06/01 17:51:50
>>738,739-740
ワロスwwwwwwwwwwwww

760:デフォルトの名無しさん
08/06/01 18:33:11
スルーしろよ ←今まで我慢してた奴
そういうお前がな ←顔真っ赤な奴
↑お前もな ←呆れた奴

無限ループになるし終われw



761:デフォルトの名無しさん
08/06/01 18:35:51
この手の無限ループは荒らしてる基地外が飽きて沈静化するまで終わらないよ

762:デフォルトの名無しさん
08/06/01 19:48:44
前から言われてるけどID制して欲しいですね。

763:デフォルトの名無しさん
08/06/01 20:13:32
どうせID変えまくって荒らすだけだろ

764:デフォルトの名無しさん
08/06/01 21:07:05
荒らす奴はIDの変え方知らんと思うが

765:デフォルトの名無しさん
08/06/01 21:11:20
ほとんどはID変えてまではしないよ、特にこの板ではありえないそう
同じIDのままならNGで終了だし

766:デフォルトの名無しさん
08/06/01 21:14:47
質問とか答えるときもあった方が便利そうだけどな

767:デフォルトの名無しさん
08/06/01 21:18:03
ハンドルっていうのはポインタと思っとけばいいですか

768:デフォルトの名無しさん
08/06/01 21:26:46
よくないです

769:デフォルトの名無しさん
08/06/01 21:41:04
ポインタのポインタに近いかも

770:デフォルトの名無しさん
08/06/01 21:47:34
質問です
掲示板とかによくあるIDの変え方を教えてください

771:デフォルトの名無しさん
08/06/01 22:11:57
名前欄に fushianasan といれる

772:proxy10.microsoft.com
08/06/01 22:22:49
これでいいですか?

773:デフォルトの名無しさん
08/06/01 22:29:53
今すごい自演を見た

774:デフォルトの名無しさん
08/06/01 22:44:40
fusianasanの場合は文字がもう少し細くなるからバレバレ

775:デフォルトの名無しさん
08/06/01 22:46:46
>>767
ハンドルというのは、中身を意識してはいけないもの。
操作対象のオブジェクトを一意に識別する単なるID。

776:デフォルトの名無しさん
08/06/01 22:50:23
ハンドル
インターネットでいうとIPアドレス
学校でいうと何年何組何番とか

777:デフォルトの名無しさん
08/06/01 22:53:09
>>776
何年何組何番は時とともに変化するから学籍番号のほうが的確かと。

778:デフォルトの名無しさん
08/06/01 23:03:13
ハンドルでわからないアホはプログラム作らなくていいよ

779:デフォルトの名無しさん
08/06/01 23:05:57
車に乗るとき握るものですね、わかります

780:デフォルトの名無しさん
08/06/01 23:08:02
50セントじゃねーの?

781:デフォルトの名無しさん
08/06/01 23:10:59
ステアリングじゃないの?

782:デフォルトの名無しさん
08/06/01 23:15:35
はいはいそこまで

783:デフォルトの名無しさん
08/06/01 23:16:58
object identifierとでも言っておけばいいのに
何でハンドルって言うようになったんだ。

784:デフォルトの名無しさん
08/06/01 23:20:29
なんで初心者って、そういうどうでもいい所が気になるのかねぇ
「適当な固有の値」ぐらいに思ってればいいじゃないの


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch