Win32API質問箱 Build67
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2008/06/08(日) 22:20:46やさしいお兄さんやお姉さんたちが答えてくれるかも。
過去スレ、関連リンクは>>2-10くらい。
■注意
・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。
・日本語版MSDN Online Libraryは不完全です。英語版(http://msdn2.microsoft.com/library/)の利用推奨。
・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。
・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで
- Win32API質問箱 wiki
http://wiki.livedoor.jp/program1/d/FrontPage
Win32API質問箱 Build66
http://pc11.2ch.net/test/read.cgi/tech/1210775622/
0002デフォルトの名無しさん
2008/06/08(日) 22:21:25http://www.microsoft.com/japan/msdn/
- MSDN ライブラリ
http://msdn.microsoft.com/library/
http://msdn.microsoft.com/library/ja/
- MSDN2 ライブラリ
http://msdn2.microsoft.com/en-us/library/
http://msdn2.microsoft.com/ja-jp/library/
- MSDN ライブラリ (ローカル版)
http://www.microsoft.com/downloads/details.aspx?familyid=6FF3BC60-32C8-4C22-8591-A20BF8DFF1A2&displaylang=ja
http://www.microsoft.com/downloads/details.aspx?familyid=B8704100-0127-4D88-9B5D-896B9B388313&displaylang=ja
- Windows SDK & Platform SDK
http://www.microsoft.com/downloads/details.aspx?FamilyID=74dd6e2d-89c6-4e1e-af00-fc7d70f15439&DisplayLang=en
http://www.microsoft.com/downloads/details.aspx?FamilyID=c2b1e300-f358-4523-b479-f53d234cdccf&DisplayLang=en
http://www.microsoft.com/downloads/details.aspx?FamilyID=ff6467e6-5bba-4bf5-b562-9199be864d29&DisplayLang=en
http://www.microsoft.com/downloads/details.aspx?FamilyID=7614FE22-8A64-4DFB-AA0C-DB53035F40A0&displaylang=ja
http://www.microsoft.com/downloads/details.aspx?FamilyId=484269E2-3B89-47E3-8EB7-1F2BE6D7123A
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/XPSP2FULLInstall.htm
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm
0003デフォルトの名無しさん
2008/06/08(日) 22:22:16http://www.google.com/
- 猫でもわかるプログラミング
http://www.kumei.ne.jp/c_lang/
- Win32 API入門
http://wisdom.sakura.ne.jp/system/winapi/
- Win32 プログラミング入門
http://www7.plala.or.jp/keny01/
- Advanced Windows (書籍)
http://www.amazon.co.jp/dp/4756138055
-おまけ
Build19が見たい人で余裕のある人は●でも買ってくれ。
0004デフォルトの名無しさん
2008/06/08(日) 22:23:5765 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/
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/
0005デフォルトの名無しさん
2008/06/08(日) 22:24:3240 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/
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/
0006デフォルトの名無しさん
2008/06/08(日) 22:25:4920 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
0007デフォルトの名無しさん
2008/06/08(日) 22:30:2020 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
0008デフォルトの名無しさん
2008/06/08(日) 22:32:100009前スレ958
2008/06/08(日) 22:37:52>>958
>>959のとおり、イベントログに情報がある。
ただ、OS起動やシャットダウンイベントはデフォルト設定だと記録されないはずなので、
設定を変えるか、もっと簡単にやりたいなら正確ではないけどイベントログサービスの
起動/停止時間をOS起動/シャットダウン時間とみなしてしまうやり方もある。
例がWin32APIでなくて申し訳ないけど、以下WMIのインタフェース使うスクリプトの例。
var query =
"Select * from Win32_NTLogEvent where " +
"LogFile = 'System' and SourceName = 'EventLog'";
var systemlogs = GetObject("winmgmts:!\\\\.\\root\\cimv2").ExecQuery(query);
var e = new Enumerator(systemlogs);
for (; ! e.atEnd(); e.moveNext()) {
var log = e.item();
if (log.EventCode == 6005) {//イベントログサービス起動
WScript.Echo("起動: "+log.TimeGenerated);
}
else if (log.EventCode == 6006) {//イベントログサービス停止
WScript.Echo("停止: "+log.TimeGenerated);
}
}
めちゃ助かりました。ありがとうございます。
0010前スレ958
2008/06/08(日) 22:39:52public static DateTime イベントログの前回停止時間()
{
EventLog[] logs = EventLog.GetEventLogs("."); // ローカルコンピュータ
DateTime result = DateTime.MinValue;
bool ok = false;
foreach (EventLog log in logs)
{
if (log.Log != "System") continue;
foreach (EventLogEntry e in log.Entries)
{
if (e.EventID != 6006) continue;
if (e.TimeGenerated > result)
{
result = e.TimeGenerated;
ok = true;
}
}
}
if (!ok)
{
throw new ApplicationException("イベントログの前回停止時間の取得失敗");
}
return result;
}
0011デフォルトの名無しさん
2008/06/08(日) 22:50:52スレ違い。邪魔。
0012デフォルトの名無しさん
2008/06/08(日) 22:55:09おつ
0013デフォルトの名無しさん
2008/06/08(日) 23:03:030014デフォルトの名無しさん
2008/06/08(日) 23:05:46スルーしとけ お前も邪魔
0015デフォルトの名無しさん
2008/06/08(日) 23:06:56ごめんなさい
0016デフォルトの名無しさん
2008/06/08(日) 23:36:200017デフォルトの名無しさん
2008/06/08(日) 23:46:500018デフォルトの名無しさん
2008/06/08(日) 23:47:000019デフォルトの名無しさん
2008/06/09(月) 00:01:46�d
0020デフォルトの名無しさん
2008/06/09(月) 12:45:41>>前スレ904
ファイルをD&Dで渡す動作を再現するならTMPGEncのHWNDを検索で見付け、
HDROPを自前で作ってWM_DROPFILESを投げればいい
HDROPの作り方は検索すれば出てくる
0021デフォルトの名無しさん
2008/06/09(月) 12:54:240022デフォルトの名無しさん
2008/06/09(月) 13:13:380023デフォルトの名無しさん
2008/06/09(月) 14:47:22全スレ>>73 を参考にコードを書いてみたのですが、まったく反応なし。
>>53で非推奨されている
keybd_event(0, MapVirtualKey(DIK_A) ,KEYEVENTF_SCANCODE ,0)
とかやってみたけどダメだった.
JoyToKeyではちゃんと送れているので、方法がない訳じゃないとは思うんだけど...
他のやり方があれば教えてくれ。
0024デフォルトの名無しさん
2008/06/09(月) 15:08:300025デフォルトの名無しさん
2008/06/09(月) 15:15:150026デフォルトの名無しさん
2008/06/09(月) 15:33:230027デフォルトの名無しさん
2008/06/09(月) 15:47:27知らないならレスするなカス
0028デフォルトの名無しさん
2008/06/09(月) 15:51:470029デフォルトの名無しさん
2008/06/09(月) 18:26:08当然教えないよ
ゴミ君
0030デフォルトの名無しさん
2008/06/09(月) 18:49:18※すべて同一人物です
0031デフォルトの名無しさん
2008/06/09(月) 19:05:170032デフォルトの名無しさん
2008/06/09(月) 19:12:220033デフォルトの名無しさん
2008/06/09(月) 19:22:580034デフォルトの名無しさん
2008/06/09(月) 19:25:420035デフォルトの名無しさん
2008/06/09(月) 20:16:50| `゙''ー- 、 ________
| ,. -‐ ''´ ̄ ̄`ヽ、_ /
|, - '´ ̄ `ヽ、 /
/ `ヽ、ヽ /
_/ ヽヽ/
/ / / / / / ヽハ
く / /! | 〃 _/__ l| | | | | | | ||ヽ
\l// / | /|'´ ∧ || | |ー、|| | | l | ヽ
/ハ/ | | ヽ/ ヽ | ヽ | || /|ヽ/! |/ | ヽ
/ | ||ヽ { ,r===、 \| _!V |// // .! |
| || |l |ヽ!'´ ̄`゙ , ==ミ、 /イ川 |─┘
| ハ|| || | """ ┌---┐ ` / // |
V !ヽ ト! ヽ、 | ! / //| /
ヽ! \ハ` 、 ヽ、__ノ ,.イ/ // | /
┌/)/)/)/)/)/)/)/)/)/)lー/ ` ー‐┬ '´ レ//l/ |/
|(/(/(/(/(/(/(/(/(/(/│|| |\ 〃
r'´ ̄ヽ. | | ト / \
/  ̄`ア | | | ⌒/ 入
〉  ̄二) 呼んでないが | | | / // ヽ
〈! ,. -' | | ヽ∠-----', '´ ',
| \| | .お前の態度が | |<二Z二 ̄ / ',
| | | _r'---| [ ``ヽ、 ',
| | | 気に入らない >-、__ [ ヽ !
\.| l. ヽ、 [ ヽ |
ヽ| \ r' ヽ、 |
0036デフォルトの名無しさん
2008/06/09(月) 20:47:57どうすれば出来ますか?
0037デフォルトの名無しさん
2008/06/09(月) 22:06:580038デフォルトの名無しさん
2008/06/09(月) 22:16:36case WM_SYSCOMMAND:
switch(LOWORD(wp)) {
case SC_RESTORE:
result = ::AnimateWindow(hWnd, 1000, AW_ACTIVATE | AW_CENTER);
if(!result) {
LPWSTR lpMessage = 0;
DWORD error = ::GetLastError();
CONSOLEMSG(L"ERROR:[%d]\n", error);
if( ::FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER |FORMAT_MESSAGE_FROM_SYSTEM,
NULL, error, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
lpMessage, 0, NULL) ) {
if(!lpMessage)
MessageBox(hWnd, lpMessage, NULL, MB_OK);
} else {
error = ::GetLastError();
CONSOLEMSG(L"ERROR:[%d]\n", error);
}
}
break;
case SC_MINIMIZE:
::AnimateWindow(hWnd, 500, AW_HIDE | AW_CENTER);
ShowWindow(hWnd, SW_MINIMIZE);
return TRUE;
}
break;
003938
2008/06/09(月) 22:19:08上記のように元に戻すときのアニメーション書いたんですがうまくいきません。
原因が分かる方教えてください
0040デフォルトの名無しさん
2008/06/09(月) 22:40:420041デフォルトの名無しさん
2008/06/09(月) 22:48:43うまくいかない、じゃなくて具体的な現象を書けよ。
原因究明の重要な情報なんだからさ。
004238
2008/06/09(月) 22:59:19説明足がたらず、すみません。
最小化時はウィンドウのアニメーションが実行されるんですが、
元に戻すときにAnimateWindowが失敗してアニメーションが実行されないんです。
GetLastErrorでエラーをチェックすると正常終了のIDがセットされているので原因がよく分からないのです。
ちなみにCONSOLEMSGはOutputDebugStringのマクロです。
0043デフォルトの名無しさん
2008/06/09(月) 23:00:57どのように計算すればいいのでしょうか?
0044デフォルトの名無しさん
2008/06/09(月) 23:12:39以下の関数を使う。
int ListView_GetColumnMargin(HWND hwnd) { return 4; }
ListView_GetColumnMargin はおおよそのマージンを返します。
0045デフォルトの名無しさん
2008/06/09(月) 23:45:33これはひどい
0046デフォルトの名無しさん
2008/06/09(月) 23:49:56004744
2008/06/10(火) 00:18:38int ListView_GetColumnMargin(HWND hwnd) { return 6; }
>>45-46
一応マジレスなんだが。
正確には GetSystemMetrics(SM_CXEDGE) * 3 らしいが。
0048デフォルトの名無しさん
2008/06/10(火) 00:26:550049デフォルトの名無しさん
2008/06/10(火) 00:32:170050デフォルトの名無しさん
2008/06/10(火) 00:44:55AW_ACTIVATEは非表示状態から表示させるもので、Restoreさせるものではないから。
005138
2008/06/10(火) 01:37:26なるほど!
ということは、Restoreさせた後にウィンドウのアニメーションをさせたい場合は、
独自メッセージを飛ばす必要があるのでしょうか?
それともRestoreされたことを通知するメッセージがあるのでしょうか?
WM_ACTIVEをキャッチすることも考えたんですが、
Restoreされたときだけを抜き出す方法が思いつかなかったのでアドバイスお願いします。
また、アニメーションさせるとき1度SW_HIDEで非表示にしてAW_ACTIVATEで表示させるという流れでいいのでしょうか
0052デフォルトの名無しさん
2008/06/10(火) 03:43:330053デフォルトの名無しさん
2008/06/10(火) 06:09:59間違っています。
以上。
はい次の方。
0054デフォルトの名無しさん
2008/06/10(火) 08:00:26間違ってないよ
知らないならレスしないでね
0055デフォルトの名無しさん
2008/06/10(火) 08:03:19入出力自体はできた(と思う)のですが,最後の
CloseHandle(hFile); の戻り値を HRESULT result としてデバッガで
追いかけてみると, 正常終了したはずなのに S_FALSE が返ってきます.
下記のサイトのサンプルでも試してみたのですが,同じでした.
同様の問題をご存知の方がいらっしゃいましたら教えて下さい.
http://wisdom.sakura.ne.jp/system/winapi/win32/win113.html
0056デフォルトの名無しさん
2008/06/10(火) 08:05:400が偽(失敗)で、それ以外の値は真(成功)。
ちなみにS_FALSEの値ははたしか1のはず。
005755
2008/06/10(火) 08:40:38すみません.
調べてみたらその通りでした.
CloseHandle() で F1 押して
CBlobCache::CloseHandle
の説明を見てました.
それにしても, 戻り値の 1, 0, -1
の区別は統一性が無いですね.
(自分が知らないだけで良い覚え方とかあるのかな.)
素早い返信ありがとうございました.
さすが2ch.
0058デフォルトの名無しさん
2008/06/10(火) 09:08:460059デフォルトの名無しさん
2008/06/10(火) 09:58:590060デフォルトの名無しさん
2008/06/10(火) 10:05:17それ、せめてMSDNには "戻り値はTRUE, FALSE" って書いてほしい
戻り値がnonzeroとか書かれると、if文で戻り値を判定するときにそういう条件文を書くべきなのか迷う
0061デフォルトの名無しさん
2008/06/10(火) 10:13:430062デフォルトの名無しさん
2008/06/10(火) 10:24:00なんてやってる人のコードは信用できないよな
0063デフォルトの名無しさん
2008/06/10(火) 10:40:28どういう設計なんだよ
0064デフォルトの名無しさん
2008/06/10(火) 10:48:100065デフォルトの名無しさん
2008/06/10(火) 10:54:53006660
2008/06/10(火) 11:28:06そういうコードを書きたくないから言ってるんだよ…
BOOLを戻すと宣言してあるなら、それ以上の判定は必要ないのはわかるよ。実際書かないし。
nonzero(数値)を戻すなら、せめて "ブール値の真として..." くらい書いてくれないかなってこと
CのAPIである以上、数値のnonzeroとブール値の真は同じだからどっちが書いてあっても気にするなってことなのかな
0067デフォルトの名無しさん
2008/06/10(火) 11:44:390068デフォルトの名無しさん
2008/06/10(火) 11:57:25間違いだらけだ。
0070デフォルトの名無しさん
2008/06/10(火) 12:45:310071デフォルトの名無しさん
2008/06/10(火) 13:00:18ブール値の概念は存在しているが規格には書かれていない ってところかな
0072デフォルトの名無しさん
2008/06/10(火) 15:45:32そのボタンにアクセラレータ?(SHIFT+'A')をつけたいのですが、
CreateWindowExで作成したボタンにアクセラレータをつけるにはどうすればいいのでしょうか?
環境はVC+SDKです。よろしくお願いします
0073デフォルトの名無しさん
2008/06/10(火) 15:49:07CreateAcceleratorTable
0075デフォルトの名無しさん
2008/06/10(火) 17:16:000076デフォルトの名無しさん
2008/06/10(火) 17:18:48まさかとは思うが、「ボタン(A)」(Alt+A)のことじゃないだろうな?
こっちはボタンのキャプションを「ボタン(&A)」にすれば勝手に機能するぞ。
0077デフォルトの名無しさん
2008/06/10(火) 17:23:27ボタンのクリックをシミュレートするものではない。
0078デフォルトの名無しさん
2008/06/10(火) 17:34:29Win95で適当に試した結果
EnableWindow(hwnd, TRUE) で成功するとTRUEではなく 8 が返ってくる。
EnableWindow(hwnd, 0x10000) は失敗する。(下位16ビットしか見ていないらしい)
GetWindowRect(hwnd, &rect) で成功するとTRUEではなく 500 〜 599 が返ってくる。
ShowWindow(hwnd, SW_SHOW) で直前に表示されているとTRUEではなく 16 が返ってくる。
こういう謎な仕様は9x系で終わっていてほしい。
とりあえず上のAPIはNTでは大丈夫っぽいが。
0079デフォルトの名無しさん
2008/06/10(火) 17:35:430080デフォルトの名無しさん
2008/06/10(火) 17:37:410081デフォルトの名無しさん
2008/06/10(火) 17:45:39APIのリファレンスに、引数はTRUE/FALSEを指定するとある。
zero/nonzeroとは書いてない。
戻り値は、zero/nonzeroと書いてある。
TRUE/FALSEを返すなんて書いてない。
説明は正しい。
0082デフォルトの名無しさん
2008/06/10(火) 17:54:05>>78は、仕様がおかしいって言いたいんだろ?
0083デフォルトの名無しさん
2008/06/10(火) 17:58:44説明の正しさ、じゃなくてBOOLなのにTRUE/FALSE以外を返すなということ。
GetMessageのように意味があってTRUE/FALSE以外を返すわけでも無さそうだし。
0084デフォルトの名無しさん
2008/06/10(火) 18:27:39そして互換性のためにうっかり変えられない、と。
0085デフォルトの名無しさん
2008/06/10(火) 18:30:170086デフォルトの名無しさん
2008/06/10(火) 18:33:22008772
2008/06/10(火) 18:37:18レスありがとうございます
>>77 が僕が今詰まってる問題に一番近いっぽいです ><。
アクセラレータは動いてるのですが、ボタンシミュレートが問題です。
0088デフォルトの名無しさん
2008/06/10(火) 18:38:510090デフォルトの名無しさん
2008/06/10(火) 19:48:360091デフォルトの名無しさん
2008/06/10(火) 23:50:18実装効率を考えると真の際 TRUE 以外の値を返した方がいい場合もある。
TRUE しか返さない、としてしまうと、その効率のいい実装が取れなくなってしまう。
例えば is 系関数の戻り値を戻り値にしたい場合とか。
is 系関数はメモリ効率のため全ての関数で1つのテーブルを共有し、
ビット演算を使ってそれぞれの関数の戻り値を決めるよう実装されている場合がある。
int isalpha(int letter) { return table[letter] & 1; }
int isdigit(int letter) { return table[letter] & 2; }
int isalnum(int letter) { return table[letter] & 3; }
みたいな感じで。
こういう関数を戻り値に直接指定したい場合とか、0/1 にならないことがある。
そして、果たして BOOL の戻り値を作成する際に使った関数が
全て真偽を 0/1 で返すと確かめることはできるだろうか?
もしかしたら急に仕様が変えられるかもしれない。
それを考えて常に isalpha(ch) ? TRUE : FALSE のように書く事はできるかもしれないけど、
無駄も多いし書き忘れるミスを犯す事もあるだろう。
結局、bool 型のように true/false の2値性を保証する型で typedef されていない以上、
BOOL は 0/1 の2値性を保証しない方が安全ということになる。
TRUE や FALSE は真偽値を与える箇所で
条件式を書く事無くダイレクトに真か偽かを指定するために使う物であって、
比較に使う物ではない。
そもそも真偽値をさらに比較するという発想自体が
二度手間の無駄な発想としか言いようが無い。
0092デフォルトの名無しさん
2008/06/10(火) 23:53:360/非0で考えろ
0093デフォルトの名無しさん
2008/06/11(水) 00:28:41比較とかの評価結果は0/1で返すと決まってるし。
どちらかというと、アセンブラレベルの話だな。
BOOLを0/1へ変換するなら !!value で一応はできるな。
見た目が宜しくないのでお勧めはしないけど。
0094デフォルトの名無しさん
2008/06/11(水) 00:31:39CComPtr<IHTMLDocument2> aDoc;
aDoc.CoCreateinstance(CLSID_HTMLDOCUMENT);
aDoc->put_URL(CComBSTR("http://~")); //URLの読み込み(のつもり)
aDoc->get_images()
この put_URL を使うとブラウザで引数のURLを開いてしまい、また、get_imagesで取得したイメージコレクションのサイズが0になっています。
まず、「ブラウザを開かないでHTMLを解析したい」のと、「get_images で取得できていない」理由がよく解りません。
コマンドラインから使うツールのつもりなのでCUIの方がうれしいのですが、ダイアログかなにかで表示させる必要があるのでしょうか?
#イメージとしてはURLを引数で渡すとそのページのIMG src="***" を抽出するプログラムです。
0095デフォルトの名無しさん
2008/06/11(水) 00:38:26条件式は 0/1 を返すが、
if 文や while 文などの中身は 0/非0 で判定するから
C で考えるなら 0/非0 だな。
0096デフォルトの名無しさん
2008/06/11(水) 00:50:47処理系依存
0097デフォルトの名無しさん
2008/06/11(水) 00:52:540098デフォルトの名無しさん
2008/06/11(水) 02:58:430099デフォルトの名無しさん
2008/06/11(水) 03:00:220100デフォルトの名無しさん
2008/06/11(水) 08:44:32Win32なんて基本的に妄想が中心だろ
MSDNに載ってないような事をしたければ妄想するしかないし
0101デフォルトの名無しさん
2008/06/11(水) 08:45:320102デフォルトの名無しさん
2008/06/11(水) 09:56:180103デフォルトの名無しさん
2008/06/11(水) 10:03:460104デフォルトの名無しさん
2008/06/11(水) 10:07:050105デフォルトの名無しさん
2008/06/11(水) 10:08:200106デフォルトの名無しさん
2008/06/11(水) 10:08:550107デフォルトの名無しさん
2008/06/11(水) 10:10:010108デフォルトの名無しさん
2008/06/11(水) 10:21:250109デフォルトの名無しさん
2008/06/11(水) 10:25:260110デフォルトの名無しさん
2008/06/11(水) 10:26:120111デフォルトの名無しさん
2008/06/11(水) 10:33:120112デフォルトの名無しさん
2008/06/11(水) 10:36:370113デフォルトの名無しさん
2008/06/11(水) 10:39:16IHTMLDocument2 を使うことが絶対条件なの?
0114デフォルトの名無しさん
2008/06/11(水) 12:32:550115デフォルトの名無しさん
2008/06/11(水) 12:36:22bool Successed = Hoge(...) != 0;
としてる。
0116デフォルトの名無しさん
2008/06/11(水) 12:40:17011760
2008/06/11(水) 12:57:43いまさらMSDN書き替えられても困るし
で、結局>>68の指摘してる間違いってなんなんだ?
すごく気になるんだけど
0118デフォルトの名無しさん
2008/06/11(水) 13:06:500119デフォルトの名無しさん
2008/06/11(水) 13:13:400120デフォルトの名無しさん
2008/06/11(水) 14:21:09API自体は言語関係ないからね。
そう考えると、Cの文法や流儀を元に議論するのはナンセンスかもしれん。
0121デフォルトの名無しさん
2008/06/11(水) 14:31:32文字列がナルターミネートな時点でC前提だろ
0122デフォルトの名無しさん
2008/06/11(水) 14:35:030123デフォルトの名無しさん
2008/06/11(水) 14:54:480124デフォルトの名無しさん
2008/06/11(水) 14:58:36まあC用だな、他の言語はそれにあわせてるだけ。
0125デフォルトの名無しさん
2008/06/11(水) 15:05:18そんな事もわからない素人が増えちゃったんだね・・・
0126デフォルトの名無しさん
2008/06/11(水) 15:17:410127デフォルトの名無しさん
2008/06/11(水) 15:19:190128デフォルトの名無しさん
2008/06/11(水) 15:20:510129デフォルトの名無しさん
2008/06/11(水) 15:21:360130デフォルトの名無しさん
2008/06/11(水) 15:29:140131デフォルトの名無しさん
2008/06/11(水) 15:29:520132デフォルトの名無しさん
2008/06/11(水) 15:41:590133デフォルトの名無しさん
2008/06/11(水) 15:53:550134デフォルトの名無しさん
2008/06/11(水) 16:34:53つまり荒らしは2名
0135デフォルトの名無しさん
2008/06/11(水) 16:51:300136デフォルトの名無しさん
2008/06/11(水) 17:02:540137デフォルトの名無しさん
2008/06/11(水) 17:06:370138デフォルトの名無しさん
2008/06/11(水) 17:15:140139デフォルトの名無しさん
2008/06/11(水) 17:23:450140デフォルトの名無しさん
2008/06/11(水) 17:43:15人格1: >>135
人格2: >>137
人格3: >>139
人格4〜16: Idle
最大16人格まで拡張可能
それぞれの人格は並列動作
(例えば人格1から人格2〜16のレスを見ても同一人物であるという認識は本人には無い)
記憶装置(脳)は16人格で共有されるため、正常な人間に比べて人格それぞれの知識は16分の1
0141デフォルトの名無しさん
2008/06/11(水) 17:54:060142デフォルトの名無しさん
2008/06/11(水) 17:57:370143デフォルトの名無しさん
2008/06/11(水) 18:01:290144デフォルトの名無しさん
2008/06/11(水) 18:06:050145デフォルトの名無しさん
2008/06/11(水) 18:20:270146デフォルトの名無しさん
2008/06/11(水) 18:43:19014794
2008/06/11(水) 18:45:28> >>94
> IHTMLDocument2 を使うことが絶対条件なの?
いえ、HTMLの解析が簡単にできればIHTMLDocument2でなくても問題ないです。
MSDNの中を探してたらそれらしいメソッドがIHTMLDocument2に見つかったので使っている所です。
ブラウザを開かないのはIHTMLDocument4::CreateDocumentFromURLを使えばいいのかなぁ
0148デフォルトの名無しさん
2008/06/12(木) 00:36:01もし、htmlソースが文字列として得られるのなら、
・空のドキュメントにhtmlをwriteしてDOMを作ったことはあるなあ。
・普通に文字列処理で何とかするのも手。
・TidyとかでXHTMLにしてXMLパーサに読ませるとか。
URLがあるんなら、そういう時のためのいいやり方が別にあるような気はするけど。
あと、こっちのスレの方が詳しいかもしれない。
IEコンポーネントを使い倒すスレ Ver.2
http://pc11.2ch.net/test/read.cgi/tech/1145189322/
0149デフォルトの名無しさん
2008/06/12(木) 02:24:06用途が分からないから判断が難しいけど、
IHTMLDocument2だとブラウザは開くねぇ。隠したとしても音が残る。
XMLパーサーだと規約に沿ってないとエラーになる。
簡単なのはWinInetを使って、正規表現を使って解析することかなぁ。
0150デフォルトの名無しさん
2008/06/12(木) 03:14:42APIフックして音を消せば?ってのがこのスレ的な回答かな
0151デフォルトの名無しさん
2008/06/12(木) 07:03:47押しても全角モードに切り替わらない良い方法はありませんか
0152デフォルトの名無しさん
2008/06/12(木) 12:21:130153デフォルトの名無しさん
2008/06/12(木) 14:41:05詳しく
0154デフォルトの名無しさん
2008/06/12(木) 14:53:390155デフォルトの名無しさん
2008/06/12(木) 15:06:350156デフォルトの名無しさん
2008/06/12(木) 15:16:200157デフォルトの名無しさん
2008/06/12(木) 15:20:030158デフォルトの名無しさん
2008/06/12(木) 15:33:130159デフォルトの名無しさん
2008/06/12(木) 15:45:140160デフォルトの名無しさん
2008/06/12(木) 16:49:07少しでも反応があれば自分は必要とされているんだと勝手に勘違いして納得する
それがかまってちゃん
こうして俺たちがかまってあげているうちは街中で無差別殺人なんてしないだろうから
人助けの一つだと考えて適当に相手してあげておいた方がいいかもな
0161デフォルトの名無しさん
2008/06/12(木) 16:54:19こうですか!わかりません><
0162デフォルトの名無しさん
2008/06/12(木) 16:55:350163デフォルトの名無しさん
2008/06/12(木) 18:52:04ヒット数が意外と少ないんですがとりあえず
SetWindowsHookEx WH_KEYBOARD WM_INITDIALOG
あたりを使う方法でいいのでしょうか?
0164デフォルトの名無しさん
2008/06/12(木) 18:53:220165デフォルトの名無しさん
2008/06/12(木) 19:20:16どうもです。そのものずばりの情報はなかなか見つかりませんね。
範囲があまりにも広いのですが絞るとほとんどhitせず・・・もう少し調べてみます
0166デフォルトの名無しさん
2008/06/12(木) 21:02:180167デフォルトの名無しさん
2008/06/12(木) 21:14:24deleteする時に予めデストラクタを呼んでおく必要はありますか?
って聞いてるようなモンだぞ
0168デフォルトの名無しさん
2008/06/12(木) 21:26:55DestroyWindow()するだけで良いのですね。
ありがとうございました。
0169デフォルトの名無しさん
2008/06/12(木) 21:52:18kbdacc とか 秀Caps のようなキーリピートの高速化ってどうやって実現してるんでしょうか?
SystemParametersInfo で設定できる値よりずっと速くできるようですが。
0170デフォルトの名無しさん
2008/06/12(木) 22:15:27自プロセスへのフックは簡単だと思うけど‥‥他プロセスやグローバルフックになると共有メモリとかの処理が必要になってくるけど
0171デフォルトの名無しさん
2008/06/12(木) 22:17:16気にせず教えてください…?頭わいてんのか?
0172デフォルトの名無しさん
2008/06/12(木) 22:29:330173デフォルトの名無しさん
2008/06/12(木) 22:33:160174デフォルトの名無しさん
2008/06/12(木) 22:54:35ずっと速くできるようですが気にせず設定してください
0175デフォルトの名無しさん
2008/06/12(木) 23:12:310176デフォルトの名無しさん
2008/06/12(木) 23:15:390177デフォルトの名無しさん
2008/06/12(木) 23:21:100178デフォルトの名無しさん
2008/06/13(金) 00:14:46レスありがとうございます。
後一つわからないことがありまして、
ツールバーの高さを変えるにはどうすればいいですか?
0179デフォルトの名無しさん
2008/06/13(金) 00:15:13APIの大文字小文字は区別されます。嘘を書くのをやめましょう。
0180デフォルトの名無しさん
2008/06/13(金) 00:16:35ボタンを大きくする
0181デフォルトの名無しさん
2008/06/13(金) 00:28:58ありがとうございます。
御礼に私の集めた女子高生画像10枚ほどぅpしようと思うのですが
0182デフォルトの名無しさん
2008/06/13(金) 00:33:42早く汁
ttp://www.uploda.org/
0183デフォルトの名無しさん
2008/06/13(金) 01:00:03偽者&自作自演乙
0184デフォルトの名無しさん
2008/06/13(金) 01:10:320185デフォルトの名無しさん
2008/06/13(金) 01:13:02http://mbup.net/p.php?p=44503.jpg
こんな感じのでよいでしょうか?
0186デフォルトの名無しさん
2008/06/13(金) 01:36:200187デフォルトの名無しさん
2008/06/13(金) 02:35:45かまってほしいです。
実のところMoveWindowでツールバーの移動が出来ませんでした。
0188デフォルトの名無しさん
2008/06/13(金) 02:55:070189デフォルトの名無しさん
2008/06/13(金) 03:12:29ググッたらその辺のサンプルは、見つかると思うよ
0190デフォルトの名無しさん
2008/06/13(金) 05:09:14クローズボタンなんかだと移動出来てるぽいから出来ると思うのですが…
0191デフォルトの名無しさん
2008/06/13(金) 10:24:01親ウィンドウ(レイヤードウィンドウ)にメディアプレイヤーを埋め込んでいるのですが、
WS_EX_Layeredで親ウィンドウを生成し、SetLayeredWindowAttributesで透明度を設定すると、
メディアプレイヤーの動画部分が黒く表示されます(再生はされているみたいです)
親ウィンドウを動かしてみると、一瞬だけ動画が表示され、動かすのをやめるとまた消えてしまいます。
これはどういった原因があるでしょうか。
親ウィンドウをレイヤードウィンドウにしなかった場合は、そのまま表示されます。
0192デフォルトの名無しさん
2008/06/13(金) 11:24:590193デフォルトの名無しさん
2008/06/13(金) 11:28:430195デフォルトの名無しさん
2008/06/13(金) 14:12:25です。
0196デフォルトの名無しさん
2008/06/13(金) 15:19:53文字型charには代入できなくなったのですか?新しい型?
0197デフォルトの名無しさん
2008/06/13(金) 15:21:140198デフォルトの名無しさん
2008/06/13(金) 15:27:26ググれば、その辺はすぐ見つかるよー
0199デフォルトの名無しさん
2008/06/13(金) 15:28:162003で止まってるから知らんが。
0200デフォルトの名無しさん
2008/06/13(金) 15:39:25wParamをintでキャストするような方法でいいのでしょうか
0201デフォルトの名無しさん
2008/06/13(金) 15:40:250202デフォルトの名無しさん
2008/06/13(金) 15:41:20秒殺レスさんくす
0203デフォルトの名無しさん
2008/06/13(金) 16:05:45WMPが動画をオーバーレイで表示してるなら、不思議な挙動ではないな。
ビデオオーバーレイは画面上のビデオ表示領域にあるピクセルが特定の色だった場合に、そのピクセルに動画を表示する。
よって半透明にした結果、そのピクセルの色が変わってしまえば動画が表示されなくてもおかしくはない
0204デフォルトの名無しさん
2008/06/13(金) 16:20:560205デフォルトの名無しさん
2008/06/13(金) 16:27:34アプリの背景色をその色にすると面白い事になるよね
0206デフォルトの名無しさん
2008/06/13(金) 16:32:23気分がいいので
今から写メを20枚ぅpしてやんよ!!!
0207デフォルトの名無しさん
2008/06/13(金) 16:50:01http://mbup.net/d/44547.jpg
http://mbup.net/d/44549.jpg
http://mbup.net/d/44552.jpg
http://mbup.net/d/44554.jpg
0208デフォルトの名無しさん
2008/06/13(金) 16:54:400209デフォルトの名無しさん
2008/06/13(金) 17:53:16WMPでオーバーレイを使わない設定にすれば見えなくなることはなくなるけど、透けないしちらつくんだよな。
0210デフォルトの名無しさん
2008/06/13(金) 20:52:48case WM_NOTIFY:
switch (((LPNMHDR)lp)->code)
{
case TTN_NEEDTEXT:
LPTOOLTIPTEXT ptt = (LPTOOLTIPTEXT)lp;
lstrcpy(ptt->lpszText, 表示するテキスト);
break;
default:
return FALSE;
}
とすると、数十字程度の場合は正常に動作しますが、300文字等文字数を増やすとデバッグ実行時でもエラーが出ずに突然落ちてしまいます。
原因は何でしょうか。
因みにTTM_UPDATETIPTEXTでは正常に動作しました。
>>196
所謂TCHAR型だから、プロパティでマルチバイトを選択すればchar、Unicodeを選べばwchar_tとコンパイラは解釈する。
0211デフォルトの名無しさん
2008/06/13(金) 21:18:19szText メンバで指定したバッファにテキストをコピーする。
テキストが入っているバッファのアドレスを lpszText メンバにコピーする。
文字列リソースの識別子を lpszText メンバにコピーし、そのリソースが入っているインスタンスのハンドルを hinst メンバにコピーする。
MSDNくらいちゃんと確認汁
0212デフォルトの名無しさん
2008/06/13(金) 21:24:54バッファオーバーラン
今時そんなバグを平気で出しちゃうCプログラマは
偉そうにTCHAR型の講釈している場合じゃないよ
0213デフォルトの名無しさん
2008/06/13(金) 21:25:280214デフォルトの名無しさん
2008/06/13(金) 21:31:45ある条件を満たしたとき、(タスクバーの)(右)隣のウィンドウに切り替えたいんですけど。
Alt+Tabのキーボードエミュレートだと、直前のやつにしか切り替え不可ですよね・・?
Tabの押す回数をうまく制御すればいいんですかね?
他にもっとスマートな方法ありますか??
あと、上記のような不特定多数のタスクがある状況で動くものと、
特定の(例えばWMPとか、決まったアプリをアクティブにする)をアクティブにするものも知りたいです。
ちなみにC++(VC2008ExpressEdition)です。
ご教授のほどお願いします。
0215デフォルトの名無しさん
2008/06/13(金) 21:36:05FindWindow
GetWindowThreadProcessId
SetActiveWindow
SetForegroundWindow
0216デフォルトの名無しさん
2008/06/13(金) 21:36:2880文字分しかないバッファに300文字コピーしたら
バッファオーバーランするに決まってるだろ。
0217デフォルトの名無しさん
2008/06/13(金) 22:08:450218デフォルトの名無しさん
2008/06/13(金) 22:09:500219デフォルトの名無しさん
2008/06/13(金) 22:11:450220デフォルトの名無しさん
2008/06/13(金) 22:31:36単純明快かつわかりやすい回答、ありがとうございます。
0221デフォルトの名無しさん
2008/06/13(金) 22:34:570222デフォルトの名無しさん
2008/06/13(金) 22:39:30騙りウザイ
0223デフォルトの名無しさん
2008/06/13(金) 22:40:53>>203
>>209
埋め込んだメディアプレイヤーを透明にするということは難しいということですね。。
別の方向で検討します。
レスありがとうございました。
0224デフォルトの名無しさん
2008/06/13(金) 22:45:300226デフォルトの名無しさん
2008/06/13(金) 22:49:290227デフォルトの名無しさん
2008/06/13(金) 22:54:070228デフォルトの名無しさん
2008/06/13(金) 22:55:290229デフォルトの名無しさん
2008/06/13(金) 23:10:01> 例えばWMPとか、決まったアプリをアクティブにする
とあったので、特定のアプリをアクティブにするならプロセスIDから逆引きすればいいよってこと。
0230デフォルトの名無しさん
2008/06/13(金) 23:43:22どんな引数を与えられても交差しない図形を描くことは出来ないのでしょうか。
0231デフォルトの名無しさん
2008/06/13(金) 23:56:05交差しない順で自分で頂点を並べればいいだろう。
ちょっと考えれば、順不同で与えられた頂点から、辺が交差しない図形は
一意で求まらないことくらい分かりそうなもんだが。
0232デフォルトの名無しさん
2008/06/13(金) 23:56:42質問の意味はよくわからんが、細かく制御したいなら自分でやれば。
0233デフォルトの名無しさん
2008/06/14(土) 00:10:180234デフォルトの名無しさん
2008/06/14(土) 00:22:140235デフォルトの名無しさん
2008/06/14(土) 00:29:560236デフォルトの名無しさん
2008/06/14(土) 00:36:560237デフォルトの名無しさん
2008/06/14(土) 00:46:13レイヤードウィンドウでもWM_PAINTがほとんど飛んでこなくなるし、DirectXベースっぽいし。
思うに、レイヤードウィンドウがDX7だったのに対してDWMがDX9になっただけな気がする。
もちろん色々と変わってるだろうけど(GDIをソフトレンダラ化とか)、DWMでやってる事って
半分ぐらいはWindows2000で既に実現できていたんじゃないのかなぁ。
0238214
2008/06/14(土) 01:21:17「今アクティブなウィンドウ(アプリ)の、“タスクバーにおける(右)隣”のウィンドウへアクティブを移す」を実現したいのですが、
要はこれって「タスクバーでいうと隣」のウィンドウのハンドルを取得、それを使ってアクティブにすればいいんですよね?
だけど「タスクバーで隣」っていうのをどう条件設定すればよいのかわからず・・・。タスクバーを右に右に推移(+右端だったら左端に動くように)させたいのですが・・。
なんかヒントください!
0239デフォルトの名無しさん
2008/06/14(土) 01:25:08タスクバーをフックする
そして次のバージョンのWindowsで死亡
0240デフォルトの名無しさん
2008/06/14(土) 08:27:48どうかご教授おねがいします
。
FILE* fp;
_tfopen_s( &fp, _T("hoge.txt"), _T("w,ccs=UTF-8"));
fseek(fp, 0, SEEK_SET );
_ftprintf_s( fp, _T("hogehoge"));
_setmode( _fileno( fp ), _O_BINARY );
_ftprintf_s( fp, _T("\n"));
_setmode( _fileno( fp ), _O_TEXT );
_ftprintf_s( fp, _T("あいうえお"));
fclose(fp);
MSDN見る限りではこう作れってかいてあるのですが、どうも_setmodeの挙動がおかしいようで...
0241デフォルトの名無しさん
2008/06/14(土) 09:14:00自分でメモリ上にUTF-8, LF改行のデータを作って、
ただのバイナリモードで一気に書きこんだらどうかと思う。
というかスレ違い。
0242デフォルトの名無しさん
2008/06/14(土) 10:13:39_setmode( _fileno( fp ), _O_U8TEXT);
0243デフォルトの名無しさん
2008/06/14(土) 10:53:27ググってみても背景色の変更はあるのですが背景に画像を埋め込む方法は見つかりません。
0244デフォルトの名無しさん
2008/06/14(土) 10:57:51無理。IEコンポーネントでも使え
0245243
2008/06/14(土) 11:01:490246デフォルトの名無しさん
2008/06/14(土) 11:24:300247デフォルトの名無しさん
2008/06/14(土) 14:21:30エディットコントロールと違って何も表示されないんだけど
どうすればいいんでしょか
0248デフォルトの名無しさん
2008/06/14(土) 14:54:24間違えてここに書いちゃいました。
C++相談室で聞いてきます。
>>242
実はこれはいろいろためしてたときのソースがそのまま残ってました。
_setmode( _fileno( fp ), _O_U8TEXT);
もすでに試してたけど、なぜかCRLFになるので、ダメでした。
0249デフォルトの名無しさん
2008/06/14(土) 15:10:510250デフォルトの名無しさん
2008/06/14(土) 15:20:35・かまってちゃんの煽りにもきちんとかまってくれます。
をテンプレに追記汁
0251デフォルトの名無しさん
2008/06/14(土) 15:45:05WaitForInputIdleのスレッド版、のようなモノです。
自前でフラグでも立てて調べ続けるしかないのでしょうか。
0252デフォルトの名無しさん
2008/06/14(土) 15:50:570253デフォルトの名無しさん
2008/06/14(土) 15:55:11サスペンドにする設計はよしたほうがいい。
同期オブジェクトを使うべき。
0254デフォルトの名無しさん
2008/06/14(土) 16:11:46windowsx.h みたいなマクロの集合から本格的なクラスライブラリまで含めて。
0255デフォルトの名無しさん
2008/06/14(土) 16:35:10自分が使う分はラップしてから使う。
0256デフォルトの名無しさん
2008/06/14(土) 16:53:370257デフォルトの名無しさん
2008/06/14(土) 16:58:06WTLでいいだろ
0258デフォルトの名無しさん
2008/06/14(土) 17:35:31自作の、ATLをラップしたテンプレートクラスライブラリでやってるよ。
0259デフォルトの名無しさん
2008/06/14(土) 17:48:360260デフォルトの名無しさん
2008/06/14(土) 18:13:08どう糞すぎるの?
0261デフォルトの名無しさん
2008/06/14(土) 21:14:180262デフォルトの名無しさん
2008/06/14(土) 21:15:270263デフォルトの名無しさん
2008/06/14(土) 21:32:21「バイト数」は lstrlen(str) * sizeof(TCHAR) じゃないと求まらんよ
0264デフォルトの名無しさん
2008/06/14(土) 21:33:36おまい、優しいな
0265デフォルトの名無しさん
2008/06/14(土) 21:35:550266デフォルトの名無しさん
2008/06/14(土) 21:36:190267デフォルトの名無しさん
2008/06/14(土) 21:44:09lstrlenのLPCTSTRって
strlenのconst char* と同じでしょ?
0268デフォルトの名無しさん
2008/06/14(土) 21:45:390269デフォルトの名無しさん
2008/06/14(土) 21:49:57lstrlen=_tcslenなわけ?
0270デフォルトの名無しさん
2008/06/14(土) 21:50:34lstrlenはスレ違いじゃないけどstrlenはスレ違い
0271デフォルトの名無しさん
2008/06/14(土) 21:54:040272デフォルトの名無しさん
2008/06/14(土) 21:54:16lstrlen (lstrlenA, lstrlenW) は Win32API (ダイナミックリンク)
_tcslen (strlen, wstrlen) は C Runtime (スタティックリンク)
この違い重要な
0273デフォルトの名無しさん
2008/06/14(土) 21:56:17馬鹿は黙っててね
0274デフォルトの名無しさん
2008/06/14(土) 21:58:20CRTもダイナミックリンクできるが?
つーか基本的にwsprintfとかlstrlenとかWin16でメモリが厳しくてCRTなんか使ってられるかって時代の遺物なんだから気にするな。使うな。
0275デフォルトの名無しさん
2008/06/14(土) 22:06:41C Runtime は普通スタティックリンクで使うので間違ってはいない
0276デフォルトの名無しさん
2008/06/14(土) 22:09:08VC8はダイナミックリンクがデフォ設定になってたなぁ
0277272
2008/06/14(土) 22:34:54あ、確かにデフォルトで /MD (msvcr80.dll) になってるわ
普段 cl.exe とか nmake.exe とかでやってるから libcmt.lib が当たり前だと思ってた
あと誰もつっこんでくれないけど wstrlen じゃなくて wcslen
また多分 strlen ぐらいならコンパイラがインライン展開してくれると思う
0278デフォルトの名無しさん
2008/06/15(日) 00:23:16まーそのせいで最近のVC++はmsvcrt.dllが使用できないが
0279デフォルトの名無しさん
2008/06/15(日) 01:08:48GetTextExtentPoint32()は
> デバイスの中には、通常のセル配列に文字を配置しないデバイス(すなわちカーニングを実行するデバイス)もあるため、文字列内の個々の文字のサイズの総計と文字列全体のサイズとが一致しないことがあります。
の解説から等幅しか正しく計算出来ないようですが、プロポーショナルフォントで正しく計算する方法はないのでしょうか。
※これとは別に垂直スクロールバー分のGetSystemMetrics(SM_CXVSCROLL)は足しています。
0280デフォルトの名無しさん
2008/06/15(日) 01:18:08(もし1文字分ずつ別々に測って足してったら正しい結果は出ないよって意味だ)
ちゃんとDCにフォントを選択したか?
0281デフォルトの名無しさん
2008/06/15(日) 01:32:32誤解を解いてくれてありがとうございます。
> DCにフォントを選択したか
選択したら、未選択の時より短くなってしまいました。
追加したコード
HFONT hFont = CreateFont(-MulDiv(9, GetDeviceCaps(hDC, LOGPIXELSY), 72), 0, 0, 0, 400, 0, 0, 0, DEFAULT_CHARSET, OUT_OUTLINE_PRECIS, CLIP_DEFAULT_PRECIS, ANTIALIASED_QUALITY, VARIABLE_PITCH, L"MS UI Gothic");
SelectObject(hDC, hFont);
:
DeleteObject(hFont);
0282デフォルトの名無しさん
2008/06/15(日) 02:50:21それはリストボックスと同じフォントか?
というかWM_GETFONTでフォントもらえ
0283デフォルトの名無しさん
2008/06/15(日) 11:24:09遅レスすみません。
リストボックスのフォント(ダイアログのフォントと同じ)はMS UI Gothic 9ptですが、WM_GETFONTで取得したフォントは何故かArialの12pt(?)になっていました。
更にウィンドウ上の文字もそれに変わって表示が滅茶苦茶に…。
勿論Arialなんて何処にも使用していません。
何処に原因があるのか解らないので一度Win32APIから離れて.NETでGraphicsオブジェクトを作りMeasureString()で幅を取得してHorizontalExtentプロパティに設定したら、こちらは上手くいきました。
結局の所、正しいフォントが選択されていない事が最大の原因でしょうか。
そうだとしたら何故フォントが正しく取得出来ないのでしょうか。
0284デフォルトの名無しさん
2008/06/15(日) 13:08:11もらえるのはHFONTだが、それがArialだってのはどうやって調べた
(というか調べる必要があった)んだ? DCにハンドル選択するだけなのに。
本当にArialとやらだったら、取得に失敗してシステムフォントが返ってるんだろ。
他のウィンドウのフォントが崩れたのは、
このスレにコード念写できる人はおらんから確かなことは言えんが
おおかたもらったフォントをDeleteObjectでもしたんでないの。
0285デフォルトの名無しさん
2008/06/15(日) 13:24:08ウィンドウに表示される文字で判別しました。
> もらったフォントをDeleteObjectでも〜
思い切りしていました…。
削除する事でフォントは正常に戻りましたが、やはり文字列の最後までスクロール出来ません。
文字コードは全てワイド文字で処理していますが、これが関係しているのでしょうか。
0286デフォルトの名無しさん
2008/06/15(日) 13:48:23それほど信頼できん調べ方はないだろうがw
フォントリンクとかでぐぐっとけよ
0287デフォルトの名無しさん
2008/06/15(日) 13:52:08あなたにWin32APIは無理です。
諦めて.NETを使いましょう。いい時代になりましたね。
0288デフォルトの名無しさん
2008/06/16(月) 01:30:35>ウィンドウに表示される文字で判別しました。
フォント名がほしいなら GetTextFace() とか使ってくれ
とりあえず GetTextExtentPoint32() のリファレンス読み直すとか、
DrawText() に DT_CALCRECT 渡すなどの方法で代用するとか
0289デフォルトの名無しさん
2008/06/16(月) 07:54:20高いけど
0290デフォルトの名無しさん
2008/06/16(月) 09:13:10情報小出しする奴はスルーしとけ
0291デフォルトの名無しさん
2008/06/16(月) 12:13:15どうやって日本語入力するんでしょうか?
0292デフォルトの名無しさん
2008/06/16(月) 12:17:260293デフォルトの名無しさん
2008/06/16(月) 12:27:580294デフォルトの名無しさん
2008/06/16(月) 12:32:310295デフォルトの名無しさん
2008/06/16(月) 12:40:26すごく・・・
完了しました
0296デフォルトの名無しさん
2008/06/16(月) 13:15:540297デフォルトの名無しさん
2008/06/16(月) 14:25:390298デフォルトの名無しさん
2008/06/16(月) 14:29:250299デフォルトの名無しさん
2008/06/16(月) 14:56:540300デフォルトの名無しさん
2008/06/16(月) 15:12:450301デフォルトの名無しさん
2008/06/16(月) 15:26:440302デフォルトの名無しさん
2008/06/16(月) 15:37:52遅レスすみません、DrawText()にDT_CALCRECTを渡す方法で出来ました。
上記方法での取得値 - リストボックスの幅 + 縦スクロールバーの幅
で正確なスクロール幅が算出出来ました。
本当にありがとうございました。
0303デフォルトの名無しさん
2008/06/16(月) 16:20:150304デフォルトの名無しさん
2008/06/16(月) 17:49:15が発生した場合、それをC側から補足できますでしょうか?
例外が発生したことを上の関数に返したいのですが
難しいでしょうか?
よろしくお願いいたします。
0305デフォルトの名無しさん
2008/06/16(月) 17:50:490306デフォルトの名無しさん
2008/06/16(月) 17:51:010307デフォルトの名無しさん
2008/06/16(月) 18:17:43ありがとうございます。
スーパー助かりました。
0308デフォルトの名無しさん
2008/06/16(月) 19:33:490309デフォルトの名無しさん
2008/06/16(月) 19:43:320310デフォルトの名無しさん
2008/06/16(月) 19:51:310311デフォルトの名無しさん
2008/06/16(月) 19:54:080312デフォルトの名無しさん
2008/06/16(月) 20:21:420313デフォルトの名無しさん
2008/06/16(月) 21:40:53「ありがとうございます」に対して自動で「どういたしまして」と返信して回答者の煩わしさを軽減してくれてるんだよ。
ただあまり賢くないから、たまに暴走して意味不明なレスで荒れたり
「なぜこんな設計にするのか理解できない」→「分からないならレスしないでください」
と煽ったりして荒れる原因になって迷惑な一面もある。
0314デフォルトの名無しさん
2008/06/16(月) 21:51:450315デフォルトの名無しさん
2008/06/16(月) 21:53:250316デフォルトの名無しさん
2008/06/16(月) 22:48:13CreateProcessでメモ帳(notepad.exe)を起動する際に、
ユーザーがCtrlキーを押しながら起動しても最前面にメモ帳を表示させたいのですが、
試行錯誤を繰り返していますが上手くいきません。
ご教授お願いいたします。
0317デフォルトの名無しさん
2008/06/16(月) 22:49:430318デフォルトの名無しさん
2008/06/16(月) 22:51:32あきらめろ
0319デフォルトの名無しさん
2008/06/16(月) 23:26:580320デフォルトの名無しさん
2008/06/16(月) 23:30:10規制に巻き込まれて遅レスだが
WS_EX_TRANSPARENTスタイルを追加してWM_ERASEBKGNDで背景画像をBitBlt。
ちらつくので親ウィンドウにWS_CLIPCHILDREN追加して
RichEditのカーソル付近の表示がおかしくなるので親ウィンドウのWM_PAINTで
RichEditのUpdateWindow追加でいけると思う。
0321デフォルトの名無しさん
2008/06/16(月) 23:56:19IME対応を何もしなくても、確定した文字列は最悪WM_CHARで1文字ずつ送られてくる (IME-unaware)。
ANSIモードだとShift_JISの2バイト文字も1バイトずつ送られてくる。
それだとあまりにも不便すぎるから、IMM APIを使って取得する。
確定文字列の取得はWM_IME_COMPOSITIONかつlParam & GCS_RESULTSTRのとき。
詳しくはググれ。あと、再変換対応も忘れるな。
現在はIMMからTSFへ移ろうとしているんだが、
IMMでしか使えない変換エンジンの1つにATOKもあるし、
XPまでだと様々な理由でTSFをオフにしたり、そもそもTSFが入っていなかったりするので、
TSFのみの対応のアプリケーションは非現実的。IMMのみかIMM/TSF両対応にすべき。
0322デフォルトの名無しさん
2008/06/17(火) 00:40:38今頃こんな機能があることを知った
ありがとう2ちゃんねらー
0323デフォルトの名無しさん
2008/06/17(火) 00:44:18なんもならないぞ
0324デフォルトの名無しさん
2008/06/17(火) 01:06:34マジだ・・・今まで知らんかった
0325デフォルトの名無しさん
2008/06/17(火) 01:13:500326デフォルトの名無しさん
2008/06/17(火) 01:17:19alt プロパティ
知りませんでした
0327デフォルトの名無しさん
2008/06/17(火) 01:25:42Windowsのプログラマは只者じゃねーな。
0328デフォルトの名無しさん
2008/06/17(火) 04:20:05Ctrl+クリック バックグラウンドで起動 (メモ帳だけ?)
Shift+クリック メニューが勝手に消えない
Shift+クリックなんて知らなかった。これ結構便利だな。
0329デフォルトの名無しさん
2008/06/17(火) 10:01:57うおおおお
すげえ、これすげえ
感激した
0330デフォルトの名無しさん
2008/06/17(火) 10:03:29WinMainのnCmdShow引数をまじめに処理しようと思う
0331デフォルトの名無しさん
2008/06/17(火) 10:55:210332デフォルトの名無しさん
2008/06/17(火) 11:03:25ウィンドウハンドルをどうにか持って来れれば何とかならんか?
0333デフォルトの名無しさん
2008/06/17(火) 11:58:07それが出来ないならちょっと思いつかないな。
0334デフォルトの名無しさん
2008/06/17(火) 12:09:26その程度のクラック知識も無い人はWin32APIで開発なんてやめた方がいいと思うよ
0335デフォルトの名無しさん
2008/06/17(火) 12:10:270336デフォルトの名無しさん
2008/06/17(火) 12:15:250337デフォルトの名無しさん
2008/06/17(火) 12:16:320338デフォルトの名無しさん
2008/06/17(火) 12:22:58多分無理
0339デフォルトの名無しさん
2008/06/17(火) 12:27:54CreateProcess→WaitForInputIdle→ウィンドウ列挙してプロセスIDから該当のメモ帳を探す
→AttachThreadInputでアクティブプロセスのコンテキストを割り当て→SetForegroundWindow
こうかな?
0340デフォルトの名無しさん
2008/06/17(火) 14:18:040341デフォルトの名無しさん
2008/06/17(火) 14:31:430342デフォルトの名無しさん
2008/06/17(火) 14:34:47Process32FirstとProcess32Nextを使ってNotePad.exeと親のプロセスIDとを取得。
AttachThreadInputでアタッチして制御をもらって、終わったらデタッチ。
ただ、NotePad.exeのウインドウハンドルはどうやって取得するんだろう。
それが出来ればSetActiveWindowなりSetForegroundWindowを呼べるんだが。
0343デフォルトの名無しさん
2008/06/17(火) 14:41:59EnumWindows()とGetWindowThreadProcessId()を組み合わせて探すのが
バージョン依存しなくていいかも。
0344343
2008/06/17(火) 14:42:450345デフォルトの名無しさん
2008/06/17(火) 16:53:060346デフォルトの名無しさん
2008/06/17(火) 16:57:070347デフォルトの名無しさん
2008/06/17(火) 19:19:45・タブ対応
・正規表現grep
・構文ハイライト
・ソース折り畳み
ぐらいは対応して欲しいけどな
0348デフォルトの名無しさん
2008/06/17(火) 19:33:24でも、Vistaのメモ帳ではCtrl+Gで行番号指定移動に対応していたりと
結構侮れなかったりもする。
0349デフォルトの名無しさん
2008/06/17(火) 19:36:520350デフォルトの名無しさん
2008/06/17(火) 19:45:130351デフォルトの名無しさん
2008/06/17(火) 19:54:150352デフォルトの名無しさん
2008/06/17(火) 19:57:05つうほうしまたし
0353デフォルトの名無しさん
2008/06/17(火) 20:18:29無制限UNDO/REDOやドラッグドロップぐらい標準で対応しろと。
マウス乗せたらボワっと色が変わるようなくだらん機能つけるぐらいなら基本機能を充実させろと。
0354デフォルトの名無しさん
2008/06/17(火) 20:22:410355デフォルトの名無しさん
2008/06/17(火) 21:31:19設定しているのですが、MOUSEHOOKSTRUCT.dwExtraInfoは常に0になります。
XBUTTONの番号やホイールの回転量が取れなくて困るのですが、これは仕様なんでしょうか。
0356355
2008/06/17(火) 21:47:410357デフォルトの名無しさん
2008/06/17(火) 21:54:32ただ、MS-IMEナチュラルインプットがフェードアウト気味で、どうでもいいと思うようになってきたけど。
0358デフォルトの名無しさん
2008/06/17(火) 21:59:440359デフォルトの名無しさん
2008/06/17(火) 22:27:14(WM_PAINT以外)
hBmp = (HBITMAP)LoadImage(NULL, L"test.bmp", IMAGE_BITMAP, 640, 480, LR_LOADFROMFILE);
HDC hDC = GetDC(hwnd);
hMemDC = CreateCompatibleDC(hDC);
SelectObject(hMemDC, hBmp);
hBackDC = CreateCompatibleDC(hMemDC);
hBackBmp = CreateCompatibleBitmap(hMemDC, 256, 192);
SelectObject(hBackDC, hBackBmp);
SetStretchBltMode(hBackDC, STRETCH_HALFTONE))
StretchBlt(hBackDC, 0, 0, 256, 192, hMemDC, 0, 0, 640, 480, SRCCOPY);
ReleaseDC(hwnd, hDC);
(WM_PAINT内)
BeginPaint(hwnd, &ps);
SendDlgItemMessage(hwnd, IDC_BITMAP1, STM_SETIMAGE, IMAGE_BITMAP, (LPARAM)hBackBmp);
EndPaint(hwnd, &ps);
このようにしてみましたが、スタティックコントロール上には何も表示されません。
何が原因でしょうか。
※便宜上WM_〜と書いていますが、実際はメッセージクラッカーを使用しています。
0360デフォルトの名無しさん
2008/06/17(火) 22:42:440361デフォルトの名無しさん
2008/06/17(火) 23:38:47HWND hwnd = FindWindow(NULL,TEXT("マインスイーパ"));
POINT pos = {87,27};
int lparam = (pos.y<<16) + pos.x;
PostMessage(hwnd,WM_LBUTTONDOWN,0,lparam);
PostMessage(hwnd,WM_LBUTTONUP,0,lparam);
で押したことにできません。
pos={100,100}とかで下の領域部分は押したことにできます。
調べた感じ、ボタンっぽい部分はハンドルも持ってなさそうなのですが、
どうすれば押せるのでしょうか?
0362デフォルトの名無しさん
2008/06/17(火) 23:40:11F2を押したことにするんじゃだめなの?
0363デフォルトの名無しさん
2008/06/17(火) 23:43:35マインスイーパをプログラムで操作したいというよりは、
ハンドルを持っていないボタンを押したいということなんです。
0364362
2008/06/17(火) 23:43:360365デフォルトの名無しさん
2008/06/17(火) 23:46:23SendInput
0366デフォルトの名無しさん
2008/06/17(火) 23:54:28やっぱりそれしかないんですかね?
PostMessageでなんとかしたかったけど、SendInputでいってみます。
ありがとうございました。
0367デフォルトの名無しさん
2008/06/18(水) 00:31:14という本を書いたら売れますか?
0368デフォルトの名無しさん
2008/06/18(水) 02:50:240369デフォルトの名無しさん
2008/06/18(水) 13:13:44CreateFileMappingAの戻り値のHANDLEから
_open_osfhandle()と_fdopen()とで
FILE*を取得することは出来るんでしょうか?
どうもやってみても_open_osfhandle()が-1を返すんですが、
失敗する理由が自分のコーディングミスなのか仕様なのか分からないです。
0370デフォルトの名無しさん
2008/06/18(水) 14:27:410371デフォルトの名無しさん
2008/06/18(水) 17:25:33遅レスすみません、漸く解りました。
ありがとうございます。
(WM_PAINT以外)
hBmp = (HBITMAP)LoadImage(NULL, L"test.bmp", IMAGE_BITMAP, 640, 480, LR_LOADFROMFILE);
HDC hDC = GetDC(hwnd);
hMemDC = CreateCompatibleDC(hDC);
SelectObject(hMemDC, hBmp);
hBackDC = CreateCompatibleDC(hMemDC);
hBackBmp = CreateCompatibleBitmap(hMemDC, 256, 192);
hPrevBmp = SelectObject(hBackDC, hBackBmp);
SetStretchBltMode(hBackDC, STRETCH_HALFTONE))
StretchBlt(hBackDC, 0, 0, 256, 192, hMemDC, 0, 0, 640, 480, SRCCOPY);
ReleaseDC(hwnd, hDC);
(WM_PAINT内)
BeginPaint(hwnd, &ps);
HBITMAP hTempBmp = (HBITMAP)SelectObject(hBackDC, hPrevBmp);
SendDlgItemMessage(hwnd, IDC_BITMAP1, STM_SETIMAGE, (WPARAM)IMAGE_BITMAP, (LPARAM)hBackBmp);
SelectObject(hBackDC, hTempBmp);
EndPaint(hwnd, &ps);
0372デフォルトの名無しさん
2008/06/18(水) 17:27:16そのソースじゃ何も解っていないようだな
0373デフォルトの名無しさん
2008/06/18(水) 17:28:400374デフォルトの名無しさん
2008/06/18(水) 17:40:35それとも、XP未満にも対応する必要でもあるの?
0375デフォルトの名無しさん
2008/06/18(水) 20:02:36またクライアント領域の人か?基礎からちゃんと勉強しないと話にならんぞ。
0376デフォルトの名無しさん
2008/06/18(水) 20:40:190377デフォルトの名無しさん
2008/06/19(木) 00:06:43Win32API + SDKでプログラミングしおります。
プロパティシートで質問です。
5個のタブがあるプロパティシートのダイアログを表示させて
各種設定を行うようにしました。
一番はじめにプロパティシートのダイアログを表示させた時に
1個目のタブが表示されています。
例えば2個目、3個目のタブを選択するとします。
いったんダイアログを閉じて、再びプロパティシートのダイアログを
表示させた時に、デフォルトで2個目や3個目のタブを選択した
状態にしたいのですが。
アドバイスよろしくお願いします。
一番最後に選んだタブを取得できればいいのですが。
そのタブの位置を変数でもって次回にスタートページを設定したいのです。
0378デフォルトの名無しさん
2008/06/19(木) 00:41:11あるウィンドウのテキストが変更されたことを知る方法はありますか?
サブクラス化してWM_SETTEXTを捕まえればよいのですが、他にスマートな解法は無いものかと・・・
0379デフォルトの名無しさん
2008/06/19(木) 01:08:39DWORD MP3Size; BYTE* MP3Data;
DWORD WaveSize; BYTE* WaveData;
WAVEFORMATEX WF; MPEGLAYER3WAVEFORMAT MF;
//ファイルを開く
HMMIO hmmio;
MMRESULT mmr;
MMCKINFO mmckRiff;
MMCKINFO mmckFmt;
MMCKINFO mmckData;
hmmio = mmioOpen(const_cast<LPSTR>(FileName.c_str()), NULL, MMIO_READ);
if(hmmio==NULL){
return(false);
}
mmckRiff.fccType = mmioStringToFOURCC("WAVE", 0);
mmr = mmioDescend(hmmio, &mmckRiff, NULL, MMIO_FINDRIFF);
if(mmr!=MMSYSERR_NOERROR){
mmioClose(hmmio, 0);
return(false);
}
今のところこんな感じで作っているのですが、mmioDescendで必ずエラーが発生します。
エラーコードを調べたところ272でした、MMIOERR_CHUNKNOTFOUNDではないようです(ifでチェックしてみました)
エラーの原因は何でしょうか?ご教授願えればと…。
0380デフォルトの名無しさん
2008/06/19(木) 01:20:27開こうとしてるファイルはRIFF/WAVE形式なの?
普通はmp3と言ったら、違うフォーマットだけど。
0381デフォルトの名無しさん
2008/06/19(木) 01:50:24ありがとうございます、調べてみたところRIFF/WAVE形式を再生するプログラムを書いてたようですね。
開こうとしていたファイルは普通のmp3形式でしたorz
0382デフォルトの名無しさん
2008/06/19(木) 07:19:100383デフォルトの名無しさん
2008/06/19(木) 08:25:50後者なら波形も引っ張り出せたはずだし。
0384デフォルトの名無しさん
2008/06/19(木) 08:41:04と
HWND hWndDesktop = GetDesktopWindow();
は値が違うのに,
実行させてみるとアプリケーションは
どちらでも正常に動作する(ように見える)
のは何故なんでしょうか?
0385384
2008/06/19(木) 09:04:52おそらく,
HWND_DESKTOP は,引数として NULL を渡しているのと同じ.
各API内では, NULL が渡された場合に, GetDesktopWindow() で
デスクトップのウィンドウハンドルが取得されるようになっている.
ということですね.
0386デフォルトの名無しさん
2008/06/19(木) 11:36:09,.ってなんか違和感あるなぁw
理系じゃ割と普通だけど
0387デフォルトの名無しさん
2008/06/19(木) 11:48:37それにしちゃたまにしか見ないな。
0388デフォルトの名無しさん
2008/06/19(木) 14:04:080389デフォルトの名無しさん
2008/06/19(木) 14:43:27とかしたときの
「可能な限りディスクにフラッシュしない」って「メモリが許す限り」って意味か?
0390デフォルトの名無しさん
2008/06/19(木) 14:51:130391デフォルトの名無しさん
2008/06/19(木) 14:54:310392デフォルトの名無しさん
2008/06/19(木) 19:12:55現在
buffer += updateMessage;
buffer += "\r\n";
::SetWindowTextA(GetDlgItem(IDC_LOG)->GetSafeHwnd(),buffer.c_str());
::SendMessage(GetDlgItem(IDC_LOG)->GetSafeHwnd(), EM_LINESCROLL, 0, 65536);
こんな感じで追加して行ってるのですが、
追加する1行ごとにフォントの色を変えたい場合どうすればいいでしょうか?
全体ならできるのですが・・・
HTMLの<font></font>みたいに範囲指定できないもんですか?
0393デフォルトの名無しさん
2008/06/19(木) 19:14:520394デフォルトの名無しさん
2008/06/19(木) 20:15:17MSDNを探したのですがそれらしいのは見当たらず...
0395デフォルトの名無しさん
2008/06/19(木) 20:18:00ちゃんと探せ。
ttp://msdn.microsoft.com/en-us/library/aa383687(VS.85).aspx
0396デフォルトの名無しさん
2008/06/19(木) 21:25:10どうもありがとうございました。
0397デフォルトの名無しさん
2008/06/19(木) 22:47:54基本認証は401が返った後、InternetSetOption関数を使えばよいのですが、
ダイジェスト認証のほうはどの関数をどう使えばよいのかよくわかりません。
どうも、digest.dll内の関数を使えばよいようですが、これだけでは手も足も出ない・・・
ソケットを直接操作するのはできれば避けたし、MD5暗号化する処理は自前で行い、HTTPのヘッダに追加する必要があるのでしょうか?
環境は.NetではないC++です。
0398デフォルトの名無しさん
2008/06/19(木) 22:57:38Editコントロールにオーナードローなんてねーよ
知らないならレスするな
>>392
RichEdit
0399デフォルトの名無しさん
2008/06/19(木) 23:18:37ちなみに、Old New Thingでには、GetDesktopWindowの戻り値を渡すべきではないときでも
それを渡す人が多いと書かれている。要注意な。
http://blogs.msdn.com/oldnewthing/archive/2004/02/24/79212.aspx
0400デフォルトの名無しさん
2008/06/19(木) 23:47:17ずっと前に何かのAPIでGetDesktopWindow()を渡したらCtrl+Alt+Del以外効かなくなってびびった事があるw
0401デフォルトの名無しさん
2008/06/20(金) 05:45:220402デフォルトの名無しさん
2008/06/20(金) 05:55:01WM_COPYDATA
0403デフォルトの名無しさん
2008/06/20(金) 06:13:240404デフォルトの名無しさん
2008/06/20(金) 09:29:140405デフォルトの名無しさん
2008/06/20(金) 09:34:100406デフォルトの名無しさん
2008/06/20(金) 10:31:34環境設定の類は、変更したら即保存の方がいい。
ウインドウの位置やサイズのようなものは、WM_DESTROYかな。
(WM_CLOSEでも構わないが)
編集中のドキュメントはWM_CLOSEで保存する。
メッセージが来るタイミングは、WM_CLOSEは閉じるボタンを押した直後で
まだこの段階では閉じるのを拒否もできる。(保存するか聞くのはここ)
WM_DESTROYは画面からウインドウが消えたが実体は残っている状態。
0407デフォルトの名無しさん
2008/06/20(金) 10:31:580408デフォルトの名無しさん
2008/06/20(金) 10:39:57WM_QUERYENDSESSIONも処理
0409デフォルトの名無しさん
2008/06/20(金) 10:56:540410デフォルトの名無しさん
2008/06/20(金) 14:21:08そのプロセスが感知できるものでしょうか?
0411デフォルトの名無しさん
2008/06/20(金) 14:44:01できない。他のプロセスから状態を監視する (確実なのは WaitForSingleObject) しかない。
0412デフォルトの名無しさん
2008/06/20(金) 15:37:16無限再帰はスタックオーバーフローするぞ
0413デフォルトの名無しさん
2008/06/20(金) 15:51:520414デフォルトの名無しさん
2008/06/20(金) 15:53:350415デフォルトの名無しさん
2008/06/20(金) 16:57:350416デフォルトの名無しさん
2008/06/20(金) 17:37:59>>411>>412
0417デフォルトの名無しさん
2008/06/20(金) 17:38:010418デフォルトの名無しさん
2008/06/20(金) 19:42:30そこから後は好きなように実装するといい。
0419デフォルトの名無しさん
2008/06/21(土) 01:20:30そんくらいググれカス
0420デフォルトの名無しさん
2008/06/21(土) 01:25:29http://www.kt.rim.or.jp/~ksk/wskfaq-ja/newbie.html#timeout
0421デフォルトの名無しさん
2008/06/21(土) 04:21:230422デフォルトの名無しさん
2008/06/21(土) 04:33:34メモリ使用容量って取得できますか?
タスクマネージャのメモリ使用量みたいな数値です
0423デフォルトの名無しさん
2008/06/21(土) 04:44:380424デフォルトの名無しさん
2008/06/21(土) 05:16:19ワーキングセットのサイズを取得する方法ならあるけど
0425デフォルトの名無しさん
2008/06/21(土) 11:11:02別に構わないと思うが、いつ初期化するかが問題
0426デフォルトの名無しさん
2008/06/21(土) 11:16:17CRITICAL_SECTIONをラップしたクラスのインスタンスをstaticにすれば、コンストラクタで初期化できる。
0427デフォルトの名無しさん
2008/06/21(土) 13:52:230428デフォルトの名無しさん
2008/06/21(土) 14:12:55staticにするとコンストラクタはmainの前に呼ばれる
0429デフォルトの名無しさん
2008/06/21(土) 14:27:54globalじゃだめなの?
0430デフォルトの名無しさん
2008/06/21(土) 14:28:41mainの前に初期化するかは処理系定義(3.6.2)
初めて使用するまで初期化を遅らせられる場合もある。
0431デフォルトの名無しさん
2008/06/21(土) 14:57:390432デフォルトの名無しさん
2008/06/21(土) 16:57:45InterlockedCompareExchangeの存在理由が良く判るようになる。
0433デフォルトの名無しさん
2008/06/21(土) 17:26:200434417
2008/06/21(土) 21:54:41acceptの戻り値がWSAWOULDBLOCKならcontinueの力技です。
他に何かいい方法ないですか?
0435デフォルトの名無しさん
2008/06/21(土) 22:05:160436デフォルトの名無しさん
2008/06/21(土) 22:07:08WSAEventSelect
0437デフォルトの名無しさん
2008/06/21(土) 22:20:02ありがとうございます。。
調べてみます。
0438デフォルトの名無しさん
2008/06/21(土) 22:26:00ttp://www.amazon.co.jp/dp/4797330449/
とか買ったほうが早いと思うぞ。
0439デフォルトの名無しさん
2008/06/21(土) 22:55:480440デフォルトの名無しさん
2008/06/21(土) 23:40:50接続タイムアウト程度の処理ならMSDN読んでるだけで十分。
0441デフォルトの名無しさん
2008/06/22(日) 00:35:30変数名:HOGE 変数値:C:\hogeという変数があったとして、
Get〜("%HOGE%\abc.txt")で"C:\hoge\abc.txt"を取得できるような…。
0442デフォルトの名無しさん
2008/06/22(日) 00:49:390443デフォルトの名無しさん
2008/06/22(日) 00:50:360444デフォルトの名無しさん
2008/06/22(日) 01:23:260445デフォルトの名無しさん
2008/06/22(日) 01:31:03助かりました。ありがとうございます。
0446デフォルトの名無しさん
2008/06/22(日) 08:02:02それくらいはググろうぜ
0447デフォルトの名無しさん
2008/06/22(日) 14:48:26みたいな文章を計算するAPI教えてください
0448デフォルトの名無しさん
2008/06/22(日) 14:51:440449デフォルトの名無しさん
2008/06/22(日) 14:55:510450デフォルトの名無しさん
2008/06/22(日) 14:59:300451デフォルトの名無しさん
2008/06/22(日) 15:06:11宿題スレへどうそ。
なお、この手の問題は頻出です。
0452デフォルトの名無しさん
2008/06/22(日) 16:07:410453デフォルトの名無しさん
2008/06/22(日) 16:39:060454デフォルトの名無しさん
2008/06/22(日) 16:40:270455デフォルトの名無しさん
2008/06/22(日) 16:56:370456デフォルトの名無しさん
2008/06/22(日) 17:00:080457デフォルトの名無しさん
2008/06/22(日) 17:16:53表示されません。助けてください!!
0458デフォルトの名無しさん
2008/06/22(日) 17:19:090459デフォルトの名無しさん
2008/06/22(日) 18:11:38なんでカタコト?
0460デフォルトの名無しさん
2008/06/22(日) 18:18:010461デフォルトの名無しさん
2008/06/22(日) 19:04:01それなんてエロゲ?
0462デフォルトの名無しさん
2008/06/22(日) 19:39:170463デフォルトの名無しさん
2008/06/22(日) 19:40:480464デフォルトの名無しさん
2008/06/22(日) 19:45:010465デフォルトの名無しさん
2008/06/22(日) 19:49:180466デフォルトの名無しさん
2008/06/22(日) 22:15:58訳:かまってほしいな
0467デフォルトの名無しさん
2008/06/22(日) 22:30:32訳:かまってほしいな
0468デフォルトの名無しさん
2008/06/22(日) 22:31:28訳:かまってほしいな
0469デフォルトの名無しさん
2008/06/22(日) 22:43:51かまってほしいな
0470デフォルトの名無しさん
2008/06/22(日) 23:00:39今まで使えてたツールが使えなくなってたからデバッグしたら
CreateWindow関数の戻り値のところでヌルポッポーが返るようになってたんだけど
この場合どこ直せばいいの?msdnみたら対応情報OSにXPが含まれてないのは
わかったけど使えないってこと?代替の関数とかあんの?
0471デフォルトの名無しさん
2008/06/22(日) 23:10:470472デフォルトの名無しさん
2008/06/22(日) 23:15:340473デフォルトの名無しさん
2008/06/22(日) 23:16:160474デフォルトの名無しさん
2008/06/22(日) 23:17:42訳:かまってほしいな
0475デフォルトの名無しさん
2008/06/22(日) 23:25:220476デフォルトの名無しさん
2008/06/22(日) 23:52:290477デフォルトの名無しさん
2008/06/23(月) 00:04:36DrawIcon()で32bitアルファチャネル付きのアイコンを表示出来たっけ?
XPからだったかな。
0478デフォルトの名無しさん
2008/06/23(月) 11:01:460479デフォルトの名無しさん
2008/06/23(月) 11:34:51ScriptingRuntimeのEvalが楽
PSDKに入っていたりいなかったりWin32APIからは逸脱しそうだが
0480デフォルトの名無しさん
2008/06/23(月) 12:10:41トークナイズと逆ポーランド変換とスタック計算程度なんだから自分で作ればいいだろが
0481デフォルトの名無しさん
2008/06/23(月) 12:37:570482デフォルトの名無しさん
2008/06/23(月) 12:40:470483デフォルトの名無しさん
2008/06/23(月) 12:45:120484デフォルトの名無しさん
2008/06/23(月) 17:18:310485デフォルトの名無しさん
2008/06/23(月) 17:42:290486デフォルトの名無しさん
2008/06/23(月) 18:06:580487デフォルトの名無しさん
2008/06/23(月) 18:23:380488デフォルトの名無しさん
2008/06/23(月) 18:35:460489デフォルトの名無しさん
2008/06/23(月) 18:52:130490デフォルトの名無しさん
2008/06/23(月) 19:04:560491デフォルトの名無しさん
2008/06/23(月) 19:25:19こういう奴って自分では面白いことを書いてるとでも思ってるのか?
0492デフォルトの名無しさん
2008/06/23(月) 19:27:510493デフォルトの名無しさん
2008/06/23(月) 19:28:25こういう奴って自分では格好いい指摘をしてるとでも思ってるのか?
0494デフォルトの名無しさん
2008/06/23(月) 19:46:24つまんね
0495デフォルトの名無しさん
2008/06/23(月) 19:53:300496デフォルトの名無しさん
2008/06/23(月) 19:59:040497デフォルトの名無しさん
2008/06/23(月) 20:25:150498デフォルトの名無しさん
2008/06/23(月) 20:39:580499デフォルトの名無しさん
2008/06/23(月) 21:00:40何のメッセージも飛んでこなくなるんだな。
どこのDOSプログラムだよって思った。
スレッド化するのめんどくせ・・・
0500デフォルトの名無しさん
2008/06/23(月) 21:20:470501デフォルトの名無しさん
2008/06/23(月) 21:22:460502デフォルトの名無しさん
2008/06/23(月) 22:07:29> 何のメッセージも飛んでこなくなるんだな。
それのどこがDOSプログラムなんだよ
Windowsのメッセージキューについて勉強しなおせ
0503デフォルトの名無しさん
2008/06/23(月) 22:08:22スレッド化するところを間違えるなよwww
0504デフォルトの名無しさん
2008/06/23(月) 22:33:26ためしてみなよ。
押してる間はタイマーやMMSYSTEM系のメッセージが全く来ないから。
そもそも押してる間はWinProcに来ないっぽいよ。
WM_PAINTが来なくなるのは、
裏になってるウィンドウの最小・最大化ボタンなんかを押しっぱなしにした時、
フォアグラウンドになったウィンドウの中身が描かれない事でも判る。
タイトルバークリックの時は、ダブルクリック待ち時間だけ止まるみたいだなw
0505デフォルトの名無しさん
2008/06/23(月) 22:47:58Macで試してみたいなw
0506デフォルトの名無しさん
2008/06/23(月) 22:48:110507デフォルトの名無しさん
2008/06/23(月) 22:59:050508デフォルトの名無しさん
2008/06/23(月) 22:59:380509デフォルトの名無しさん
2008/06/23(月) 23:05:100510デフォルトの名無しさん
2008/06/23(月) 23:26:03きっとリアルタイム性を重視しない奴が設計したんだろう
Winでリアルタイムも無いけどw
0511デフォルトの名無しさん
2008/06/23(月) 23:26:45かまってちゃんといい基地外マカーといい、ホント碌な人間がいないスレだな
0512デフォルトの名無しさん
2008/06/23(月) 23:27:090513デフォルトの名無しさん
2008/06/23(月) 23:35:58Windows 1.0の時代にリアルタイムも何もないだろう
0514デフォルトの名無しさん
2008/06/23(月) 23:45:46ちょこっと止まるのは知らなかったぞ。
いや、ボタンも知らなかったけどw
0515デフォルトの名無しさん
2008/06/23(月) 23:57:50使ってりゃ判るじゃん
馬鹿?
0516デフォルトの名無しさん
2008/06/24(火) 00:10:590517デフォルトの名無しさん
2008/06/24(火) 00:18:21視野狭w
0518デフォルトの名無しさん
2008/06/24(火) 01:01:28ホールド→ドラッグで助かった経験は誰にでもあるはず
だから今の仕様でいいんじゃね?
0519デフォルトの名無しさん
2008/06/24(火) 01:08:090521デフォルトの名無しさん
2008/06/24(火) 01:12:22そういう話とは違うだろw
0522デフォルトの名無しさん
2008/06/24(火) 01:13:250523デフォルトの名無しさん
2008/06/24(火) 01:21:340524デフォルトの名無しさん
2008/06/24(火) 01:31:570525デフォルトの名無しさん
2008/06/24(火) 02:28:21訳:かまってほしいな
0526デフォルトの名無しさん
2008/06/24(火) 03:00:160527デフォルトの名無しさん
2008/06/24(火) 03:02:250528デフォルトの名無しさん
2008/06/24(火) 10:13:210529デフォルトの名無しさん
2008/06/24(火) 10:38:04お前がな
0530デフォルトの名無しさん
2008/06/24(火) 10:40:190531デフォルトの名無しさん
2008/06/24(火) 12:36:250532デフォルトの名無しさん
2008/06/24(火) 13:50:410533デフォルトの名無しさん
2008/06/24(火) 19:18:58あれどうやってるのでしょうか?
タグで囲んで色を変えたいのですが・・・
MFCのコントロール変数とリッチエディタで該当文字がでたら色を変えるってのを試したのですが、
重すぎて話になりませんでした。
画面にログをどんどん表示していくのですが、
リッチエディタだと差分更新できないので、毎回全文字検索になってしまいます。
部分的に色を変えるって結構利用されると思うのですが、
便利なラッパーってないもんですかね?
0534デフォルトの名無しさん
2008/06/24(火) 19:21:32・完全自作
0535デフォルトの名無しさん
2008/06/24(火) 19:21:350536デフォルトの名無しさん
2008/06/24(火) 19:46:350537デフォルトの名無しさん
2008/06/24(火) 19:47:250538デフォルトの名無しさん
2008/06/24(火) 19:51:580539デフォルトの名無しさん
2008/06/24(火) 20:26:010540デフォルトの名無しさん
2008/06/24(火) 20:29:330541デフォルトの名無しさん
2008/06/24(火) 20:36:52差分更新できるし全文検索はいらないし部分的に色を変えるのなんて
非常に簡単だ。
0542デフォルトの名無しさん
2008/06/24(火) 20:41:18A:非情に簡単だ。
0543デフォルトの名無しさん
2008/06/24(火) 20:42:120544デフォルトの名無しさん
2008/06/24(火) 21:02:54A. どうしてそんなことをする必要があるのか疑問だ
もう回答じゃねぇwww
0545デフォルトの名無しさん
2008/06/24(火) 21:16:43俺もその一人なのかorz
0546デフォルトの名無しさん
2008/06/24(火) 22:20:110547デフォルトの名無しさん
2008/06/24(火) 22:30:32エディタって一定以上の大量の文字列を入れるとそれ以上はいらなくなりますよね。
そうなると、古いログを消して追加していかないといけないと思うんですが、
そのとき、消して追加した分、文字列の並びがずれるので、
リッチエディタで色を変える部分を検索しなおさないといけないと思うのですが、
やり方頭おかしいですか?
差分更新できないのでってのはちょっと言葉がおかしかったです。
とりあえず>>539さんが紹介してくれたのを調べてみます。ありがとです。
0548デフォルトの名無しさん
2008/06/24(火) 23:10:57非常に簡単ってのは言い過ぎだと思う。
理屈としてはそんなに難しいわけじゃないが、作るとなると面倒な作業はいっぱい。
エディタで重要なのはデータをどのような形で扱うか、という点で、それだけでもいくつもの研究がある。
おおざっぱな理念としては↓の記事がとっかかりになると思うので紹介しておく。
http://d.hatena.ne.jp/propella/20080420/p1
0549デフォルトの名無しさん
2008/06/24(火) 23:12:40毎日ストレス溜め込んで帰宅して、このスレで人の揚げ足取るぐらいでしか
それを発散できない可哀想な人々なんだろ
0550デフォルトの名無しさん
2008/06/24(火) 23:15:000551デフォルトの名無しさん
2008/06/24(火) 23:21:310552デフォルトの名無しさん
2008/06/24(火) 23:27:110553デフォルトの名無しさん
2008/06/25(水) 00:01:00std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
std::vectorとかでもいける
0554デフォルトの名無しさん
2008/06/25(水) 00:04:010555デフォルトの名無しさん
2008/06/25(水) 00:15:08リンク先はエディタの色分けとは関係ないし。
0556デフォルトの名無しさん
2008/06/25(水) 00:29:090557デフォルトの名無しさん
2008/06/25(水) 00:34:510558デフォルトの名無しさん
2008/06/25(水) 00:48:380559デフォルトの名無しさん
2008/06/25(水) 01:08:130560デフォルトの名無しさん
2008/06/25(水) 02:29:170561デフォルトの名無しさん
2008/06/25(水) 12:39:310562デフォルトの名無しさん
2008/06/25(水) 13:38:060563デフォルトの名無しさん
2008/06/25(水) 16:56:220564デフォルトの名無しさん
2008/06/25(水) 16:58:160565デフォルトの名無しさん
2008/06/25(水) 17:17:370566デフォルトの名無しさん
2008/06/25(水) 17:19:300567デフォルトの名無しさん
2008/06/25(水) 17:50:29あ、これだと終わっちゃうか
0568デフォルトの名無しさん
2008/06/25(水) 18:35:190569デフォルトの名無しさん
2008/06/25(水) 19:04:470570デフォルトの名無しさん
2008/06/25(水) 19:28:210571デフォルトの名無しさん
2008/06/25(水) 19:29:41フォント指定して表示するにはどの関数使ったらいい?
0572デフォルトの名無しさん
2008/06/25(水) 19:31:330573デフォルトの名無しさん
2008/06/25(水) 19:43:23SelectObject (or SelectFont @ <widnowsx.h>)
TextOutか何か
0574デフォルトの名無しさん
2008/06/25(水) 19:45:39ありがとう
0575デフォルトの名無しさん
2008/06/25(水) 22:08:04それとも姦国人か?シナチクか?
0576デフォルトの名無しさん
2008/06/25(水) 22:18:21そのレスへ安価したら誰かが答えてくれるかもよ
0577デフォルトの名無しさん
2008/06/25(水) 22:50:47そもそも質問に答えられる人なんていませんが、何か?
0578デフォルトの名無しさん
2008/06/25(水) 23:22:09どのヘッダをインクルードすれば使えますか?
それとも動的にAPIアドレスを取得しないと使えないのでしょうか?
0579デフォルトの名無しさん
2008/06/25(水) 23:23:53sprintf(szString, "%d", rand()%(100-1)+1);
ExtTextOut(,,,,, szString,,);
1行目のcharをTCHARに変えてこんな感じの処理できない?
やろうとしたら
C2664: 'sprintf' : 1 番目の引数を 'TCHAR [2]' から 'char *' に変換できません。
ってエラーでる
0580デフォルトの名無しさん
2008/06/25(水) 23:24:50wsprintf(szString, TEXT("%d"), rand()%(100-1)+1);
0581デフォルトの名無しさん
2008/06/25(水) 23:29:36と
TEXT("aaa")
ってなにが違うの?
0582デフォルトの名無しさん
2008/06/25(水) 23:30:29ありがとう
0584580
2008/06/25(水) 23:46:380585デフォルトの名無しさん
2008/06/25(水) 23:55:330586デフォルトの名無しさん
2008/06/25(水) 23:57:55http://msdn.microsoft.com/en-us/library/ms810428.aspx
ここのAppendixがソースだから、それをコピペしろ。
0587デフォルトの名無しさん
2008/06/26(木) 00:00:14何か違うだろ
0588デフォルトの名無しさん
2008/06/26(木) 00:01:14いや、自分なりに調べてわからなかったから質問した。
その後、続けて調べていくうちに自分で実装しないと
いけないという事がわかったんだ。
誤解を招いた言い方だったな。すまん。
0591デフォルトの名無しさん
2008/06/26(木) 00:17:010592デフォルトの名無しさん
2008/06/26(木) 00:19:10何がTRUEなんだ?
0593デフォルトの名無しさん
2008/06/26(木) 00:41:420594デフォルトの名無しさん
2008/06/26(木) 00:49:36タイトルバーや枠を消して最大化
0595デフォルトの名無しさん
2008/06/26(木) 01:05:47ありがとう
0596デフォルトの名無しさん
2008/06/26(木) 16:04:060597デフォルトの名無しさん
2008/06/26(木) 16:39:32質問文すべて英語にしてググってみ
0598デフォルトの名無しさん
2008/06/26(木) 16:41:08何も無いなら、EnumWindows()でハンドル列挙して、GetWindowText()かな。
0599デフォルトの名無しさん
2008/06/26(木) 17:44:08ttp://www.google.com/search?lr=lang_en&q=How+should+I+do+to+obtain+the+name+of+the+window+of+other+applications%3F
IE8とWMP11がトップに出てくるぞ
どういうSEOしてるんだよMSはw
0600デフォルトの名無しさん
2008/06/26(木) 19:32:02そんな英文じゃなくて説明文に書いてあるであろう単語並べるだけでいい
0601デフォルトの名無しさん
2008/06/26(木) 21:34:40> 説明文に書いてあるであろう単語
それが判ってるなら質問なんかするかぼけ
0602デフォルトの名無しさん
2008/06/26(木) 21:47:48こうですか?><
0603デフォルトの名無しさん
2008/06/26(木) 21:56:580604デフォルトの名無しさん
2008/06/26(木) 23:28:35アホなんですねわかります
0605デフォルトの名無しさん
2008/06/26(木) 23:36:14Win32プロジェクトでもダイアログエディタ使うにはどうすればいい?
0606デフォルトの名無しさん
2008/06/26(木) 23:40:010607デフォルトの名無しさん
2008/06/27(金) 01:11:55Standard以上のエディションを買えってゲイツが言ってた
0608デフォルトの名無しさん
2008/06/27(金) 01:39:35それなら正直コマンドラインコンパイラだけでいいよ
0609デフォルトの名無しさん
2008/06/27(金) 01:49:050610デフォルトの名無しさん
2008/06/27(金) 01:52:380611デフォルトの名無しさん
2008/06/27(金) 02:04:41まあコマンドラインコンパイラが目当てならDDKでもインスコすればいいけどさ
0612デフォルトの名無しさん
2008/06/27(金) 03:52:160614デフォルトの名無しさん
2008/06/27(金) 07:52:48ありがとう
そこらへん明後日みる
0615デフォルトの名無しさん
2008/06/27(金) 09:36:520616デフォルトの名無しさん
2008/06/27(金) 09:49:42- 動作に必要なソフト -
Borland C++ 5.51(必須), BCC Developer(推奨)
0617デフォルトの名無しさん
2008/06/27(金) 10:56:25>>597-598
分かりました、ありがとうございます。
0618デフォルトの名無しさん
2008/06/27(金) 12:16:25brccもrcもほぼ互換だし、なんならリンク時にresでリンクすればいい。
0619デフォルトの名無しさん
2008/06/27(金) 12:33:530620デフォルトの名無しさん
2008/06/27(金) 12:40:430621デフォルトの名無しさん
2008/06/27(金) 14:02:180622デフォルトの名無しさん
2008/06/27(金) 14:52:380623デフォルトの名無しさん
2008/06/27(金) 15:04:31ウィンドウのフレームとか動画のフレームとか色々あるだろう
0624デフォルトの名無しさん
2008/06/27(金) 15:07:17createwindowで作成されたウィンドウのフレーム
0625デフォルトの名無しさん
2008/06/27(金) 15:15:35それとも枠なしウィンドウを作りたいという意味?
0626デフォルトの名無しさん
2008/06/27(金) 15:19:370627デフォルトの名無しさん
2008/06/27(金) 15:26:230628デフォルトの名無しさん
2008/06/27(金) 15:26:45分からないならレスするな
0629デフォルトの名無しさん
2008/06/27(金) 15:31:40フレーム消すので躓いてて
Destroyしたら全部消えた
0630デフォルトの名無しさん
2008/06/27(金) 15:33:460631デフォルトの名無しさん
2008/06/27(金) 15:38:170632デフォルトの名無しさん
2008/06/27(金) 15:51:35バッファには内容が入っているのに、
第三引数pNumberOfBytesReadがずっと0のままだったんだけど、どうしてかな?
http://yokohama.cool.ne.jp/chokuto/urawaza/api/ReadFile.html
Vistaとか関係ある?
あと、SendFileがどうしてもうまくいかないんだけど。。。
CreateFileのとき、FILE_FLAG_OVERLAPPEDフラグを立ててるんだけど、
第四引数pOverlappedをOVERLAPPED 構造体をすべて0にセットして、
APIを叩いた前後0x30100000が入ってくるんだけど、そういうもん?
0633デフォルトの名無しさん
2008/06/27(金) 16:04:32聞きすぎるのも悪いから出てきたキーワードでなんとかしてみる
ありがとう
0634デフォルトの名無しさん
2008/06/27(金) 16:18:250635デフォルトの名無しさん
2008/06/27(金) 19:12:290636デフォルトの名無しさん
2008/06/27(金) 19:13:550637デフォルトの名無しさん
2008/06/27(金) 19:17:51それだけじゃ分からん。
まさか第3引数に渡している変数の型がLPDWORDじゃないだろうな?
0638デフォルトの名無しさん
2008/06/27(金) 19:18:08たぶんこれでは?
http://msdn.microsoft.com/en-us/library/ms740565(VS.85).aspx
0639デフォルトの名無しさん
2008/06/27(金) 21:22:37非同期モードで読んでるからじゃないの?
そのページに非同期での読み取られたバイト数取得方法書いてあるじゃん。
0640デフォルトの名無しさん
2008/06/28(土) 09:21:40CreateStreamOnHGlobal(hGlobal,TRUE,&iStream);
OleLoadPicture(iStream,0,0,IID_IPicture,(void**)&iPicture);
iPicture->get_Handle((OLE_HANDLE*)&hBitmap);
iStream->Release(); GlobalFree(hGlobal); return hBitmap;
のようにしたら、メモリーリークが起こるのですが、
解決策を知っている方がいたら教えてください。
0641デフォルトの名無しさん
2008/06/28(土) 09:55:46WS_A | WS_B = WS_AとWS_Bのスタイルを持つ
WS_A ~ WS_B = WS_Aのスタイルを持ち、WS_Bのスタイルを解除
この覚え方で問題ないですか?
また & ^ の場合はそれぞれどう覚えたらいいですか?
0642デフォルトの名無しさん
2008/06/28(土) 09:58:560643デフォルトの名無しさん
2008/06/28(土) 10:55:38Styleは AとBとC
Style = Style & ~(WS_A | WS_C)
StyleはB
0644デフォルトの名無しさん
2008/06/28(土) 10:57:270645デフォルトの名無しさん
2008/06/28(土) 11:20:46ウソだけど
0646デフォルトの名無しさん
2008/06/28(土) 13:57:17・母親は受験勉強をする息子の学力向上のためにフェラチオをする
・日本人女性の55%は、出会ったその日に男と寝る
・ファストフードは女子高生たちを性的狂乱状態におとしいれる
・ティーンたちはバイアグラを使ってウサギのようにセックスをする
・女子高生は、刺激のためにノーブラ・ノーパンになる
・日本の最新の流行 : 70歳の売春婦
・老人の売春婦の人気にもかかわらず、日本では小学生の売春婦にも仕事がある
・日本の若い看護婦は売春婦に勝る
・24時間オルガズムが止まらない病気で苦しむ日本人女性の数が増えている
・15未満の子供を対象とした疑似ポルノが日本に蔓延している
・OLの72%が、セックスをより堪能するために何らかのトレーニングを受けている
・人妻は気分転換の目的で昔の恋人に抱かれに行く
・主婦は郊外のコイン・シャワーで売春をしている
・日本男子は柔道や空手の部活で男相手に童貞を捨てている
・ほとんどすべての漁師は海でマンタとSEXしている
・まだ10代の少年から退職した老人までみんな2980円の手コキを利用している
・六本木のあるレストランでは、食事の前にその材料となる動物と獣姦する
※同社が全年齢向けコーナーで七年以上にわたり世界に向けて配信していたものの一部です
※同社の行為は日本人への偏見や人種差別、婦女暴行、幼児虐待を助長するものです
◆毎日新聞の英語版サイトがひどすぎる まとめ@wiki
http://www9.atwiki.jp/mainichiwaiwai/
◆毎日新聞問題の情報集積wiki
=@http://www8.atwiki.jp/mainichi-matome/
つまり日本国民は
http://www.vipper.net/vip552788.jpg
0647デフォルトの名無しさん
2008/06/28(土) 15:38:05iPicture->Release();
hBitmapも一緒に破棄されるので、注意。、
0648デフォルトの名無しさん
2008/06/28(土) 15:40:15インストール途中で ほにゃらら.cab を取得できませんとか勘弁してくれ
MD5SUM くらいページにかいておけってんだ
0649デフォルトの名無しさん
2008/06/28(土) 16:39:48とはいえ、サイズを見れば正常にダウンロードできたか判る気もするけど。
今時、通信途中でデータが壊れたなんて滅多にないんじゃね?
PC側のメモリやHDDの不調で内容が壊れるほうがよっぽど多い気がする。
0651デフォルトの名無しさん
2008/06/28(土) 18:20:13strcmp(szString, "abcde");
これを実行するにはどうすればいい?
0652デフォルトの名無しさん
2008/06/28(土) 18:22:32> TCHAR szString[20];
> strcmp(szString, "abcde");
>
> これを実行するにはどうすればいい?
TCHAR対応の関数をつかえばいいんじゃね?
_tstrcmp() とか、(←適当にかいたから多分別の名前)
0653デフォルトの名無しさん
2008/06/28(土) 18:23:080654デフォルトの名無しさん
2008/06/28(土) 18:26:390655デフォルトの名無しさん
2008/06/28(土) 18:27:00>>653が正解だな
0656デフォルトの名無しさん
2008/06/28(土) 18:30:28_tcscmp(szString, _T("abcde"));
0657デフォルトの名無しさん
2008/06/28(土) 18:32:020658デフォルトの名無しさん
2008/06/28(土) 18:41:24_tcscpy(szString, _T("これを実行するにはどうすればいい?"));
_tcscmp(szString, _T("abcde"));
注: UNICODEビルド専用
0659デフォルトの名無しさん
2008/06/28(土) 18:49:46ANSIビルドとUNICODEビルドの両方に対応させるのが、
汎用テキストマッピングなんだけど。
0660デフォルトの名無しさん
2008/06/28(土) 18:56:520661デフォルトの名無しさん
2008/06/28(土) 19:06:46正解
0662デフォルトの名無しさん
2008/06/28(土) 19:29:32ありがとう
#define _tcscmp wcscmpってなってた
wcscmp(szString, TEXT("abcde"));
で解決
0663デフォルトの名無しさん
2008/06/28(土) 19:34:06お前は根本的に分かっていない
Win32の前にもっとC言語を勉強しろ
0664デフォルトの名無しさん
2008/06/28(土) 19:41:28ただ関数を知らなかっただけだろ
0665デフォルトの名無しさん
2008/06/28(土) 19:55:33明示的にUTF-16を扱うのならwcscmpでいいけど、
それならTCHAR型じゃなくて、WCHAR型じゃないといけない。
基本的に、TCHARには汎用テキスト関数を使うべき。
0666デフォルトの名無しさん
2008/06/28(土) 19:58:210667デフォルトの名無しさん
2008/06/28(土) 20:12:44#ifndef _UNICODE
#define _tcscmp strcmp
#else
#define _tcscmp wcscmp
#endif
0668デフォルトの名無しさん
2008/06/28(土) 20:23:42漢字はバイトになるんだがな。
0669デフォルトの名無しさん
2008/06/28(土) 20:24:35漢字は3バイト
肝心な1文字抜けてた
0670デフォルトの名無しさん
2008/06/28(土) 20:32:06書きたくないよ・・・
もう、Windows 2000での見栄えなんて
考えなくてもいいよね?
0671デフォルトの名無しさん
2008/06/28(土) 20:42:570672デフォルトの名無しさん
2008/06/28(土) 20:57:57それは仕様ですで乗り切れ
0673デフォルトの名無しさん
2008/06/28(土) 21:13:11UTF-16だって、漢字は2か4バイトじゃん
0674デフォルトの名無しさん
2008/06/28(土) 21:29:450675デフォルトの名無しさん
2008/06/28(土) 22:18:030676デフォルトの名無しさん
2008/06/28(土) 22:30:150677デフォルトの名無しさん
2008/06/28(土) 23:21:42よければ具体的な理由を教えてほしい。
後、それに変わる高速なAP(CRTじゃない)Iを教えてくれると助かる。
0678デフォルトの名無しさん
2008/06/28(土) 23:48:13shlwapiのより速いかどうかは流石に保障しかねるが。
0679デフォルトの名無しさん
2008/06/29(日) 01:41:030680デフォルトの名無しさん
2008/06/29(日) 02:12:25今更CRTを一切使わないプログラムなんて制限多すぎるだけだしそんな事して何になるんだ?
0681デフォルトの名無しさん
2008/06/29(日) 02:31:100682デフォルトの名無しさん
2008/06/29(日) 02:54:56lstr系やStr系を使うのは、CRTが対応していないWin9x用のソフトを作るときぐらいに
した方がいいし、実際そんな機会はほとんど無かろう
0683デフォルトの名無しさん
2008/06/29(日) 03:37:130684デフォルトの名無しさん
2008/06/29(日) 04:40:000685デフォルトの名無しさん
2008/06/29(日) 04:48:200686デフォルトの名無しさん
2008/06/29(日) 05:41:16strcmpとかねーだろばか
0687デフォルトの名無しさん
2008/06/29(日) 11:08:13何かにつけて叩かれてたけど
なんだかんだですごい人だったよな
0688デフォルトの名無しさん
2008/06/29(日) 11:12:080689デフォルトの名無しさん
2008/06/29(日) 11:53:140690デフォルトの名無しさん
2008/06/29(日) 12:38:380691デフォルトの名無しさん
2008/06/29(日) 12:59:030692デフォルトの名無しさん
2008/06/29(日) 13:17:070693デフォルトの名無しさん
2008/06/29(日) 17:30:25最近のVCなら、/Oiでインライン展開されるから使っても平気。
0694デフォルトの名無しさん
2008/06/29(日) 18:00:53速度を議論するスレじゃないだろw
0695デフォルトの名無しさん
2008/06/29(日) 18:18:58さて、俺はshlwapiのStrCmpを使おうか。
0696デフォルトの名無しさん
2008/06/29(日) 18:26:560697デフォルトの名無しさん
2008/06/29(日) 18:41:24「一切」とは想わないが、コンパイラ依存や_mbs系とかは避けたい
文字列比較がSBCS/MBCSとUNICODEで異なってていいのかとも思う
0698デフォルトの名無しさん
2008/06/29(日) 21:02:480699デフォルトの名無しさん
2008/06/29(日) 21:19:13他のコンパイラがVC++に合わせればいいんだよ
0700デフォルトの名無しさん
2008/06/29(日) 21:31:040701デフォルトの名無しさん
2008/06/29(日) 21:58:31あれを一時的に解除(タスクマネージャが出てこないように)するにはどうすればいい?
0702デフォルトの名無しさん
2008/06/29(日) 22:13:030703デフォルトの名無しさん
2008/06/29(日) 22:14:25それはどうするつもりだ?(もっと凄いものが出てきちゃう)
0704デフォルトの名無しさん
2008/06/29(日) 22:15:050705デフォルトの名無しさん
2008/06/29(日) 22:24:26キーボードに Shit キーが無いのでタスクマネージャが出せません><
0706デフォルトの名無しさん
2008/06/29(日) 22:30:010707デフォルトの名無しさん
2008/06/29(日) 22:32:31そのホットキーはセキュリティ確保のため変更するべきではないとおもうな。
0708デフォルトの名無しさん
2008/06/29(日) 22:37:26APIフック
0709デフォルトの名無しさん
2008/06/29(日) 22:43:22できるのか?
0710701
2008/06/29(日) 22:46:48俺の環境はWinXP Home SP3
Ctrl+Alt+Deleteでタスクマネージャでてくるよ
msg.message見てみたけどCtrl+Altまではメッセージ受信してるけど
次にDelete押しても受信せずにタスクマネージャ起動してた
>>707
ねんのために別のキーストロークに同じ動作セットしてから解除してみる
>>708
一応調べるだけ調べてみる
0711デフォルトの名無しさん
2008/06/29(日) 22:47:36マルウェアでも作ってて変なプロセスが起動してるのを見られたくないとか?
0712デフォルトの名無しさん
2008/06/29(日) 23:07:590713デフォルトの名無しさん
2008/06/29(日) 23:12:350714デフォルトの名無しさん
2008/06/29(日) 23:15:07できないことはないけど通常のアプリケーションの範疇からすこしはずれる
http://nienie.com/~masapico/doc_DisableSAS.html
0715701
2008/06/29(日) 23:30:53キー・マウスの信号を受信しても終了しないようにしてる
終了するためにはパスが必要で、例外が右上の×ボタン・タイトルバーandタスクバー右クリックの閉じる
フルスクリーンからウィンドウスクリーンへ切り替える(メニューから)のにもパスが必要にしてある
フルスクリーン時のメニューはマウスポインタがメニューが表示される位置にきたら表示するようにしてる
0716デフォルトの名無しさん
2008/06/29(日) 23:41:11なんかワロタwwwwwwwwwwwww
0718デフォルトの名無しさん
2008/06/29(日) 23:52:460719701
2008/06/30(月) 00:02:340720デフォルトの名無しさん
2008/06/30(月) 01:00:17他人のPCに仕込んでおいて
*「うわ〜、パソコンがおかしくなった><」
701「ほら、こうすれば直るよ」
*「さすが701さんすごい!」
こういう流れだな
0721デフォルトの名無しさん
2008/06/30(月) 01:20:33そういうの知っててもいいんじゃね?
0722デフォルトの名無しさん
2008/06/30(月) 01:55:42セキュリティソフトが通信の邪魔をしてしまうケースがあるのでWinsockを直接使うようにしたいです。
レジストリの操作はしないで特定のプログラム起動時に使わないようにできるでしょうか。
0723デフォルトの名無しさん
2008/06/30(月) 02:10:32ttp://pc11.2ch.net/test/read.cgi/tech/1210170833/684
0725デフォルトの名無しさん
2008/06/30(月) 02:19:420726デフォルトの名無しさん
2008/06/30(月) 02:37:390727デフォルトの名無しさん
2008/06/30(月) 03:37:32くだらん質問する奴がいるから
0728デフォルトの名無しさん
2008/06/30(月) 03:59:04いくらフルにしてパスつけたってtskmgrから終了されたら意味ないしな
0729デフォルトの名無しさん
2008/06/30(月) 05:22:11ロックしとけばいいだけだろうが
0730デフォルトの名無しさん
2008/06/30(月) 07:00:58あれは「確実にログイン画面であること(どっかのアプリが
出した偽ウインドウではないこと)」の保証のためにあるんだから。
それと、ユーザー画面で「ようこそ画面を使用する」を切ったり
ドメイン環境にあれば、直接はタスクマネージャでないから。
0731デフォルトの名無しさん
2008/06/30(月) 07:11:26分からないならレスするな
0732デフォルトの名無しさん
2008/06/30(月) 07:16:310733デフォルトの名無しさん
2008/06/30(月) 07:20:470734デフォルトの名無しさん
2008/06/30(月) 09:35:01どうにかするべきだろう。
0735デフォルトの名無しさん
2008/06/30(月) 09:48:310736デフォルトの名無しさん
2008/06/30(月) 10:34:420737デフォルトの名無しさん
2008/06/30(月) 10:40:290738デフォルトの名無しさん
2008/06/30(月) 14:56:39特定ウィンドウのすぐ手前を指定する方法は無いのでしょうか?
A,B,CのウィンドウがZ順に並んでいる際、CをBのすぐ手前に移動したいとすると、
わざわざAのウィンドウを探して、hWndInsertAfterに使うしか無いのでしょうか?
0739デフォルトの名無しさん
2008/06/30(月) 15:08:110740デフォルトの名無しさん
2008/06/30(月) 15:51:52以下のようなメンバ関数を持つクラスを定義し、そのクラスのオブジェクトを2つ作って
それぞれ異なるファイルを開こうとするとMapViewOfFile がエラーを返してきます。
2つのプログラムで1つのメモリを共有する手段としてあちこちで紹介されていますが、
逆に1つのプログラムで2つ開くことはできないんでしょうか?
void MemoryMappedFile::Open(const std::string& FILENAME)
{
filehandle_ = CreateFileA(FILENAME.c_str(), GENERIC_READ|GENERIC_WRITE,
0, 0, OPEN_EXISTING, 0, 0);
if(filehandle_ == INVALID_HANDLE_VALUE)
{
// エラー1
}
map_ = CreateFileMapping(filehandle_, 0, PAGE_READWRITE, 0, 0
,reinterpret_cast<LPCWSTR>(FILENAME.c_str()));
if(map_ <= 0)
{
// エラー2
}
SYSTEM_INFO system_info;
GetSystemInfo(&system_info);
view_ = static_cast<void*>(MapViewOfFile(map_, FILE_MAP_ALL_ACCESS
, 0, system_info.dwAllocationGranularity, 0));
if(view_ == NULL)
{
// エラー3
}
}
0741デフォルトの名無しさん
2008/06/30(月) 16:00:25MapViewOfFileの引数がおかしくないか?
0742740
2008/06/30(月) 16:08:18「1つ目のファイルは開けるけど2つ目のファイルは開けない」状態です。
開く順序を変えても、2回目のMapViewOfFileでNULLが帰ってきます。
0743デフォルトの名無しさん
2008/06/30(月) 16:10:490744デフォルトの名無しさん
2008/06/30(月) 16:19:380745デフォルトの名無しさん
2008/06/30(月) 16:23:16と
FILE_SHARE_WRITE
は?
0746デフォルトの名無しさん
2008/06/30(月) 17:48:05別のファイルを開こうとしてるんじゃまいか
0747デフォルトの名無しさん
2008/06/30(月) 18:17:130748701
2008/06/30(月) 18:50:08オリジナルのものを表示したままパス入力させる
パス入力失敗したら入力された時間・文字列を表示させる
仕様もオリジナルにしたいからスクリーンセーバーは使うつもりはない
0749デフォルトの名無しさん
2008/06/30(月) 18:51:14スクリーンセーバーをろくに知らないから使わないだけだろ?
0751デフォルトの名無しさん
2008/06/30(月) 19:03:41何も答えて無いクセに偉そうですね
APIもろくに知らないから煽るだけだろ?
0752デフォルトの名無しさん
2008/06/30(月) 19:08:040753デフォルトの名無しさん
2008/06/30(月) 19:13:27その2つ目のファイルは同じ?
1つ目と2つ目逆にしてみるとどうなる?
一応試したが、2つ開けないなんてことは無かった。
0754デフォルトの名無しさん
2008/06/30(月) 19:15:22ファイルのサイズは十分な大きさがある?
0755デフォルトの名無しさん
2008/06/30(月) 19:20:59オフセットの意味わかってる?
そういう風にマップしたいなら、それでいいんだけど。
0756デフォルトの名無しさん
2008/06/30(月) 19:22:460757デフォルトの名無しさん
2008/06/30(月) 21:07:05Ctrl+Alt+Delete・タスクマネージャ無効にしなくても
タスクマネージャから終了メッセ受信したら弾いたらいいんでないの
0758701
2008/06/30(月) 22:27:060759デフォルトの名無しさん
2008/06/30(月) 22:29:220760デフォルトの名無しさん
2008/06/30(月) 22:39:19かまってほしいのはお前の方だろ
0761デフォルトの名無しさん
2008/06/30(月) 22:41:090762デフォルトの名無しさん
2008/06/30(月) 22:50:40Vista専用だけど。
0763デフォルトの名無しさん
2008/06/30(月) 23:06:50>>748
0764デフォルトの名無しさん
2008/06/30(月) 23:32:30レスも読まず無知のくせにどうでもいい知識ひけらかすな
キモイんだよ
0765デフォルトの名無しさん
2008/06/30(月) 23:41:13さあ遠慮せずにもっと褒めたまえ。
0766デフォルトの名無しさん
2008/06/30(月) 23:46:57WM_DESTROY:
MessageBox(0,0,0,0);
って記述してもウィンドウが消えてからメッセージボックス表示されるね
0767701
2008/06/30(月) 23:48:520768デフォルトの名無しさん
2008/06/30(月) 23:50:120769デフォルトの名無しさん
2008/06/30(月) 23:50:260770701
2008/07/01(火) 00:14:21その他の人ありがとう
とりあえず今の所は
WM_CLOSE:
break;
で回避した
でもタスクマネージャから終了した場合しばらくして
「このプログラムは応答していません」って出るんだが
出なくなるようにできない?
0771デフォルトの名無しさん
2008/07/01(火) 00:22:55できねーよ
つうかタスクマネージャで終了できないプロセスなんて常識で考えれば不可能な事ぐらい分かるだろ
ウザイからもう二度と来るなクズ
0772デフォルトの名無しさん
2008/07/01(火) 00:23:320773701
2008/07/01(火) 00:27:130774デフォルトの名無しさん
2008/07/01(火) 00:28:40一日前に結論でてるだろうが
お前のせいでスレが荒れたのだから責任取れ
0775デフォルトの名無しさん
2008/07/01(火) 00:29:16お前が昨日の時点で答えてたらこんなに長引く事にはなってなかったのにな
俺からすればお前がウザイから二度と来るなよクズw
0776デフォルトの名無しさん
2008/07/01(火) 00:34:10お前は>>701に何を求めてるんだ?
どう責任とれと?
一部異常者いますね
0777デフォルトの名無しさん
2008/07/01(火) 00:34:540778701
2008/07/01(火) 00:35:45まあここの連中の知識レヴェルの低さが分かったし悪く思わないでくれよ
0779デフォルトの名無しさん
2008/07/01(火) 00:36:41↓
0780デフォルトの名無しさん
2008/07/01(火) 00:49:380781デフォルトの名無しさん
2008/07/01(火) 01:08:040782デフォルトの名無しさん
2008/07/01(火) 01:11:450783デフォルトの名無しさん
2008/07/01(火) 01:12:00/ \
/ _ノ ヽ、_ \
/ o゚((●)) ((●))゚o \ ほんとは技術的な話がしたいんだお…
| (__人__)' |
\ `⌒´ /
____
/ \
/ _ノ ヽ、_ \
/ o゚⌒ ⌒゚o \ でも知識がなくて話に入れないお…
| (__人__) |
\ ` ⌒´ /
____
/⌒ ⌒\
/( ●) (●)\
/::::::⌒(__人__)⌒::::: \ だから荒らすお!
| |r┬-| |
\ `ー'´ /
0784デフォルトの名無しさん
2008/07/01(火) 01:21:070785デフォルトの名無しさん
2008/07/01(火) 01:26:540786デフォルトの名無しさん
2008/07/01(火) 01:45:37解除するときは「WindowsのCDを入れてください」でおk
0787デフォルトの名無しさん
2008/07/01(火) 01:45:53俺のレス番当ててみ
0788デフォルトの名無しさん
2008/07/01(火) 01:48:54>>787
>>787
>>787
>>787
>>787
>>787
>>787
>>787
>>787
>>787
>>787
>>787
>>787
>>787
>>787
>>787
>>787
>>787
>>787
0789デフォルトの名無しさん
2008/07/01(火) 01:51:090790デフォルトの名無しさん
2008/07/01(火) 01:52:090791デフォルトの名無しさん
2008/07/01(火) 02:07:05かまってほしいのはお前の方だろ
0792デフォルトの名無しさん
2008/07/01(火) 02:21:340793デフォルトの名無しさん
2008/07/01(火) 02:50:160794デフォルトの名無しさん
2008/07/01(火) 03:10:19こういうの書く奴って面白いと思ってるのか?
0795デフォルトの名無しさん
2008/07/01(火) 03:13:51DisableTaskMgr DWORD 0 or 1
0796デフォルトの名無しさん
2008/07/01(火) 03:15:20適当なプロセスにdllインジェクションでもしちゃえばいいのに
0797デフォルトの名無しさん
2008/07/01(火) 03:17:400798デフォルトの名無しさん
2008/07/01(火) 03:33:19こういうのって最近のセキュリティソフトだと警告出たり妨害されないか?
0799デフォルトの名無しさん
2008/07/01(火) 03:34:310800デフォルトの名無しさん
2008/07/01(火) 03:44:31そうだよな。
Windowsと完全互換で、Ctrl+Alt+Deleteでタスクマネージャが出ない以外は同じに作っておけばいいだけだし。
0801デフォルトの名無しさん
2008/07/01(火) 04:37:560802701
2008/07/01(火) 05:40:00>>795ありがと
void TaskMgrOFF(DWORD dwValue) // dwValue 0でON、1でOFF
{
HKEY hReg;
RegCreateKeyEx(HKEY_CURRENT_USER, TEXT("Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System"), 0, NULL, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, NULL, &hReg, NULL);
RegSetValueEx(hReg, TEXT("DisableTaskMgr"), 0, REG_DWORD, (const BYTE *)&dwValue, 4);
RegCloseKey(hReg);
}
0803デフォルトの名無しさん
2008/07/01(火) 05:42:26無知晒し乙
>>802
ソース貼るなよw
0804デフォルトの名無しさん
2008/07/01(火) 05:54:090805デフォルトの名無しさん
2008/07/01(火) 05:56:35>>771はタスクマネージャから終了ry
0806デフォルトの名無しさん
2008/07/01(火) 06:20:01うわ・・・w
0807デフォルトの名無しさん
2008/07/01(火) 06:25:02これはひどい
0808デフォルトの名無しさん
2008/07/01(火) 06:28:52アホ?w
0809デフォルトの名無しさん
2008/07/01(火) 06:39:48馬鹿はレスしなくていいよ
0810デフォルトの名無しさん
2008/07/01(火) 06:42:360811デフォルトの名無しさん
2008/07/01(火) 06:55:05>Windows 7: Graphics Advances
>Windows 7 enables you to advance the graphics capabilities of your applications while carrying forward existing investments in your Win32 codebase, including GDI and GDI+.
>New enhancements to DirectX let Win32 applications harness the latest innovations in GPUs and LCD displays, including support for scalable, high-performance, 2D and 3D graphics, text, and images.
>Also learn how to leverage the GPU’s parallelism for general-purpose computation such as image processing.
どう思う?
Windows 7で、GDIやGDI+にGPUによるサポートがくるように読めるんだけど、
XP以前のようにドライバレベルではなく、
DirectXを使って汎用的に実装されるのだろうか。
だとして、既存のバイナリがそのまま恩恵を受けられるのか、
あるいは修正が必要なのか。
0812デフォルトの名無しさん
2008/07/01(火) 07:07:04それはここで質問する事か?
0813デフォルトの名無しさん
2008/07/01(火) 07:11:120814デフォルトの名無しさん
2008/07/01(火) 07:15:32いや、他に適当なスレもないし。
0815デフォルトの名無しさん
2008/07/01(火) 10:04:32Vistaで統合されると思っていたのにガッカリしてたところだよ
>既存のバイナリがそのまま恩恵を受けられるのか
M$的には原則そのままだろう
最適化ヒントをアプリが与えるためのAPIが追加されるかもしれない
Vistaはそう
0816デフォルトの名無しさん
2008/07/01(火) 11:08:56自分は無知だから解決されたら頭が上がりませんってかw
そんな奴がレスするなよ目障りだから
0817811
2008/07/01(火) 12:30:59問題は下位互換性なんだよね。
Vistaのリリースによって、世の中には、
一度GetDCして、その後ReleaseDCせずに使いまわしている、
糞なソフトウェアがたくさんあると判明したし(Aeroではうまく動かない)
まあ、MSのことだから、気の毒なぐらい努力するんだろうけど。
0818デフォルトの名無しさん
2008/07/01(火) 12:40:13Releaseせずに使いまわしてみたら指定したフォントじゃなくなったしな
わかりやすく言うと バグった
0819デフォルトの名無しさん
2008/07/01(火) 12:51:36それってvistaのバグじゃないの?
0820デフォルトの名無しさん
2008/07/01(火) 12:54:27だから「Vistaのリリースによって」って書いてあるじゃん
0821デフォルトの名無しさん
2008/07/01(火) 13:07:59わざと入れたんじゃないのか?w
0822デフォルトの名無しさん
2008/07/01(火) 13:08:06ちげーよ。
Vista以前から、GDIはバッチ処理されるものだったんだよ。
どのくらい溜め込むかを設定するAPIもあったはず。
EndPaint、ReleaseDCを呼び出したということは、
Windowsに溜め込んでる描画も全部実行していいと伝えるということだ。
Vistaでは、一般的なPCのVRAM容量も増えたし、
デスクトップコンポジションのために、すべてのトップレベルウインドウにVRAMからバッファ割り当ててる。
問題は、あるウインドウがいつ描画を完了したのか(スクリーンに反映して良いのかどうか)、どうやって知れば良いのかということだ。
EndPaint、ReleaseDCがそのタイミングなわけだ。
なにもVistaで実装が変わったとはいえ、意味を変えたわけじゃない。
0823デフォルトの名無しさん
2008/07/01(火) 13:26:020824デフォルトの名無しさん
2008/07/01(火) 13:31:16一度も使ったことない
0825デフォルトの名無しさん
2008/07/01(火) 13:50:260826デフォルトの名無しさん
2008/07/01(火) 13:56:19ついてた気がした。これ入れてみては。
0827デフォルトの名無しさん
2008/07/01(火) 14:22:080828デフォルトの名無しさん
2008/07/01(火) 16:28:33俺の知る限りCS_OWNDCフラグを指定していれば使いまわしても問題なかったはずだが、それもダメになってるのか?
0829デフォルトの名無しさん
2008/07/01(火) 19:28:23本の虫のヒキコモデブオタニートが沸いていたのか
0830デフォルトの名無しさん
2008/07/01(火) 20:32:3110月過ぎた頃にはMVPがネタにするだろうなと書き込もう思ったら早速書いててワロタ
0831デフォルトの名無しさん
2008/07/01(火) 21:25:560832デフォルトの名無しさん
2008/07/01(火) 21:38:06てかWindows7でGDIにもGPUサポートが入るなら、少なくともWin95以降の歴代Windowsの中で
Vistaが唯一ソフトウェア処理って事になるけど、結局MSは何がしたかったのだろうか
0833デフォルトの名無しさん
2008/07/01(火) 21:56:05ホットキーで空回してる?
他のやり方も場合はどんなやりかたしてる?
0834デフォルトの名無しさん
2008/07/01(火) 22:00:54ドライバに依存するから、サポートしてなけりゃXP以前でもソフトウェア処理
最近のオンボードVGAだとサポートされてないものもあったり
0835デフォルトの名無しさん
2008/07/01(火) 22:07:360836デフォルトの名無しさん
2008/07/01(火) 22:16:070837デフォルトの名無しさん
2008/07/01(火) 22:22:270838デフォルトの名無しさん
2008/07/01(火) 22:28:350839デフォルトの名無しさん
2008/07/01(火) 22:28:430840デフォルトの名無しさん
2008/07/01(火) 22:35:49つーか元ネタ的にはPSのCPU,GPU,SPUなんだろうかやっぱり。
0841デフォルトの名無しさん
2008/07/01(火) 22:44:210842デフォルトの名無しさん
2008/07/01(火) 22:46:480843デフォルトの名無しさん
2008/07/01(火) 22:59:04ATIはVPUって言ってなかったか?
0844デフォルトの名無しさん
2008/07/01(火) 23:07:170845デフォルトの名無しさん
2008/07/02(水) 00:01:21別の名前付けてほしいんだよなぁ
0846デフォルトの名無しさん
2008/07/02(水) 00:03:350847デフォルトの名無しさん
2008/07/02(水) 00:06:05お前の視力の方が問題だろ
0848デフォルトの名無しさん
2008/07/02(水) 00:06:27Video、Picture、Graphic
どう使い分けたら良いのかさっぱりだ。
0849デフォルトの名無しさん
2008/07/02(水) 00:59:320850デフォルトの名無しさん
2008/07/02(水) 01:57:07人の身体の障害の事をそう簡単に言うなボケ
0851デフォルトの名無しさん
2008/07/02(水) 02:05:44お前一人の為に世界中の"GPU"の表記が変わるかボケ
0852デフォルトの名無しさん
2008/07/02(水) 02:52:010853デフォルトの名無しさん
2008/07/02(水) 08:50:190854デフォルトの名無しさん
2008/07/02(水) 09:45:32ЮPU とか
0855デフォルトの名無しさん
2008/07/02(水) 09:46:3410 に見えるから却下
0856デフォルトの名無しさん
2008/07/02(水) 09:57:570857デフォルトの名無しさん
2008/07/02(水) 12:27:42誰も変えろとは言ってないw
0859デフォルトの名無しさん
2008/07/02(水) 15:59:02煽り目的なら消えろ
0860デフォルトの名無しさん
2008/07/02(水) 16:31:060861デフォルトの名無しさん
2008/07/02(水) 16:42:530862デフォルトの名無しさん
2008/07/02(水) 16:49:120863デフォルトの名無しさん
2008/07/02(水) 17:03:500864デフォルトの名無しさん
2008/07/02(水) 18:02:340865デフォルトの名無しさん
2008/07/02(水) 18:37:20今や.NETベースの方がWin32SDKベースでの開発よりも普及してるだろ
0866デフォルトの名無しさん
2008/07/02(水) 18:57:24なんとかしてゲーム中だけウィンドウズキー無効にできない?
RegisterHotKeyでは無理だった
0867デフォルトの名無しさん
2008/07/02(水) 18:59:51ゲーム中だけウィンドウズキーを取り外せばいいんじゃね
0868デフォルトの名無しさん
2008/07/02(水) 19:04:13単にゲームのプレーヤーで方法が知りたいだけなのかどれ?
0869デフォルトの名無しさん
2008/07/02(水) 19:09:51実行したいだけならKeySwapでググると吉
0870デフォルトの名無しさん
2008/07/02(水) 19:46:32じゃあWin32を抹殺したいMSの陰謀
0871デフォルトの名無しさん
2008/07/02(水) 19:53:330872デフォルトの名無しさん
2008/07/02(水) 20:03:23Win32APIが無けりゃ動かない
0873デフォルトの名無しさん
2008/07/02(水) 20:05:00http://www.google.co.jp/search?hl=ja&q=%E3%82%AB%E3%83%BC%E3%82%BD%E3%83%AB+WINAPI&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=
0874デフォルトの名無しさん
2008/07/02(水) 20:17:27現状は、でしょ。
0875デフォルトの名無しさん
2008/07/02(水) 21:08:540876デフォルトの名無しさん
2008/07/02(水) 21:39:53できる。がんがれ。
ttp://msdn.microsoft.com/en-us/library/bb219746.aspx
ttp://msdn.microsoft.com/ja-jp/library/cc351899.aspx
↑DISCL_NOWINKEY
0877デフォルトの名無しさん
2008/07/02(水) 23:33:27>>868
自分はプレイヤーで、Winキーを押しても最小化しないように(WINキーに反応しないように)したいんだ
WinAPIでなんとかなるんかなと思って
>>866
こっちの方法も一応手つけてみる
0878デフォルトの名無しさん
2008/07/03(木) 00:22:110879デフォルトの名無しさん
2008/07/03(木) 04:10:23全角厨は黙ってろ
0880デフォルトの名無しさん
2008/07/03(木) 06:37:51monoの立場っていったい・・・
0881デフォルトの名無しさん
2008/07/03(木) 10:31:080882デフォルトの名無しさん
2008/07/03(木) 12:18:150883デフォルトの名無しさん
2008/07/03(木) 12:19:540884デフォルトの名無しさん
2008/07/03(木) 12:22:500885デフォルトの名無しさん
2008/07/03(木) 12:47:100886デフォルトの名無しさん
2008/07/03(木) 12:49:420887デフォルトの名無しさん
2008/07/03(木) 12:55:130888デフォルトの名無しさん
2008/07/03(木) 15:07:350889デフォルトの名無しさん
2008/07/03(木) 15:21:300890デフォルトの名無しさん
2008/07/03(木) 15:28:340891デフォルトの名無しさん
2008/07/03(木) 16:29:190892デフォルトの名無しさん
2008/07/03(木) 17:59:58monoだってWin32APIの代替としてWINEを使ってるから。
0893デフォルトの名無しさん
2008/07/03(木) 18:20:050894デフォルトの名無しさん
2008/07/03(木) 18:36:400895デフォルトの名無しさん
2008/07/03(木) 18:38:53現在プログラムでマウスクリックをさせるものを作っていて、
ボタンのクリックなどはできるようになったのですが、
タブ(TabControl)の切り替えができません。
だれかご存知の方がいましたらご教授いただけると助かります。。
以下プログラム抜粋----------------------------------
POINT pt = {任意の座標X , 任意の座標Y};
HWND hWnd = ::WindowFormPoint(pt.x , pt.y);
// マウスを任意の位置に移動
SetCursorPos(pt.x , pt.y);
// クリック (Down -> UP)
::SendMessage(hWnd , WM_LBUTTONDOWN , 0 , MAKELPARAM(pt.x , pt.y));
::SendMessage(hWnd , WM_LBUTTONUP , 0 , MAKELPARAM(pt.x , pt.y));
よろしくお願いします。
0896デフォルトの名無しさん
2008/07/03(木) 19:00:09SendMessageする前に、
::ScreenToClient(hWnd, &pt);
してみ
0897デフォルトの名無しさん
2008/07/03(木) 19:03:370898デフォルトの名無しさん
2008/07/03(木) 19:30:390899デフォルトの名無しさん
2008/07/03(木) 19:35:09PC使えない人向けにいろいろとワンタッチにしたいと思うこともある
texとワープロソフトとレタッチソフトと出力ごとにプリンタ出力先と出力設定の変更
ハードウェアを直接触る部分は諦めるしかないけど
それ以外の操作を誰でもできるようにとか
0900デフォルトの名無しさん
2008/07/03(木) 19:37:54作ってるのかもしれないし
0901デフォルトの名無しさん
2008/07/03(木) 23:24:54サクラエディタでも試してみたところ、サクラエディタの貼り付けのショートカットキーはF9と書いてあるのに、Ctrl+Vで貼り付けできてしまいました。
これってどういうことなのでしょうか??
0902デフォルトの名無しさん
2008/07/03(木) 23:32:140903デフォルトの名無しさん
2008/07/03(木) 23:34:09WM_PASTE を握りつぶしてないって事では?
0904デフォルトの名無しさん
2008/07/04(金) 01:03:27.NET Framework使った方が軽くなったりするんだろうか
別に.NET Frameworkが基底になるのは構わないが
既存のアプリを修正するのが面倒くさい
0905デフォルトの名無しさん
2008/07/04(金) 01:24:01CPUがx86でなくなって、x86コードがエミュレーションになったら、
そうなるかもしれん。10年以上先だと思うが。
0906デフォルトの名無しさん
2008/07/04(金) 08:46:510907895
2008/07/04(金) 09:01:21ScreenToClient試しましたがだめでした。
ボタンクリックの位置もずれてしまいました。
>>897
MSDNか何かを見ていた時にカーソルがコントロール上にあることを
確認しているととれる文章をどこかで見た気がしたから一文入れてみた
>>898
連続試験をやらせるアプリなんで誰も使わないPCでやるんですわぁ
某ソフトだとタブも切り替えられているんでできるとは思うんだけど
どうやるのかわかりませぬ。。。
0908デフォルトの名無しさん
2008/07/04(金) 09:02:190909デフォルトの名無しさん
2008/07/04(金) 09:38:41何がどう駄目だったんだよ。
こっちは実際に検証して動作確認した上で答えてるんだぜ。
駄目ならこっちで再現できるだけの情報出せよ。
0910デフォルトの名無しさん
2008/07/04(金) 09:39:510911デフォルトの名無しさん
2008/07/04(金) 09:40:23マウスの位置指定はScreen座標、コントロールへのメッセージはクライアント座標だぜ?
0912895
2008/07/04(金) 10:04:03動作確認までして頂いて助かります。
>駄目ならこっちで再現できるだけの情報出せよ。
・足りない情報を記述すると、製作しているアプリAで他のアプリBの操作を自動で行う。
上記記述が無くて申し訳なかったです。
ちなみに
ScreenToClientを使用前はアプリBのボタンの上にカーソルが動いたが
使用後はアプリBのボタンとは違う場所にカーソルが動く。
0913デフォルトの名無しさん
2008/07/04(金) 10:13:18SendMessageの前ってのは、
SetCursorPos(・・・
::ScreenToClient(・・・ ←ここに入れるんだぞ?
::SendMessage(・・・
0914デフォルトの名無しさん
2008/07/04(金) 10:14:330915デフォルトの名無しさん
2008/07/04(金) 10:21:16>上記記述が無くて申し訳なかったです。
もうバカかと。
そのくらいわかってるよ。
足りないのは、具体的に失敗したコードをだしたり、
そのアプリBで使ってるタブコントロールは標準のものなのかとか、
なんでタブコントロールで動作しないかというと、
タブコントロールはボタンクリックしたらどのタブが押されたのか調べるために
メッセージ内のマウス座標を使ってるのに、その座標指定が間違ってるから。
で、こっちでアプリAとアプリBをつくり、実際に>>895のコードにScreenTo・・・を
追加してちゃんと動くことを確認してるんだっての。
0916895
2008/07/04(金) 10:21:29ご指摘どおりやったらできました。。。
勉強になりました。ありがとうございます。。。。。。。。。
0917895
2008/07/04(金) 10:57:33最初にScreenToClientを指摘受けた時に
WindowFromPointの後、SetCursorPosの前に追加して動作しなかったのは
マウスカーソルの位置が問題ですか?
マウスカーソルの位置以外は同じ動作すると思ったのですが。。。
0918デフォルトの名無しさん
2008/07/04(金) 11:28:200919デフォルトの名無しさん
2008/07/04(金) 12:27:550920デフォルトの名無しさん
2008/07/04(金) 12:33:590921デフォルトの名無しさん
2008/07/04(金) 13:46:00SendMessageを使って書くにはどうすればいいでしょう。
0922デフォルトの名無しさん
2008/07/04(金) 13:50:29SendMessageじゃ無理だと思うけど、
メッセージにしたい理由はなによ。
0923デフォルトの名無しさん
2008/07/04(金) 13:52:330924デフォルトの名無しさん
2008/07/04(金) 14:07:14このウィンドウをクリアするAPIはあるでしょうか?
Visual C++ 2008 Express Editionを使っています。
0925921
2008/07/04(金) 14:29:46>>922
無理ですかね。
それっぽい、SendMessage(hWnd, WM_SHOWWINDOW, SW_HIDE, 0)ではダメでした。
子ウィンドウを非表示にした瞬間に親ウィンドウに
再描画メッセージが来て欲しく質問しました。
>>923
それで行けますかね。実験してみます。
0926デフォルトの名無しさん
2008/07/04(金) 14:33:16再描画が欲しければInvalidateRect
急ぎならその直後にUpdateWindow
0927921
2008/07/04(金) 14:51:22UpdateWindowでできました。
InvalidateRectは使わなくても表示されました。
SW_HIDEでPostされた無効リージョンを、
UpdateWindowにより前倒しでSendの形で行われる感じなんですかね。
お答えくださったみなさま、ありがとうございました。
0928デフォルトの名無しさん
2008/07/04(金) 16:34:23どうもありがとうございます。
第3引数に"notepad hoge.txt"を渡したときになにもおきないのですが態々分割してやらなきゃいけないのでしょうか?
http://homepage1.nifty.com/bee/diary/2004b.htmlにはパラメータはひとまとめで指定できると書いてあったのですが。
0929デフォルトの名無しさん
2008/07/04(金) 16:39:09カレントディレクトリとか大丈夫かね
0930デフォルトの名無しさん
2008/07/04(金) 16:39:44notepad c:\hoge.txt
とかやってみては
0931デフォルトの名無しさん
2008/07/04(金) 16:51:55Standard以降ならOutputDebugString(_T("$COMMAND(clear)"))で出来るからお金出して買おうね
0932デフォルトの名無しさん
2008/07/04(金) 16:55:51以前のオブジェクトに戻せってあるけど、
CreateCompatibleDCで作った、
そのウィンドウ専用のメモリDCでも戻さないといけないの?
0933デフォルトの名無しさん
2008/07/04(金) 17:08:38つべこべ考えないで「戻せ」と書かれていればそれに従って戻しておけばいいんだよ
余計な詮索をしてたまたま規定外の動作が通ったとしても将来のWindowsで動くとは限らないだろ
0934デフォルトの名無しさん
2008/07/04(金) 18:34:160935デフォルトの名無しさん
2008/07/04(金) 19:24:080936デフォルトの名無しさん
2008/07/04(金) 21:44:21これでリッチエディット"RICHEDIT"から文字数取得しようと思ったんだけど
大きい文字列だと32767とか間違った値がでるんだけど
どうすればいい?
0937デフォルトの名無しさん
2008/07/04(金) 22:00:17DCに選択したままのオブジェクトはDeleteObjectできない。
だからDeleteObjectするために選択を外さないといけないんだけど、
そのためには「何か別のものを選択する」しか方法がない。
一番手っ取り早い方法が、元あったものを戻すことだってだけのこと。
元のオブジェクトじゃなくて適当なシステムオブジェクト戻しても構わないし
極端な話、DeleteObjectする気がなければそのまま放っといてもいい。
0938デフォルトの名無しさん
2008/07/04(金) 22:17:33> 極端な話、DeleteObjectする気がなければそのまま放っといてもいい。
こういうお馬鹿な考えだとOSがバージョンアップした時に動かなくなるんだよな。
0939デフォルトの名無しさん
2008/07/04(金) 22:23:030940デフォルトの名無しさん
2008/07/04(金) 23:36:070941デフォルトの名無しさん
2008/07/05(土) 00:24:390942デフォルトの名無しさん
2008/07/05(土) 00:50:01たとえばGetStockObjectしたものだったらDelete不要だから
DCに選択したままでも問題ない。
まあ、いるいらないにかかわらず「必ず元に戻す」と
作法として徹底するのはありだし、俺もそうしてるけどさ。
何でそうするのかって原理を知っといて損はないよ。
0943デフォルトの名無しさん
2008/07/05(土) 04:23:06いつの時代の話だ
0944デフォルトの名無しさん
2008/07/05(土) 04:44:030945デフォルトの名無しさん
2008/07/05(土) 12:19:280946デフォルトの名無しさん
2008/07/05(土) 12:21:21俺、いつも、ちゃんとオブジェクト戻してからデリってるけど。
0947デフォルトの名無しさん
2008/07/05(土) 12:54:300948デフォルトの名無しさん
2008/07/05(土) 12:55:02電源OFF
0949デフォルトの名無しさん
2008/07/05(土) 12:58:040950デフォルトの名無しさん
2008/07/05(土) 13:04:01ログオンは自動にできるけどな。
0951デフォルトの名無しさん
2008/07/05(土) 17:36:44ポリシーとかレジストリでログオフメニューを消せたような気がするけど、自信ない。
クエリエンドセッションで断ったらどうなるんだっけ?
0952デフォルトの名無しさん
2008/07/05(土) 19:50:350953デフォルトの名無しさん
2008/07/05(土) 20:20:130954デフォルトの名無しさん
2008/07/05(土) 20:24:220955デフォルトの名無しさん
2008/07/05(土) 21:09:580956デフォルトの名無しさん
2008/07/05(土) 21:20:520957デフォルトの名無しさん
2008/07/05(土) 21:38:40■■みたいなのがでて、表示がおかしくなります。
マルチバイト文字だとうまくいくのですが。
何がおかしいのでしょうorz
ソースはこんなの。
wsprintf(GlobalLock(hMem), TEXT("コマンドライン引数=%s"), lpCmdLine);
0958デフォルトの名無しさん
2008/07/05(土) 21:42:140959デフォルトの名無しさん
2008/07/05(土) 21:47:30その通りです……何か変更できたりするんですか?
0960デフォルトの名無しさん
2008/07/05(土) 21:56:140961デフォルトの名無しさん
2008/07/05(土) 22:05:250962デフォルトの名無しさん
2008/07/05(土) 22:10:01wWinMain
0963901
2008/07/05(土) 23:32:55ありがとうございます!なんとなく分かりました。
0964デフォルトの名無しさん
2008/07/06(日) 00:09:38ありがとうございました。
解決しました。
0965デフォルトの名無しさん
2008/07/06(日) 09:05:480966デフォルトの名無しさん
2008/07/06(日) 09:23:440967デフォルトの名無しさん
2008/07/06(日) 09:28:550968デフォルトの名無しさん
2008/07/06(日) 12:02:11そこでgoogle検索してみたところ、C言語形式のコーディング(関数形式?)の解説サイトばかりでした。
どなたかC++のクラス機能を上手く使ったWINDOWSプログラミングを公開しているサイト、もしくはサンプルなどをご紹介頂けないでしょうか。
0969デフォルトの名無しさん
2008/07/06(日) 12:03:25C#おすすめ
0970デフォルトの名無しさん
2008/07/06(日) 12:17:54それが使えないようだと先やって行けない。
最初から別の道へ進むことをお勧めします。
0971デフォルトの名無しさん
2008/07/06(日) 12:33:550972デフォルトの名無しさん
2008/07/06(日) 12:38:410973デフォルトの名無しさん
2008/07/06(日) 13:00:100974デフォルトの名無しさん
2008/07/06(日) 13:06:38いったい誰だよwwwww w
0975デフォルトの名無しさん
2008/07/06(日) 13:08:32Win32APIをC++でラップすることから始めてみることを勧める。
0976デフォルトの名無しさん
2008/07/06(日) 13:25:230977デフォルトの名無しさん
2008/07/06(日) 13:54:500978デフォルトの名無しさん
2008/07/06(日) 14:01:58今からC++/Win32を勉強するなんて馬鹿
時間を無駄にするなよ
0979デフォルトの名無しさん
2008/07/06(日) 14:07:500980デフォルトの名無しさん
2008/07/06(日) 14:08:420981デフォルトの名無しさん
2008/07/06(日) 15:23:330982デフォルトの名無しさん
2008/07/06(日) 15:30:08ところでちょっと聞きたいことがあるんだが、
設定ファイルとかの定義ファイルを扱うとき
レジストリ弄りたく無くて、GetPrivateProfile*使ってたんだけど
処理速度が少し低速気味でもう少し処理速度を早くしたいと
思っているんだが。。。
※但し、Reg*系APIを使わない前提
こういう時って皆どうやってる?
※例えば、独自のバイナリ構成して
それを設定ファイルとして触ってるとか。
0983デフォルトの名無しさん
2008/07/06(日) 15:39:38文字列主体ならsqliteとか適当に。
場合によってはスクリプト言語組み込んで設定スクリプトで吐き出す
0985デフォルトの名無しさん
2008/07/06(日) 16:03:030986982
2008/07/06(日) 16:05:060987デフォルトの名無しさん
2008/07/06(日) 16:06:400988デフォルトの名無しさん
2008/07/06(日) 16:13:00INI弄る関数は互換性のために残ってるだけだし。
0989982
2008/07/06(日) 16:17:36なるほどそうか。
レジストリは一部のユーザが嫌がりそうだから
極力使わないようにって感じだったんだが。。。
ともかく設定ファイルアクセスによるオーバヘッドは
無視できるレベルだから独自で云々とかやめる事にして
現状のままでいくことにするよ。
教えてくれてありがとう
0990デフォルトの名無しさん
2008/07/06(日) 16:26:300991デフォルトの名無しさん
2008/07/06(日) 16:33:03識別して開くにはどうすればいいんでしょうか?
【 例 】
*.txtが秀丸に関連付けされていた場合
秀丸エディタでオープンする
逆にnotepadに関連付けされている場合・・・略
お願いします
0992デフォルトの名無しさん
2008/07/06(日) 16:38:320993デフォルトの名無しさん
2008/07/06(日) 16:38:440994デフォルトの名無しさん
2008/07/06(日) 16:43:340995デフォルトの名無しさん
2008/07/06(日) 16:44:51ありがとうございます
0996デフォルトの名無しさん
2008/07/06(日) 16:54:42勝てないんだな 7連敗とかwwwwwwwwwwwwww
0997デフォルトの名無しさん
2008/07/06(日) 16:58:090998デフォルトの名無しさん
2008/07/06(日) 17:02:59おまいらもみようぜwwwwwwwwwwwwww
0999デフォルトの名無しさん
2008/07/06(日) 17:04:461000デフォルトの名無しさん
2008/07/06(日) 17:08:5710011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。