■過去ログ置き場に戻る■
1-
前250
次250
最新50
[memo]
"9999999999_00.html#R20"
という感じで、URLの最後に "#R
レスNo
" を追加すると幸せになれます。
Win32API質問箱 Build14
501
名前:
デフォルトの名無しさん
:03/11/03 06:02
>>2
の下の方だったんだがなぁw
502
名前:
デフォルトの名無しさん
:03/11/03 10:09
>>500-501
スマン、ツボに入って爆笑しますた
503
名前:
デフォルトの名無しさん
:03/11/03 10:15
GlobalAllocの第1引数でGMEM_MOVEABLEを指定すると「移動可能メモリを確保」するとありますが、
これはガーベジコレクションが働くという意味なんですか?
504
名前:
デフォルトの名無しさん
:03/11/03 12:21
>>503
Win16時代にはGCが働いていた(過去形)。
今は実際には決して移動することはないので実質的に意味ない。
HGLOBALは間接ポインタに決まってると決め付けていた
Win16アプリを移植しやすくするために存在しているだけ。
505
名前:
デフォルトの名無しさん
:03/11/03 13:22
えー、スレ違いでしたら無視してください。
ゲームを外部から操作できるのかと思い、PostMessage を使って
WM_KEYDOWN をメッセージキューにポストしてみたのですが
何の反応も有りませんでした。Spy++を使ってキューを監視してみても
キーボードから入力したときと全く同じメッセージがポストされているのですが……
ご助言いただければ幸いです。
506
名前:
デフォルトの名無しさん
:03/11/03 13:31
できると思うがその内容ではコメントしようも無い。
507
名前:
デフォルトの名無しさん
:03/11/03 17:59
>>505
普通は、keybd_event() or SendInput() じゃないかと。
508
名前:
デフォルトの名無しさん
:03/11/03 19:00
>>503
memory compactionね。
garbage collectionとはちょいニュアンス違う。
移動可能メモリをハンドルで表現する意味も
昔はmemory compactionへの対応だったが
今ではプロセス境界を跨ぐための拡張アドレスと
ニュアンス変わってきてる。
509
名前:
デフォルトの名無しさん
:03/11/03 19:45
つまり、移動可能メモリというのは
Mac OS の Handleみたいなものですか?
510
名前:
デフォルトの名無しさん
:03/11/03 20:06
>>509
みたいなものではなく、全く同じもの。
511
名前:
478
:03/11/04 02:31
478ですがレスが無いようなので質問を他の場所で投げてみようと思います。
一応その旨書いておきます。
512
名前:
デフォルトの名無しさん
:03/11/04 10:06
kbhit()
じゃだめなん?
513
名前:
デフォルトの名無しさん
:03/11/04 18:00
>>512
>>480
514
名前:
デフォルトの名無しさん
:03/11/04 21:08
>>506
申し訳ございません。具体的にはどのような情報が必要なのでしょうか。
PostMessage(hWnd, WM_KEYDOWN, 0x4E, 3211265);
PostMessage(hWnd, WM_KEYUP, 0x4E, 3224436737);
このような形でポストしました。
>>507
助言ありがとうございます。しかし以下のようにやっても、やはり反応が有りません。
SetFocus(hWnd);
keybd_event(0x4E, 0, 0, 0);
keybd_event(0x4E, 0, KEYEVENTF_KEYUP, 0);
これもやはりテキストエディタに放り投げてみると正しくキーが押されていました。
何かよく分からないことだらけですが、もう少し調べてみようと思います。
515
名前:
デフォルトの名無しさん
:03/11/04 22:13
DirectInput使ってるんじゃねーの?
516
名前:
デフォルトの名無しさん
:03/11/05 00:01
>>514
PostMessage(hWnd, WM_KEYDOWN, 0x4E, 3211265);
Sleep(500);
PostMessage(hWnd, WM_KEYUP, 0x4E, 3224436737);
こうしてもダメ?
517
名前:
デフォルトの名無しさん
:03/11/05 00:29
漏れもDirectInputに一票
#SendMessageを使ってみたらどうよ?
518
名前:
デフォルトの名無しさん
:03/11/05 02:03
リストビューの内容を変更するために表示されるDEITBOXの位置を変更しようと思い、
最初のLVN_BEGINLABELEDITが送られてきた時に
int offset = 10;
hEdit = ListView_GetEditControl(hwnd); //DEITBOXのハンドルを取得
GetWindowRect(hEdit , &rect);
SetWindowPos(hEdit , HWND_TOP , rect.left + offset , rect.top , 0 , 0 , SWP_NOSIZE | SWP_NOZORDER);
としたのですが、DEITBOXの位置は変わりませんでした
EDITBOXの位置が初期化されるのはこのメッセージの時ではないのでしょうか?
LVN_BEGINLABELEDITからLVN_ENDLABELEDITまでの間にどのようなメッセージが送られ、
EDITBOXの位置が初期化されるメッセージはどれなのか教えていただけないでしょうか?
519
名前:
デフォルトの名無しさん
:03/11/05 10:52
>>515
,517
むしろゲームでDirectInput使ってなかったら・・・
520
名前:
x
:03/11/05 10:59
>>396
WinFXネタに埋もれてしまったのですが、この件で
何かご存じの方はいらっしゃいませんかねぇ?
521
名前:
デフォルトの名無しさん
:03/11/05 11:12
>>520
セカンダリモニタはドライバ側の機能だろうから、
APIでは無いのでは?
522
名前:
デフォルトの名無しさん
:03/11/05 11:22
>>520
OFFにできるかは知らないが、GDIのAPIにマルチディスプレイ用APIがある。
解像度切り替えはChangeDisplaySettingsExでできるっぽい。
523
名前:
デフォルトの名無しさん
:03/11/05 11:25
>>521
ドライバによっては独自のマルチモニタ機能を提供しているものもある(初期のG4x0とか)が、
基本的にはマルチモニタはWindowsの機能だ。
524
名前:
デフォルトの名無しさん
:03/11/05 15:25
FindFirstFile() で c:\winntを "*aa*" で検索すると
$NtUninstallKB824105$
がヒットするのだけど、どういう理屈なんでしょうか?
525
名前:
デフォルトの名無しさん
:03/11/05 15:30
Σ(゚Д゚; SFNか
526
名前:
デフォルトの名無しさん
:03/11/05 22:28
win98,VisualC++6.0で開発しています。
デスクトップ画像を送受信する処理を下記の様に作っています。
(サーバ側)
[デスクトップ画面取得]
CWindowDC cSrcDC(NULL);
CDC m_cDC;
CBitmap m_cBitmap;
m_cDC.CreateCompatibleDC(NULL);
m_cBitmap.CreateBitmap(GetSystemMetrics (SM_CXSCREEN),GetSystemMetrics(SM_CYSCREEN),cSrcDC.GetDeviceCaps(PLANES),cSrcDC.GetDeviceCaps(BITSPIXEL),NULL);
m_cDC.SelectObject(&m_cBitmap);
m_cDC.SetMapMode(MM_TEXT);
m_cDC.BitBlt(0,0,GetSystemMetrics(SM_CXSCREEN),GetSystemMetrics(SM_CYSCREEN),&cSrcDC,0,0,SRCCOPY);
[画像送信]
send(dstSocket,(char*)&m_cDC,sizeof(m_cDC),0);
(クライアント側)
[画像取得]
recv(sock, (char*)&m_cDC, sizeof(m_cDC), 0);
[画像表示]
CClientDC cDstDC(this);
cDstDC.BitBlt(0,0,1600,1200,&m_cDC,pos.x,pos.y,SRCCOPY);
(1)一台のPCでサーバとクライアントを兼任すると正常に表示されるけど、
(2)サーバとクライアントを別々のPCで起動すると画像が表示されません。
win2000とXPだと(1)すら表示されません。
正しくデスクトップ画面を送受信するにはどのようにすればよいのでしょうか?
527
名前:
デフォルトの名無しさん
:03/11/05 22:30
CDCはデバイスコンテキスト
画像データではないから、送信できなくて当然。
528
名前:
デフォルトの名無しさん
:03/11/05 22:47
俺はむしろ
> 一台のPCでサーバとクライアントを兼任すると正常に表示される
事に驚愕した。
529
名前:
デフォルトの名無しさん
:03/11/05 23:04
まぁ、Win98だし。
530
名前:
デフォルトの名無しさん
:03/11/05 23:14
GDIハンドルをソケット経由でコピーしただけだな
531
名前:
デフォルトの名無しさん
:03/11/06 00:18
>>524
どうあってほしい?
Unixのshellやregexpのような振る舞いは期待するだけ無駄。
532
名前:
デフォルトの名無しさん
:03/11/06 02:33
CDCには仮想関数テーブルもあるんじゃないの?
533
名前:
デフォルトの名無しさん
:03/11/06 02:49
>>532
仮想関数テーブルがあっても参照されなければエラーにはならんと思うが
534
名前:
x
:03/11/06 09:19
>>521
>>522
>>523
ありがとうございます。
ChangeDisplaySettingsEx()
も見てみたんですけど、ON/OFFは見あたらないんですよね...
でも、この辺に絞ってもう少し探してみます。
535
名前:
デフォルトの名無しさん
:03/11/06 10:04
TreeView でルートアイテムだけにイメージを表示して、
子以下のアイテムは出さないってできますか?
ルートにはこれ、
TV_INSERTSTRUCT tvis;
tvis.item.mask = TVIF_TEXT | TVIF_IMAGE | TVIF_SELECTEDIMAGE;
tvis.item.iImage = 0;
tvis.item.iSelectedImage = 0;
子にはこれ、
TV_INSERTSTRUCT tvis;
tvis.item.mask = TVIF_TEXT;
tvis.item.iImage = 1;
tvis.item.iSelectedImage = 1;
を使いましたが、子までiImage、iSelectedImageが有効になります。
ちなみにWinXP SP1、VC++6.0 SP5です。
536
名前:
デフォルトの名無しさん
:03/11/06 11:30
atoiみたいなAPI教えてください
537
名前:
デフォルトの名無しさん
:03/11/06 13:11
>>536
その前に atoi でダメな理由を教えてください
538
名前:
デフォルトの名無しさん
:03/11/06 14:34
その前にくだらんやりとりしないでください。StrToInt。
539
名前:
デフォルトの名無しさん
:03/11/06 16:03
その前にさっさと教えやがってください。
540
名前:
デフォルトの名無しさん
:03/11/06 16:07
その前にすでに教えてもらってるのに無視しないでください。
541
名前:
デフォルトの名無しさん
:03/11/06 17:08
その前にHEX文字を数値に変換する方法を教えてください。
542
名前:
デフォルトの名無しさん
:03/11/06 17:09
StrToIntEx
543
名前:
デフォルトの名無しさん
:03/11/06 17:26
初めまして2chに書き込むのははじめてなのでここに書き込んでいいのか
わかりませんが..逆アセンブラについて質問なのですが、逆アセンブラ
を使えるようになるには、何を学べばよいですか??
もしよかったらメッセで暇な時ちゃちゃと答えてくれる人いませんか??
544
名前:
デフォルトの名無しさん
:03/11/06 17:28
放置よろ
545
名前:
デフォルトの名無しさん
:03/11/06 18:39
>>544
放置できない馬鹿
546
名前:
デフォルトの名無しさん
:03/11/06 19:08
>>545
放置できない馬鹿を放置できない馬鹿
547
名前:
デフォルトの名無しさん
:03/11/06 19:31
>>544-547
放置すべき馬鹿を相手にして喜ばせるアホ。
548
名前:
デフォルトの名無しさん
:03/11/06 19:45
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
549
名前:
デフォルトの名無しさん
:03/11/06 20:02
>>543
(1) CPUアーキティクチャ
(2) アセンブラ
(3) API
(4 )OS
550
名前:
デフォルトの名無しさん
:03/11/06 20:07
同期でシリアルポート読んだあと、タイムアウトで戻ってきたかどうかを
ReadFileの戻り値で知ることは出来るの?
551
名前:
デフォルトの名無しさん
:03/11/06 20:16
>>538
atoiの為だけにShlwapi.dllをロードするのも哀れだな(w
552
名前:
デフォルトの名無しさん
:03/11/06 20:20
>>550
読み取ったバイト数がゼロで返ってくる。
つか、MSDN嫁!
553
名前:
550
:03/11/06 20:22
>>552
ご教授ありがと〜
554
名前:
デフォルトの名無しさん
:03/11/06 20:31
WM_KEYDOWNメッセージで二つのキーの組み合わせをPostMessageするのは
どうすれば良いのでしょう?
555
名前:
デフォルトの名無しさん
:03/11/06 20:35
>>551
Shlwapi.dllに何か恨みでもあんのか?
556
名前:
デフォルトの名無しさん
:03/11/06 20:45
>>551
さんはちょっとキティなんでそっとしておきましょうよ
557
名前:
526
:03/11/06 21:59
DIB 送受信 winsockで検索したらやり方モロに書いてたページがヒットして解決しました。
卒研の中間発表の予稿に「デスクトップ画面を送受信できる」と書いたので何としても作らなければいけなかったので本当に助かった。
明日は発表日。今から発表の練習します。
558
名前:
551
:03/11/06 22:12
>>555
いや、たった1つの関数、それもStrToIntの為だけにShlwapi.dllロードするなんて、贅沢だなと思って。
資源少ない時代の貧乏性が抜けきれてなくてね・・・
559
名前:
デフォルトの名無しさん
:03/11/06 22:17
>>552
ゼロになるのはファイルの終点で読みこんだ時としかかいてないぞ。
何所に書いてる?
560
名前:
デフォルトの名無しさん
:03/11/06 22:20
>>551
うん、その気持ち分かる
561
名前:
デフォルトの名無しさん
:03/11/06 22:20
>>558
おまえが哀れ。
562
名前:
デフォルトの名無しさん
:03/11/06 22:35
>>558
shlwapi.dll なんて大抵の環境ですでにメモリ上に存在するから、
リソース的には問題なしだと思ってたけど、どうなんだろう。。
563
名前:
デフォルトの名無しさん
:03/11/06 23:13
>>554
相手のアプリの実装による。
特にCtrl,Alt,Shiftの状態を、相手のアプリがGetAsyncKeyState()を使って
チェックしている場合は、物理的な状態なので再現するのは無理なはず。
代わりにWM_COMMANDなどを直接送ったほうが。
564
名前:
デフォルトの名無しさん
:03/11/06 23:36
atoi使わない方がCランタイム使わなくて嬉しいことあるですか?
565
名前:
デフォルトの名無しさん
:03/11/07 00:32
質問です。
timeGetTimeの返す値って、PC起動してから時間が立つほど不正確になるもんなんですか?
Cでゲームを作っていて、ゲームなので高速な処理をするためにメッセージループをいじって
while (TRUE){
if( PeekMessage(&msg, NULL, 0, 0,PM_REMOVE)) {
if(msg.message == WM_QUIT) break;
TranslateMessage(&msg);
DispatchMessage(&msg);
} else {
gameMain();
}
} return (msg.wParam);
処理のほとんどをgameMainに費やすようにしています。
で、例えば敵機の弾とかの移動距離を算出するために、
「(今のtimeGetTime()の値 - 前回ループ時のtimeGetTimeの値)/1000*1秒間に移動したい距離」
とすることで、CPUの処理能力によって差が出ないようにしてるのですが、
PC起動してから長時間たっていると、動きがガクガクするのです。
漏れのPCがヘタレなだけ?
566
名前:
デフォルトの名無しさん
:03/11/07 01:05
>>554
2回呼び出して、50ミリ秒以内なら一緒に押したと見なす。
567
名前:
デフォルトの名無しさん
:03/11/07 02:59
RECT構造体のメンバはlogical unitなので、DrawText()などで
この構造体を使うときはMapping Modeの影響を受けると思います。
で、RECTをGetClientRect()などで取得するとMapping Modeのことは
計算されていないと思うのですが、この取得した値ををMM_TEXT以外の
モードで使うにはどうすればいいのでしょうか?
568
名前:
デフォルトの名無しさん
:03/11/07 11:17
>>565
ゲーム制作系のスレに行くべき
569
名前:
デフォルトの名無しさん
:03/11/07 11:38
>>565
( ´∀`)ノ
http://www2.bbspink.com/erog/kako/1050/10509/1050908540.html
570
名前:
デフォルトの名無しさん
:03/11/07 11:48
WS_VISIBLE WS_CHILD WS_BORDER ES_MULTILINE
WS_VSCROLL WS_HSCROLLのスタイルで作った
EDITコントロールに、複数行のテキストをバッファの文字に
変更があった時などSetWindowTextで表示させると、
その度 勝手に垂直スクロールバーが元の一番上に移動して
怖いです。
止めさせる方法教えて下さい。
571
名前:
デフォルトの名無しさん
:03/11/07 11:53
EM_SETSEL と EM_REPLACESEL ではどうですか?
572
名前:
670
:03/11/07 12:01
>>571
レスどうも。テキストは一行ごと追加して
行自体が下にずれていくから、そのやり方だと難しそう・・・
573
名前:
570
:03/11/07 12:09
>>571
ああ、EM_REPLACESELは文字列置換だから簡単にできそうですね。
削除かと勘違いしてた。 いい方法をありがとう。
574
名前:
デフォルトの名無しさん
:03/11/07 16:48
>>567
自分で変換
575
名前:
デフォルトの名無しさん
:03/11/07 18:09
>>565
つうかPeekMessage使うなボケ。
藻前、本のサンプル理解しねーで丸写ししただろ?
576
名前:
デフォルトの名無しさん
:03/11/07 18:25
>>575
なんで?
577
名前:
デフォルトの名無しさん
:03/11/07 18:40
>>552
お前こそちゃんと読んだか?
読みこめたバッファを伴って処理を戻すからゼロとは限らないよ。
たんに、関数の最初にその変数が、0リセットされるだけ。
578
名前:
りょ
:03/11/07 18:43
いま、困っています。
MXでとれてしまった画像ファイル(JPEG)
が削除できないのです。
どうしたらいいのですか?
削除をおすと
(ファイル削除できません。指定されたファイル名は、無効か
または長すぎます。別の名前を指定してください。)
とでます。
名前を変えてみたりしたんですが
(ファイル名を変更できません。指定されたファイル名は、無効か
または長すぎます。別の名前を指定してください。)
とでてしまいます。どうしたらいいのですか?
579
名前:
デフォルトの名無しさん
:03/11/07 18:54
アクセス権の設定ダイアログを表示する方法を教えてください
580
名前:
デフォルトの名無しさん
:03/11/07 20:41
>>575
漏れも気になる
なんでPeekMessageダメなん?
581
名前:
デフォルトの名無しさん
:03/11/07 21:56
ListView についてくる Header の高さを変える方法はありますか?
ListView に WM_SETFONT を送って字を大きくしたのはいいのですが、
Header の高さが変わってくれません。
582
名前:
デフォルトの名無しさん
:03/11/07 23:42
>>564
これとか。
> ランタイムライブラリのサイズは 20KB もあるので、
> ランタイムライブラリを使わないだけで、
> 20KBのダイエットに成功します。
ttp://www.nitoyon.com/vc/tips/light_exe.htm
583
名前:
デフォルトの名無しさん
:03/11/08 00:58
>>578
IOCTL_DISK_FORMAT_VOLUME
584
名前:
デフォルトの名無しさん
:03/11/08 01:58
WM_MOUSEWHEELを後ろのウィンドウに透過して送りたいのですが、
下のよりスマートな方法はないのでしょうか?
case WM_MOUSEWHEEL:
ShowWindow(hWnd, SW_HIDE);
hBackWnd = WindowFromPoint((POINT)lParam);
ShowWindow(hWnd, SW_SHOW);
SendMessage(hBackWnd, WM_MOUSEWHEEL, wParam, lParam);
585
名前:
デフォルトの名無しさん
:03/11/08 02:25
>>579
EditSecurity ?
586
名前:
デフォルトの名無しさん
:03/11/08 09:59
>>584
後ろのウィンドウは不定なの?
587
名前:
デフォルトの名無しさん
:03/11/08 10:00
駆動中のプロセスを列挙して,任意のプロセスを終了させたいのですが.
PIDとかがまったくわからない状態で,プロセスの名前だけをたよりに
そのプロセスを終了させたいのですが.
どのようにしたらよいのでしょうか?
588
名前:
565
:03/11/08 11:09
>>568
板違いですか。誘導どうもです。
>>569
ためになりそうですね。読んでおきます。
>>575
お察しの通り丸写しです…。
なんで?
589
名前:
デフォルトの名無しさん
:03/11/08 11:22
>>587
プロセス列挙して探す
590
名前:
589
:03/11/08 11:29
列挙て書いてたか。オープン→ベースネームか?
591
名前:
デフォルトの名無しさん
:03/11/08 12:25
>>587
似たようなプログラムのソースを見る
592
名前:
デフォルトの名無しさん
:03/11/08 13:54
>>565
CPU使用率、常に100%の予感。
593
名前:
デフォルトの名無しさん
:03/11/08 14:10
>>592
そお思う理由を書きたまゑ
594
名前:
デフォルトの名無しさん
:03/11/08 16:39
>>587
CreateToolhelp32Snapshot
↓
Process32First & Process32next(要するに列挙)
↓
lstrcmp(ProcessName , PROCESSENTRY32::szExeFile)
でどうですか?
595
名前:
594
:03/11/08 16:48
訂正
CreateToolhelp32Snapshot
↓
Process32First & Process32next(要するに列挙)
↓
lstrcmp(ProcessFileName , PROCESSENTRY32::szExeFile)
↓
OpenProcess(PROCESSENTRY32::th32ProcessID)
↓
GetModuleFileName
↓
lstrcmp(yours , ProcessFullPathName)
PROCESSENTRY32::szExeFileはファイル名だけだから
こっちの方が確実かな。
596
名前:
587
:03/11/08 17:39
やっぱり列挙して比較するしか方法はないのですね.
みなさんありがとう!
597
名前:
デフォルトの名無しさん
:03/11/08 18:08
なるほど、名前で一発検索できる関数を探していたのか
598
名前:
デフォルトの名無しさん
:03/11/08 18:20
>>592
CPU使用率が100%近くになるのは意図通りだろ
599
名前:
デフォルトの名無しさん
:03/11/08 20:22
質問です。
Programming Windows 5th Editionを読んでいるんですが、プロセスの中で
GDIオブジェクトを使うと大体DeleteHogeみたいな関数で使い終わった
オブジェクトを消すよう書いてあります。
これを守らずに放置してプロセスを終了した場合メモリリークしますか?
それともあるプロセスで使ったものはプロセスの終了とともに回収され
ますか? (もちろんそういう仕組みに任せるのは好ましくないですが)
600
名前:
565
:03/11/08 21:31
言い忘れてた。
ゲ製作技術のほうにいきますんで、
>>565
の質問は放置願います。
>>CPU100%
作ってるのは音ゲーなので、CPU100%でいいです。
まぁ「いい」とか「わるい」とか言うのは使う側なんだけども。
601
名前:
デフォルトの名無しさん
:03/11/08 22:49
ゲームでも無駄なCPU使用はやめれ。
602
名前:
デフォルトの名無しさん
:03/11/08 22:56
>>599
プロセス終了時点で破棄されるので、終了時に消して回る必要はない。
むしろバグを生みそうなのでやらないほうがよい。
つまり、
起動時に一度作って、ずっと使いまわすものはDeleteしなくてよい。
ユーザ操作などで動的に作られるものであれば、Deleteする仕組みを
あらかじめ入れておいたほうがよい。
MFCが使えるならばそれに任せたほうが楽。
603
名前:
デフォルトの名無しさん
:03/11/08 23:18
>>601
まずは目的の動きができあがってから、減らしますよ。
604
名前:
デフォルトの名無しさん
:03/11/08 23:39
>プロセス終了時点で破棄されるので、終了時に消して回る必要はない。
ここまでは、まあそういう考えの人もいるってことでいいが
>むしろバグを生みそうなので
これは戯言。そんなヘボPGは廃業しろ。入門者なら破門だ。
605
名前:
デフォルトの名無しさん
:03/11/08 23:57
俺はハンドル作ったらauto_ptrみたいはスマートハンドルクラスに突っ込んでる
606
名前:
デフォルトの名無しさん
:03/11/09 00:12
>>604
原文書いた人じゃないけど
余計なことはしない方が良いって思ってるだけかもしんない。
それもひとつの信念。そんなに跳ね飛ばすほどのことでもなかろうに。
607
名前:
デフォルトの名無しさん
:03/11/09 00:48
>プロセス終了時点で破棄されるので、終了時に消して回る必要は
こんな余計なこと考えるくせにな
608
名前:
デフォルトの名無しさん
:03/11/09 00:53
プロシージャを書くのがめんどうという理由でウィンドウラッパークラスを作っています。
が、そのプロシージャの動作(なんかwhile〜〜メッセージで分岐するの)をどうすれば楽チン
になるのか思いつきません。汎用的に色んなアプリでも簡便に使い回せるクラスにしたいのですが
どうすればいいでしょうか?
609
名前:
デフォルトの名無しさん
:03/11/09 00:57
>>608
ATL使え
610
名前:
デフォルトの名無しさん
:03/11/09 01:01
whileでは普通分岐しないと思うんだが。switchのことか?
611
名前:
デフォルトの名無しさん
:03/11/09 01:05
>>609
すいません。どんな風に楽できるんでしょうか?
>>610
すいません。それです。
612
名前:
デフォルトの名無しさん
:03/11/09 01:15
>>611
ATL(WTL)には君が再発明しようとしている車輪が全て格納されてる。
613
名前:
デフォルトの名無しさん
:03/11/09 01:15
>>607
考え事はどれだけしても無駄にはならないが、
コードは書けば書くほどミスが出る確立は上がる。
614
名前:
デフォルトの名無しさん
:03/11/09 01:22
リソースの回収でバグを生むかも知れないとか言うようなやつは、
どうしても自力で回収しないといけない状況で使い物にならんのでどっちにしろ廃業。
615
名前:
デフォルトの名無しさん
:03/11/09 01:26
確率の話だろ。
616
名前:
デフォルトの名無しさん
:03/11/09 01:30
問題はどのリソースが確実に回収されると
決まっているかという話なんだが。
617
名前:
デフォルトの名無しさん
:03/11/09 01:34
9x系はかなりダメだった気がするんだが。
618
名前:
デフォルトの名無しさん
:03/11/09 02:50
>>614
同意
確率とか言い出す手合いの頭の中は
リソース枯渇の確率が低ければOK
619
名前:
デフォルトの名無しさん
:03/11/09 10:13
ハードディスクのセクタに直接アクセスするプログラムを作っています。
CreateFile()で"\\\\.\\PHYSICALDRIVE1"(二台目のハードディスクで、システムは入っていません)をオープンし、
DeviceIoControl()のIOCTL_DISK_GET_PARTITION_INFOでディスクのバイト数を取得し
そのサイズだけReadFile()を用いてハードディスクを読み込むというプログラムです。
それで、CreateFile(),DeviceIoControl()共に成功していて、ディスクのバイト数もちゃんと取得できているみたいです。
しかし、ReadFileでハードディスクを読み込んでいるとき、途中までは成功しているみたいなんですが、
ディスクの最後の10MBぐらいにさしかかるとReadFileが失敗します(0を返します)。
GetLastError()で詳細を見てみたところ、「I/Oデバイスエラーが発生した
ため要求できませんでした」となっていました。
もともとハードディスクの最後のほうというのはアクセスできないようになっているんでしょうか?
それとも私のプログラムが悪いのでしょうか?ソースは必要ならば公開します。
ちなみに、WindowsXP HomeEdition SP1 で、VisualC++6.0を使用しています。
620
名前:
デフォルトの名無しさん
:03/11/09 10:20
>>619
その HDD が壊れていると言う可能性
HDD の容量の先をさらに読もうとしている可能性
は、ないんか ?
621
名前:
619
:03/11/09 10:29
別のHDD2個で試してもやはり最後の方は読み込めませんでした。
それと、容量の先を読もうとしてはいないと思うのですが、
仮にHDDの容量の先を読もうとしてもReadFileは0を返さずに、読み込んだバイト数に0が
返されるのではないですか?
MSDNライブラリのReadFileから引用:
関数が成功すると、0 以外の値が返ります。
戻り値が 0 以外で、かつ、実際に読み取られたバイト数が 0 の場合、読み取り操作の時点でファイルポインタがファイルの終端を超えていたことを示します。
622
名前:
デフォルトの名無しさん
:03/11/09 11:07
パーティションが分かれてるとか?
623
名前:
デフォルトの名無しさん
:03/11/09 11:37
>>619
XPではHDDの未確保領域が必ずできる仕様になっています。
ttp://homepage2.nifty.com/winfaq/c/ntdisk.html#1118
624
名前:
デフォルトの名無しさん
:03/11/09 11:46
で、結局
>>575
はPeekMessage禁止の理由を言えないワケだが
625
名前:
デフォルトの名無しさん
:03/11/09 13:33
>>624
禁止の理由の一つが
>>592
だと理解できなかったわけか...。
626
名前:
デフォルトの名無しさん
:03/11/09 13:44
まぁSleepを入れれば必ずしも100%にはならないのだが。
つうかそのへんは
>>569
を読めと。
627
名前:
デフォルトの名無しさん
:03/11/09 14:14
普通入れるでしょ
628
名前:
デフォルトの名無しさん
:03/11/09 14:18
>>625
ほほぉ、PeekMessage使うとCPU使用率が100%になるのか
寡聞にして聞いた事がなかったぜ(w
629
名前:
デフォルトの名無しさん
:03/11/09 14:19
>>627
いやだから、寝るくらいなら待てって話でそ。
630
名前:
デフォルトの名無しさん
:03/11/09 14:23
Sleep入れるとたとえSleep(0)だとしても20ms程度の遅延が起きるよ。
631
名前:
デフォルトの名無しさん
:03/11/09 14:28
RDTSC(QueryPerformanceCounter)で時間測って60FPSにしようとすると、
稀に100msくらい止まるってマジ?
でもtimegettimeだと58.8fpsか62.5fpsになっちゃうよね。
flip以外で60fpsにするにはどうしてるの?
(flipだとCPU100%になっちゃうし)
632
名前:
デフォルトの名無しさん
:03/11/09 14:30
>630
タイマの精度の問題だよね
timeBeginPeriod/timeEndPeriodを使うべし
633
名前:
デフォルトの名無しさん
:03/11/09 16:58
アプリを起動する時、WinMain関数のnShowCmdを
指定して起動する事は出来るのですか?
634
名前:
デフォルトの名無しさん
:03/11/09 17:20
できる
635
名前:
デフォルトの名無しさん
:03/11/09 17:36
>>631
それ、たぶん一部のPentium3のバグだと思う。
どっちにしろリフレッシュレートを60Hzにしてない限り、RDTSCでキッチリ
60fpsに調節しても意味ないから、そんなに精度に拘らなくていいよ。
58.8fpsでも全く問題ないし、そもそもNTSCは59.97Hzだから60fpsピッタリ
というのも間違ってる。
NTSCと関係ないなら無理に60fpsに合わせる意味もない。
それでもtimeGetTimeで60fpsにしたい場合は、画面を更新するたびに誤差を
計算しながら16msと17msを切り替える方法があるけど、これだと画面の更新
間隔が一定ではなく1msのゆらぎが出来てしまう。
しかし、例えばリフレッシュレート85Hzのディスプレイに理想的な60fpsの
映像を表示した場合は、表示される時間が11.76msと23.53msの2種類の
フレームが混在することになり、その場合のフレーム間の揺らぎは11ms以上
あるわけで、それに比べたら1msの揺らぎなんて気にするだけ無駄。
>>633
実行ファイルのショートカットを作って、そのショートカットのプロパティ
を覗いてごらん。
636
名前:
633
:03/11/09 18:03
>634-635
ありがとうございます!
637
名前:
デフォルトの名無しさん
:03/11/09 18:50
> 636
>
>>633
>実行ファイルのショートカットを作って、そのショートカットのプロパティ
>を覗いてごらん。
この回答だけでわかったのか…
すげーな。
638
名前:
デフォルトの名無しさん
:03/11/09 21:51
>>637
これでわからん方がすごいと思うが…
639
名前:
デフォルトの名無しさん
:03/11/10 06:44
>>630
それじゃCPU利用率100%に対しては解決になってない。
640
名前:
デフォルトの名無しさん
:03/11/10 06:44
リンク先間違えた
>>632
641
名前:
デフォルトの名無しさん
:03/11/10 09:35
>>640
timebeginperiod使った後でもSleep(1)とtimegettime使って
タイミング待ちすればCPU使用率落ちるだろ。
642
名前:
575
:03/11/10 11:41
要するに空ループぶん廻して平気な面してるのが信じられんということ。
コンシューマーやDOSのように1アプリが全リソース占有してもいい思想ならともかく、
Winは他のタスクとの協調が前提。例えゲームであってもだ。
今は確かにタイムシェアリングで強制的にタスクスイッチするが、それでも無駄に
CPU使っていい訳じゃないぞ。特に最近のは熱が凄いからな。
Sleep入れりゃいいじゃんと言うが、Winアプリとしてはイベントドリブンで処理するのが
真っ当ってモンだろう。
アクション系でそんなややこしいことやってられるか、と言う意見はその通りだと思うが、
それでも常にループ廻す部分は必要最低限にすべき。
メッセージポンプごときでやるべきではないだろ。
万一、シングルスレッドでリアルタイムゲームやろうと思ってるんなら止めた方がいい。
勉強用ならば話は別だが、それで完成を目指すのは無謀。
絶対に完成しないとは言わないが、労力が見合わないことは断言出来る。
643
名前:
デフォルトの名無しさん
:03/11/10 12:06
つーか、1メッセージに1回ゲーム処理入ってるのが良くないんだな。
で、メッセージが溜まりまくって異様に遅くなる事があると。
>>642
どこらへんを縦読みすればいいんだ?
644
名前:
デフォルトの名無しさん
:03/11/10 12:23
>>641
Sleep()使った段階で精度が20msになるから
timeBeginPeriod()を使う意味がないような。
でも
>>639-640
はそもそも激しく勘違いしてたので
忘れてください
645
名前:
デフォルトの名無しさん
:03/11/10 12:29
>>644
SleepはtimeBeginPeriodが反映されるはず
646
名前:
デフォルトの名無しさん
:03/11/10 13:01
あ、なるほど。timeBeginPeriod()で精度を上げるって
話だったのか
647
名前:
デフォルトの名無しさん
:03/11/10 13:04
WaitMessage使いなよ
648
名前:
デフォルトの名無しさん
:03/11/10 15:31
>647
タイムアウトがないから、かえってこねーよ。
MsgWaitForMultipleObjects()だろ。
649
名前:
デフォルトの名無しさん
:03/11/10 22:02
>>642
で、結局「PeekMessageがイケナイ」という話しでは無かった、
というコトか?
>>575
からはそうとは微塵も読みとれない訳だが
650
名前:
デフォルトの名無しさん
:03/11/10 22:03
>>649
粘着質けーよ。。。。。。。。。。。。。。。
651
名前:
デフォルトの名無しさん
:03/11/10 22:10
>>650
ププッ
逃げがそれかよ(w
もっと勉強してから大きな口叩く様にしましょうね
652
名前:
デフォルトの名無しさん
:03/11/10 22:15
>>651
逃げも何もスレ自体呼んでいませんが何かぁぁぁl
653
名前:
デフォルトの名無しさん
:03/11/10 22:16
スレを呼ぶの?
654
名前:
デフォルトの名無しさん
:03/11/10 22:17
呼ぶのです。
こーりんぐみすていく。
655
名前:
デフォルトの名無しさん
:03/11/10 23:10
邪道っぽいんですが、dll呼び出し元のアプリにある
メインウィンドウのハンドルを取得する方法ってありますか?
関数の引数に含める、と言う方法以外で。
656
名前:
デフォルトの名無しさん
:03/11/10 23:13
>>655
呼び出し元がトップレベルウィンドウを複数持っていたらどうする気ですか?
657
名前:
デフォルトの名無しさん
:03/11/10 23:31
トップレベルウィンドウを列挙してDLLを呼び出したプロセスのプロセスIDと
一致するものをリストアップ。
658
名前:
デフォルトの名無しさん
:03/11/11 00:39
UNICODEで作るとWin9x系で動かない以外になんか弊害あるまするか?
659
名前:
デフォルトの名無しさん
:03/11/11 00:41
>>642
普通ゲーム作るときはポーリングだと思うけどなぁ。
紙芝居はその限りじゃないが。
イベントドリブンで、まともなシューティングやら音ゲーなんかは作れるもんなのかい?
660
名前:
デフォルトの名無しさん
:03/11/11 00:57
イベントドリブンのガンシューなら知ってる。
勿論マルチスレッドだけど。
661
名前:
デフォルトの名無しさん
:03/11/11 01:14
A WTL Game Loop
http://www.codeproject.com/wtl/wtlgameloop.asp
WTLだけど出てるコードはほとんどWin32APIだからわかると思う。
662
名前:
デフォルトの名無しさん
:03/11/11 02:10
エミュレータとかソース出てる奴を色々見たけど、ポーリングが多いかも。
663
名前:
デフォルトの名無しさん
:03/11/11 12:11
>>658
動かないんだっけ?
664
名前:
デフォルトの名無しさん
:03/11/11 12:13
>>663
動くよ。
使えるAPIに制限はあるかもしれないけど。
Win9x系でUNICODEが駄目ってのは、MFC使った場合の話だと思う。
665
名前:
デフォルトの名無しさん
:03/11/11 14:24
本気でUNICODEで作るとRegisterClass(Ex)Wの時点で止まると思うが。
666
名前:
デフォルトの名無しさん
:03/11/11 15:05
使えるAPIに制限がある、これ。
667
名前:
デフォルトの名無しさん
:03/11/11 15:23
制限があるつか、そもそも文字列を引数に取るAPIのうちUNICODEが
通るAPIは数えるほどしかない。
668
名前:
デフォルトの名無しさん
:03/11/11 15:26
質問。
垂直スクロールバーを左側に付けるにはどうすればいい?
669
名前:
デフォルトの名無しさん
:03/11/11 15:32
「左に付ける」以外の答えが思い浮かばないわけだが...
670
名前:
668
:03/11/11 15:37
解決しました。 スタイル弄ればできそうです。
671
名前:
デフォルトの名無しさん
:03/11/11 15:48
>>667
基本的には TextOutW とかごく少数の API しかサポートしていないんだけど、
最近の Platform SDK 入れてるんなら、"Microsoft Layer for Unicode"で大半は吸収してくれる。
672
名前:
デフォルトの名無しさん
:03/11/11 19:31
>>658
皆Unicodeで作る
↓
Windows 95/98/98SE/Me等で動かない
↓
Windows 2000/XP/LongHorn売れる
↓
Microsoft儲かる
↓
糞OS(Windows 95/98/98SE/Me等)無くなる
↓
Windows NT系と98系の違いを初心者に偉そうに説明できなくなる
↓
(゚д゚)マズー
673
名前:
デフォルトの名無しさん
:03/11/11 19:36
UNICODEアプリは作ってないけど、
> 糞OS(Windows 95/98/98SE/Me等)無くなる
これは大変有り難いぞ。
ぜひみんなでUNICODEアプリ作ってください。
674
名前:
デフォルトの名無しさん
:03/11/11 19:45
それが理想だけど現実はねぇ・・・。
皆Unicodeで作るというよりは、キラーアプリケーションがUnicodeで作られた方がエンドユーザは動くかも。
例えばny(略
675
名前:
デフォルトの名無しさん
:03/11/11 19:53
まあ何がきっかけになるかはわからんから、とにかくUNICODEで作ってください。
というか、作れ。今すぐだ。3秒以内に反論が無い場合は同意した物とみなす。
676
名前:
デフォルトの名無しさん
:03/11/11 20:03
つかWindows 95/98/98SE/Me等をサポートしないものを作ればいいなら無駄に半透明機能を付けるとか
677
名前:
デフォルトの名無しさん
:03/11/11 21:09
>>676
さらにウィンドウ回転機能を無駄につけて2k,XPなども切り捨てるとか
678
名前:
デフォルトの名無しさん
:03/11/11 21:30
UNICODEに無い漢字とかなかったっけ?
白と臼が似てるから一緒にされた、というような話を昔聞いたことあるんだが。
679
名前:
デフォルトの名無しさん
:03/11/11 21:45
あああ
680
名前:
デフォルトの名無しさん
:03/11/11 23:26
もんがまえにうし?
681
名前:
デフォルトの名無しさん
:03/11/12 00:43
>>676-677
未だに GetDiskFreeSpaceEx を GetProcAddress して呼んでるし
682
名前:
デフォルトの名無しさん
:03/11/12 00:46
でも実際NT系ユーザと9x系ユーザの割合ってどれくらいなんだろう?
XPユーザが増えてきたなんてニュースを見た気がするけど。
683
名前:
デフォルトの名無しさん
:03/11/12 01:55
パソ音痴のうちの姉はME、実家の老母は98使ってますんで
まだまだかと。
684
名前:
デフォルトの名無しさん
:03/11/12 02:01
>>681
うちもそう。開発者以外から見ると9x系ユーザを捨てるメリットが無いんだなこれが。
685
名前:
デフォルトの名無しさん
:03/11/12 02:14
うちのアクセス解析だと50%以上がXPだよ
2kが25%で、98は20%
686
名前:
デフォルトの名無しさん
:03/11/12 03:45
20は結構でかいな。
687
名前:
デフォルトの名無しさん
:03/11/12 03:51
>>681
Win95OSR1とは決別しても罰はあたらない気もする
688
名前:
デフォルトの名無しさん
:03/11/12 10:53
>>684
そうだなー。
そして開発者にとっても、安定する&ちっとだけ速い以外のメリットはあんまない。
つまりユーザーを説得するだけの材料は無いんだなこれが。
689
名前:
デフォルトの名無しさん
:03/11/12 11:32
>>688
>安定する&ちっとだけ速い以外のメリットはあんまない。
実行ファイルサイズ5GBのソフトか、
起動時に5GBのファイル必要なプログラム作れば・・・
いや、テキストボックスを全てUnicodeにして、
完全Unicode対応を歌い、新製品として販売すれば・・・
690
名前:
デフォルトの名無しさん
:03/11/12 11:47
ASCII・UNICODE両方でビルドできるよう意識して書いてる?
_Tマクロとか使ったりして
691
名前:
デフォルトの名無しさん
:03/11/12 12:20
>>690
一応はしている。
使う日が来るとは思ってないがな。
692
名前:
デフォルトの名無しさん
:03/11/12 12:32
てんねっとふれーむわーくに移行すれば
自動的にUnicodeになるがこのスレでは関係のない話でしたね
693
名前:
デフォルトの名無しさん
:03/11/12 12:35
>>678
従来文字コードにある文字は互換性のためすべて分離されてる
だから新しく文字が使えるようになることはあっても
今まで使えていた文字が使えなくなることはない
694
名前:
デフォルトの名無しさん
:03/11/12 14:36
>>690
してる。でもついGetProcAddressにも_T("")を渡しちゃったり。
695
名前:
デフォルトの名無しさん
:03/11/12 14:50
>>694
実際に -D_UNICODE を付けてコンパイルするまで
エラーにならないのが厄介だな
696
名前:
デフォルトの名無しさん
:03/11/12 15:13
なんか、楽したいから無駄に必要スペック上げてる、
って陰口を実証しそうな流れだなぁ……。
697
名前:
デフォルトの名無しさん
:03/11/12 15:40
おまえらNT3.51を見捨てるな!
698
名前:
デフォルトの名無しさん
:03/11/12 16:35
>>696
富豪的プログラミングですよ
699
名前:
デフォルトの名無しさん
:03/11/12 17:08
ハード・OSに合わせてソフトを開発するのは愚の骨頂。
使いたいソフトのためにハード・OSを揃えるのが賢人。
700
名前:
デフォルトの名無しさん
:03/11/12 17:19
>>696
事実ですが伺か?
701
名前:
デフォルトの名無しさん
:03/11/12 17:30
>>699
それ開発側とエンドユーザ側がごっちゃになってないか
702
名前:
デフォルトの名無しさん
:03/11/12 17:37
>>693
従来のUNICODEバージョンに存在する文字は〜、な。
文字セットはかなりブラッシュアップされてるよ。
703
名前:
デフォルトの名無しさん
:03/11/12 18:25
>>702
ソースセパレーションのことを言ったつもりだったんだが。
とりあえず
> 白と臼が似てるから一緒にされた
ってことは絶対無い(そもそも一緒にされてたらこの書き込み
自体できないし)
704
名前:
デフォルトの名無しさん
:03/11/12 18:32
>>703
個別コード内での文字統合は起こってないけど、
漢字圏の文字はまとめられてしまっている。
日本と中国などで字体が違う似た文字は
同一のテキストでは混在できなくなっているよ
705
名前:
デフォルトの名無しさん
:03/11/12 18:34
UNICODEって何?
706
名前:
デフォルトの名無しさん
:03/11/12 18:58
>>704
ここはAPIスレだし話の流れから
シフトJISアプリからの移行を前提に書きますた。
その場合もともと日中の混在なんてできないでしょ。
文字コード周りだけ独自にやるならシフトJISだろうが
Unicodeだろうが関係ないし
707
名前:
デフォルトの名無しさん
:03/11/12 19:00
>>704
は言語タグを使えばできないことも無いけど文字コードとしては
致命的なまでに複雑だな。
>>705
いろんな文字コードをunify(統合、まとめ)された文字コード
universalでもunique(character)でもなんでもない
708
名前:
デフォルトの名無しさん
:03/11/12 19:07
日本語のアプリケーションを開発している限り
今まで使えた日本語の文字が使えなくなることはないし
新たに補助漢字も使えるようになるけど
Unicodeに移行しただけで自動的に多言語対応になるほど
世の中甘くないぞってことで
709
名前:
デフォルトの名無しさん
:03/11/12 19:13
半角全角のマッピング問題でのコード変化は?
710
名前:
デフォルトの名無しさん
:03/11/12 19:17
>>709
Windowsの世界に閉じてる限り問題ないでしょ。
しつこいけどここはAPIスレなので。
むしろ「内部処理用の」コードを「情報交換用の」規格に
合わないとかいう理由でコロコロ変えられたほうが困る。
もちろん内部処理用のコードをそのまま外部に
垂れ流す設計は逝ってよしだが
711
名前:
デフォルトの名無しさん
:03/11/12 19:36
>>699
ハード・ソフト両面からの努力でコストパフォーマンスを両立させるのが技術者
自分のパートだけ楽したいというクズPG →早く今すぐ氏ね
712
名前:
デフォルトの名無しさん
:03/11/12 20:08
unicodeなんて日本語でxmlでしか使わんから
日経ソフトウェアの記事を鵜呑みにしているわけだが、
文字コードの互換性を考えているから、
白と臼みたいなものを一緒にしてしまうのはありえないんじゃ?
ただ、意味でまとめられているみたいだから、
自体の違う日本と中国の漢字では混在ができないんだよね?
713
名前:
デフォルトの名無しさん
:03/11/12 20:14
意味でまとめているのではなく、音と字形でまとめているから
文字の成り立ち背景とかは無視されまくりでどうしようもない。
714
名前:
デフォルトの名無しさん
:03/11/12 20:28
つーか、今のunicodeの割り当てられ方が気に入らないなら、
日本語は後ろの方のコードページに引っ越して再定義すればいいと思うのだが。
たくさん空いているし。
715
名前:
デフォルトの名無しさん
:03/11/12 20:29
unicode ウニコード
@ 漢字なんて使ったこともないアメ公が
英語版ソフトを日本人や中国人にも売れれば儲かるな
みたいな安易な発想のやっつけ仕事で作った文字コード
A 使うと頭がウニになる文字コード
新キラッと解決国語辞典 第45版より
716
名前:
デフォルトの名無しさん
:03/11/12 20:36
>>713
嘘はやめれ
> Ideographs that are unrelated in historical derivation
> (non-cognate characters) have not been unified.
「土」と「士」のようなものは統合しないと
例まで挙げて明確に書かれてるが?
717
名前:
デフォルトの名無しさん
:03/11/12 20:40
CJK部分を誰が作ったのかも知らない奴が知ったかしてるし
まあやっつけ仕事なのは事実だが
期間内に作らなきゃ本当にアメリカの作った案で
通されてしまいかねなかったんだから仕方ない
718
名前:
デフォルトの名無しさん
:03/11/12 20:53
以上のすべての文字コード問題、C#では解決済みでしょうか。
719
名前:
デフォルトの名無しさん
:03/11/12 20:54
C#では強制的にうにこーどになるので
避けたくても避けられません。
720
名前:
デフォルトの名無しさん
:03/11/12 21:08
>719
了解。
721
名前:
デフォルトの名無しさん
:03/11/12 21:41
Unicodeの包摂基準が曖昧なのがむかつく
722
名前:
デフォルトの名無しさん
:03/11/12 22:00
GetClassLong(hWnd, GCL_HICON)
でウィンドウハンドルからアイコンのハンドルを取得しているのだけど
「Windows Media Player」に対しては必ず失敗してしまいます。
解決策を教えてください。
723
名前:
デフォルトの名無しさん
:03/11/12 22:02
結局、\はUnicodeで¥になるのか、バックスラッシュになるのか決着ついたの?
コードはバックスラッシュに変換して、あとはフォントで\と表示しましょうとか?
724
名前:
デフォルトの名無しさん
:03/11/12 22:36
つくわけない
725
名前:
デフォルトの名無しさん
:03/11/12 23:04
APIを勉強することは、業務系SE、PGにとって役に立つことですか?
726
名前:
デフォルトの名無しさん
:03/11/12 23:05
>>725
範囲が広すぎて答えようがない
もっと絞れ
727
名前:
デフォルトの名無しさん
:03/11/12 23:07
>>723
MultiByteToWideCharでは0x5CはU+005Cに変換される。
と答えればこのスレ的にはいいのか?
728
名前:
デフォルトの名無しさん
:03/11/12 23:11
>>726
すいません。
Win32APIを勉強することは、銀行や証券会社等のシステム開発をするSEやPGにとって役に立ちますか?
729
名前:
デフォルトの名無しさん
:03/11/12 23:19
>>728
ED
730
名前:
デフォルトの名無しさん
:03/11/13 00:31
今の多くの業務系(∋銀行証券会社)はDBを使う必然性から
APIレベルのプログラミングよりもSQLやJavaの知識の方が有用。
但し、↑の世界はPGは使い捨て、SEでさえ使い潰すのが当たり前の状況。
なんせ、人件費の安い中国に出した方が安く仕上がるんだからね。
なので、業務系に拘るなら業務知識を身に付けて上流工程に食い込むか
使い捨てられるままに任せるくらいしか生き残る道は無いんで無いかい?
ま、728が今更API覚えて他の世界に行かれるかどうかは知らんが。
731
名前:
デフォルトの名無しさん
:03/11/13 00:38
API使うだけの奴は結局OSの中で生かされているだけ。
OS変わればまったく使えなくなるし覚えなおしだし、
潰しが利かない。
732
名前:
デフォルトの名無しさん
:03/11/13 00:47
>>731
所詮はノイマン型コンピュータ、OSが変わってもAPIの考え方なんて
そんなに変らないので応用は利きます。
ま、APIの機能と言うか使い方を表面的にしか理解していない
香具師は潰しは利かないけど。
733
名前:
280
:03/11/13 00:56
>>730-732
ありがとうございます。
でも
>>730
さんのレスを見てとっても憂鬱になりました。とりあえずjavaやります。
734
名前:
×280 ○728
:03/11/13 00:57
735
名前:
デフォルトの名無しさん
:03/11/13 01:04
>>730
言語と文化の壁があって中々巧くは逝かないのよ。
ソフトウエアは工業製品とは違うからねぇ〜。
736
名前:
デフォルトの名無しさん
:03/11/13 01:13
日本人同士で緊密なコミュニケーションを持っている場合さえ
委託開発にはトラブルがつきものなのに、中国に委託してそう簡単に
うまくいくはずなかろう。
ま、中身ボロボロでもシステムを作ったフリができりゃいいだけ
なら別だけど。
737
名前:
デフォルトの名無しさん
:03/11/13 15:14
>>685
のサイトがXPファンクラブとかだったら、面白いな
738
名前:
デフォルトの名無しさん
:03/11/13 15:43
俺のサイトはWin98が95%、他は誤差だたよ・・・。
全部アタック(;_;)
739
名前:
デフォルトの名無しさん
:03/11/13 15:57
やっぱ仕事ならクライアント、趣味なら自作ソフトのユーザーの統計取った方が確実だな。
雑誌やサイトの調査って所詮その雑誌やサイトを読む層に偏るし。
740
名前:
デフォルトの名無しさん
:03/11/13 19:17
品質が悪くても安い方がいい、という企業はたくさんあるんじゃないか?
まあ、それで思い知ることになるだろうが。
741
名前:
デフォルトの名無しさん
:03/11/13 20:52
>>740
品質の悪さを思い知ったことのないヒヨッ子はおねんねの時間だよ
742
名前:
デフォルトの名無しさん
:03/11/13 22:35
チルトホイールや第4第5ボタンつきマウスのメッセージ拾う方法教えてくらはい。
743
名前:
デフォルトの名無しさん
:03/11/13 22:44
ボタンの方はWM_XBUTTON〜だ罠
744
名前:
デフォルトの名無しさん
:03/11/14 09:43
>>730
>>735
>>736
日経コンピュータ最新刊に野村総研の中国オフショアの成功事例が載ってたね。
#同じ号のニュース欄にはNECの中国オフショアの失敗で損失がでた話も。
745
名前:
デフォルトの名無しさん
:03/11/14 18:02
WindowsXPで標準スクリーンセーバ(WindowsScreenSaverClass)が
表示されている状態で、消去する方法を教えてください。
OpenDesktop、FindWindowでスクリーンセーバが
起動しているかどうか判定できませんでした。
746
名前:
デフォルトの名無しさん
:03/11/14 21:24
EnumProcessesみたいなのもアリかもしれんが、
最初からスクリーンセーバーの起動を禁止させた方が確実じゃない?
747
名前:
デフォルトの名無しさん
:03/11/14 21:33
ちょっと質問なんだけど。
ただのコンソールアプリからAfxBeginThreadを
使用したいんだけど、どのライブラリとヘッダが必要になりますか。
言語はC言語です。
748
名前:
デフォルトの名無しさん
:03/11/14 21:39
>>747
使えねーよ
749
名前:
デフォルトの名無しさん
:03/11/14 21:53
+、-のボタン付きのツリービューで、項目のテキストをダブルクリックしても
子項目が出たり入ったりしないようにするにはどうすればいいでしょうか?
+-ボタンだけで子項目の表示を操作するようにしたいです。
750
名前:
デフォルトの名無しさん
:03/11/14 21:58
>>747
MFC だから afx.h じゃない?
プロジェクトウィザードで適当に MFC アリのコンソールAPでも作って設定見てみるのが
ラクでは。
■過去ログ置き場に戻る■
1-
前250
次250
最新50
DAT2HTML
0.33f Converted.