■過去ログ置き場に戻る■ 1- 前250 次250 最新50


[memo] "9999999999_00.html#R20" という感じで、URLの最後に "#RレスNo" を追加すると幸せになれます。

Win32API質問箱 Build50
501 名前:500 :2007/03/05(月) 22:49:14
>>499
ByRef phiconLarge As Long

phiconLarge As Any

んで、ExtractIconEx(App.Path & "\test.ico", 0, byval 0, lngIconHandle(0), 1)
だっけ?VBは?

502 名前:499 :2007/03/05(月) 22:54:42
>>501
VBにはヌルポ用に vbNull っつーのが存在してる記憶があるが、
そいつの呼び出し側が ByRef 用なのかどうか記憶あいまい。

As Any で 呼び出し時に byval 0 のような明示記法は初見
# っつーても俺は VB 素人に近いのでわからにゃいw

503 名前:デフォルトの名無しさん :2007/03/05(月) 23:00:39
>>495
APIの質問ではなくスレ違いで申し訳ないんですが、お教えください。
残っているスレッドをどのようにして知ることができるのでしょうか?

現在、以下のようなトラブルで悩んでおります。
発生条件がまだ絞り込めてないのですが、Vistaでexplorerからディレクトリを削除するときに
「他のプロセスで使用中のため削除できません」(みたいな意味の)エラーで削除できない場合が
あります。そのディレクトリは自分のプログラムでOpenFileDialogでファイルを開いたディレクトリ
なのですが、タスクマネージャのプロセスタブで見る限りプログラムは終了しています。
スレッドだけが(問題のディレクトリをカレントにして)いつまでも残っているなんてことがあるのか
疑問なんですが、残っているスレッドが確認できればこれが確認できるかと。

よろしくお願いいたします。


504 名前:デフォルトの名無しさん :2007/03/05(月) 23:04:26
>>499 の心配は>>489 で払拭されてると思われ

>>501
As AnyだとRefかValかを関数引渡し時にByValを指定すればポインタか値かを決められる。ByVal 0& でヌルポインタとなるはず

505 名前:デフォルトの名無しさん :2007/03/05(月) 23:10:31
>>503
API的な回答じゃなくていいのならProcessExplorerでさっくり見れる

>スレッド
vistaは判らないけど、それ以前のOSのことを考えれば
スレッドは所詮プロセスの枠の中の存在だから独立することはない

506 名前:500 :2007/03/05(月) 23:14:34
>>502
vbNullはVT_NULLで、tagVARIANT型メンバのVARTYPE値ですな。
(vbNullをキャストすると1になる)
SQL等で対応するキャラみたい。
んで、VB側でByRef書いてると、VARTYPE値のVT_BYTEREFが
ORでたっちゃうんかと。

>>As Any で 呼び出し時に byval 0 のような明示記法は初見
CopyMemoryでそれしてるサンプル見たことがあったので・・・


CでDLL作って、Declare評価しねーかなー

507 名前:503 :2007/03/05(月) 23:14:36
>>505
ありがとうございます。

>スレッドは所詮プロセスの枠の中の存在だから独立することはない
のはずですよね・・・・・・・


508 名前:デフォルトの名無しさん :2007/03/05(月) 23:20:13
>>507
UnLockerで、捕まえてるプロセス名を調べてみ?
http://ccollomb.free.fr/unlocker/

509 名前:デフォルトの名無しさん :2007/03/05(月) 23:23:07
>>503
OpenFileDialogでファイル名を取ってきたあと、
何もしない場合でもその症状?

それとも、特定の処理(ファイル読み込みなど)後で、
その症状?

切り離して考えてみ?

510 名前:486 :2007/03/05(月) 23:30:37
>>499-501
解決しました。
どうもありがとうございました。

ラージアイコンの方は、MSDNに「必要ない場合、NULL を指定します。 」と
あったので単純に0としていましたが、仰るとおりだったようです。
VarPtr(0)は0ではないため、どこかに漏れてたようです。

>>501の方法でうまく動きました。また、
ByRef phiconLarge As Long

ByVal phiconLarge As Long
として
ExtractIconEx(App.Path & "\test.ico", 0, 0, lngIconHandle(0), 1)
でもうまく動きました。

どうもありがとうございました。

511 名前:デフォルトの名無しさん :2007/03/05(月) 23:33:55
>>510
おめ

512 名前:503 :2007/03/05(月) 23:37:33
>>508 >>509
コメントありがとうございます。
現在自宅のため、確認は明日以降になります。


513 名前:デフォルトの名無しさん :2007/03/06(火) 00:54:29
CNNのアンケートでチョンの反撃が始まって、日本謝罪すべしの票が増えてきてます。
投票まだの方はよろしくお願いします。

それと、このレスをそこらへんのスレにコピペして下さると助かります。
あわせてお願い申し上げます。

http://edition.cnn.com/2007/WORLD/asiapcf/03/04/japan.sexslaves.ap/index.html
QUICK VOTE
Should Japan apologize again for its World War II military brothels?
(日本は、第二次世界大戦時に軍が運営した売春宿の件で再び謝罪するべきですか。)
もちろん No

514 名前:デフォルトの名無しさん :2007/03/06(火) 01:36:24
すみません、HANDLEと64bit OSの関係で質問させてください。
HANDLEでCreateEvent()の返戻値を格納しているソースを見ていたのですが、関数の受け渡しの途中でHANDLE32に型が変わっていることに気付きました。
これ、Vista 64bit環境でも無事に動くんでしょうか?

・Vista 64bitでHANDLE32とHANDLEのサイズは同じかどうか
・64bit環境ではHANDLE→HANDLE32への受け渡しは32bitぶん消えてしまう?

という点、どなたかご存じないでしょうか?実際には動いているっぽいのですが、いまいち確証がないのです。
(XPとVistaの64bit環境で同じかどうかも不明です・・・)

515 名前:デフォルトの名無しさん :2007/03/06(火) 01:42:17
32bitアプリとして動かすならたぶん問題ない
WoWとかいうのが全部面倒みてくれる

516 名前:デフォルトの名無しさん :2007/03/06(火) 01:58:53
>>515
ありがとうございます。WoWでうまくエミュレートしてくれるんですね。
逆に言うと、64bitアプリ(見ていたのはdllでした)として動いているのであれば、問題が発生しそうだといえますね。

517 名前:デフォルトの名無しさん :2007/03/06(火) 03:58:06
上のほうにMFCを利用したフルスクリーン描画方法がありますが、MFCは使わず、
Win32apiだけでフルスクリーン(クライアント領域をディスプレイ全体にする?)には
どうすればよいでしょうか?

518 名前:デフォルトの名無しさん :2007/03/06(火) 04:58:49
>>517
>>176>>189を参考に見たまんまだけど

void ChangeFullscreen(HWND hWnd) {
RECT rect;
GetWindowRect(GetDesktopWindow(), &rect);
SetWindowLong(hWnd, GWL_STYLE, WS_POPUP|WS_VISIBLE);
SetWindowPos(hWnd, HWND_TOPMOST, 0, 0, rect.right-rect.left, rect.bottom-rect.top, SWP_SHOWWINDOW);
}

519 名前:517 :2007/03/06(火) 05:20:38
>>518
うおー!
ありがとうございます!
GetDesktopWindow() が肝ですね!

520 名前:デフォルトの名無しさん :2007/03/06(火) 07:42:09
個人的には、MonitorFromWindow->GetMonitorInfoを推奨したい。

521 名前:デフォルトの名無しさん :2007/03/06(火) 10:24:54
>>520
だね。メインディスプレイでしかフルスクリーンにできないアプリって嫌い。

522 名前:デフォルトの名無しさん :2007/03/06(火) 10:52:26
2台もモニター買う金も置くスペースもねーんだよバーカバーカ

523 名前:デフォルトの名無しさん :2007/03/06(火) 11:05:28
モニタ4台でマルモニしてますが何か?

524 名前:デフォルトの名無しさん :2007/03/06(火) 11:09:44
>>522
高望みしなけりゃどうにかなるもんだぞ。

525 名前:デフォルトの名無しさん :2007/03/06(火) 11:14:48
マルチモニターとか利点がわからない

526 名前:デフォルトの名無しさん :2007/03/06(火) 11:33:32
>>525
フルスクリーンアプリケーションのデバグには良いと思うけど、私には使い道がない。

527 名前:デフォルトの名無しさん :2007/03/06(火) 11:39:49
片側にアップスキャンコンバーターとビデオ繋いでテレビ見ながらいろいろ出来る

528 名前:デフォルトの名無しさん :2007/03/06(火) 12:05:34
>>525-526
作業机の面積が広いに越したことはないだろ?
マルチディスプレイもそんな感じ。
マルチディスプレイは便利になるっていうよりは快適になるって感じ。

529 名前:デフォルトの名無しさん :2007/03/06(火) 12:16:17
>>492
初期化時にCoInitialize()、終了時にCoUninitialize() 呼んでみたらどうかな?

どうもGetOpenFileName()がCOMを使っているらしいぞ。


530 名前:デフォルトの名無しさん :2007/03/06(火) 13:08:26
529
場所誤ると、ハングらないか?

531 名前:517 :2007/03/06(火) 13:57:10
フルスクリーンにする前のウィンドウの位置と大きさを控えておき、フルスクリーンからその
サイズにSetWindowPosで直すと、クライアント領域だけのウィンドウになってしまい
にっちもさっちもいかなくなってしまいます・・・。
どうすれば通常のウィンドウに復帰できるでしょうか?

>>520
参考にします。

532 名前:デフォルトの名無しさん :2007/03/06(火) 14:00:33
>>531
>>518のコードが何やってるか考えればわかるだろ

533 名前:517 :2007/03/06(火) 14:13:46
>>532
失礼しましたm(_ _)m

534 名前:デフォルトの名無しさん :2007/03/06(火) 15:24:50
Windows Media Player 10
を使っているのですが、
10用のSDKってもう無くなってるみたいなんですが、
9用のSDKでも大丈夫でしょうか?

11用は落とせるようにはなっていないみたいですが・・・

535 名前:デフォルトの名無しさん :2007/03/06(火) 15:31:00
COMはSTAのときCoInitializeで初期化したスレッドでメッセージをディスパッチしてやらないとハングするんだっけ

536 名前:デフォルトの名無しさん :2007/03/06(火) 15:51:11
とあるスレッドでGetMessageしたメッセージを、他のスレッドで Dispatch するのはCOMに限らずダメ。


537 名前:デフォルトの名無しさん :2007/03/06(火) 17:06:17
>>415
亀レスすみません。ありがとうございます。
贅沢言ってすみません。

538 名前:503 :2007/03/06(火) 17:24:28
>>505 >>508 >>509
おかげさまで原因が特定できました。>>509の書かれたとおりOpenFileDialog
が原因ではなく、その後の処理に起因するものでした。

結論だけ書くと・・・
消せないディレクトリをカレントにしてconime.exeが動きっぱなしになっているようです。

詳細に書くと・・・・
今回問題となっているプログラム(Prog1.exeとする)は、OpenFileDialogでユ
ーザーが指定したファイルを処理するために、指定したファイルのあるディレ
クトリをカレントにしてProg2.exeをCreateProcessします。Prog2.exeはコン
ソールプログラム(SW_HIDEでDOS窓は表示されず、STARTF_USESTDHANDLESで出
力をパイプ経由でProg1が受け取るのでユーザーに目には触れない)のため、こ
れが起動されたとき、conime.exeが(まだ起動してなければ)起動されます。そ
して、Prog2.exe/Prog1.exe終了後もconime.exeは終了せずに残り、以降に起
動されたコンソールプログラムで使いまわされるようです。
つまり、
(1) ログイン後初めて実行されるコンソールプログラムを親としてconime.exeが起動する。
(2) (1)の親プログラム終了後もconime.exeは終了しない。
(3) 2つめ以降のコンソールプログラムはこのcomime.exeを使用する。
という動作をし、これはXPでもVistaでも同じようです。
Vistaだけで問題が起きたのは、
XP:conime.exeは親に関係なくC:\Windows\System32をカレントにして起動される
Vista:comime.exeは(1)の親のカレントをカレントとして起動され、その後移動しない
の違いがあるためです。
Vista環境でProg1->Prog2が最初のコンソールプログラムの場合、ユーザーの
指定したファイルのディレクトリにconimeが居座るためこのディレクトリが削
除できなくなっているわけです。

「Vistaの問題だ!」と言いたいところだが、さてどう対策したものか・・・・・・
Prog1起動時に、C:\でもカレントにしてダミーのコンソールプログラムを動かしとくかなあ(涙)


539 名前:デフォルトの名無しさん :2007/03/06(火) 17:42:11
>>538
私見だけど;
GUIアプリではカレントディレクトリを常に当たり障りのないトコに設定しとくべき。
OpenFileDialog 等、カレントディレクトリが移動されそうな処理の後には再設定も行う。

これを怠ると「なぜこのフォルダが消せない!」ということが頻発するから。

540 名前:503 :2007/03/06(火) 18:01:19
>>539
コメントありがとうございます。
Prog2がコンソール(CUI)アプリといところが味噌でして・・・・

(これを書くと関係者が見てたら身元がバレそうだが)
実は上記のProg2は(組み込みマイコン用のクロス)コンパイラであり、処理するファイルは
ソースファイルなんです。
#include 等を適切に処理するために、カレントをそれなりの場所にして起動する必要があります。


541 名前:デフォルトの名無しさん :2007/03/06(火) 18:24:15
なるほど。
ダミーで cmd /c exitとか動かしておくしか手が無さそうですね。

KBの↓なんかもひどい解決方法・・・
http://support.microsoft.com/kb/903204/en-us


542 名前:503 :2007/03/06(火) 18:33:45
>>541
>http://support.microsoft.com/kb/903204/en-us
思わず爆笑。


543 名前:デフォルトの名無しさん :2007/03/06(火) 18:59:41
なんだかよくわからないけど
Prog2のカレントディレクトリをC:\とかにして起動して
起動後にカレントディレクトリ変えるんじゃだめなのか?
全然見当違いなこと言ってたらすまん

544 名前:デフォルトの名無しさん :2007/03/06(火) 19:03:00
なるほど。
バッチファイルを挟むという手はあるな。

・・・俺は馬鹿か

545 名前:デフォルトの名無しさん :2007/03/06(火) 19:20:27
試してないけど、conime.exeを先に起動しとくとかは?

546 名前:デフォルトの名無しさん :2007/03/06(火) 19:46:01
それが541の解決法

547 名前:デフォルトの名無しさん :2007/03/06(火) 19:51:42
>>540
CreateProcessって子プロセスのカレントディレクトリをパラメータで指定できたから
親のカレントディレクトリを移動する必要はないんじゃない?
>>545
それが>>541

548 名前:デフォルトの名無しさん :2007/03/06(火) 20:01:24 ?2BP(222)
>>545
それが
>http://support.microsoft.com/kb/903204/en-us
だろ。

日本語版見たらもっとひでーw
http://support.microsoft.com/kb/899153/ja

549 名前:デフォルトの名無しさん :2007/03/06(火) 20:10:34
>>503
CreateProcessでProg2を起動しているんだったら
CREATE_NO_WINDOWフラグを入れるのは?

あとは、終了時にWM_CLOSEをconime.exeに投げたり
conime.exeをkillする手もある。

550 名前:503 :2007/03/06(火) 20:45:07
>>543-549
コメントありがとうございます。
(直接APIの事でないのに、こんなに盛り上がっていいのか・・・・)

Prog2は他社製のため手を入れられませんが、>>544の書かれているように
間にバッチなりコンソールアプリなりを挟んでそこでC:\→目的のディレクトリ
を行うのはいい方法ですね。
>>538の最後に書いたのも、>>541>>544もconime.exeを予め問題の無いディレクトリで
起動しとくという点では同じ考えで、あとはどれが一番美しいかですね。検討してみます。

>>547
CreateProcessでの子プロセスのカレント指定は既に使用しています。
(conime.exeが影響されるのは子プロセスのカレント)
親のカレントもファイルを選択した時点で同じディレクトリに移動させていますが、
逆に親が動いている間はそのディレクトリを消されたくないので、(消極的な方法ではあり
ますが)そのようにしています。

>>548
>http://support.microsoft.com/kb/899153/ja
もっと大爆笑!

>>549
>CREATE_NO_WINDOWフラグを入れるのは?
で、conime.exeが起動されなければ一番よさそうですね。試してみます。

>あとは、終了時にWM_CLOSEをconime.exeに投げたり
>conime.exeをkillする手もある。
実際にProcessExplorerからconime.exeをKillしてみると(当然のことながら)ディレクトリ
を削除できるようになりました。ただ前にも書いたように一つのconime.exeが全ての
コンソールアプリで使いまわされているようなので、この時に他のコンソールアプリが
動いている可能性を考えると、この手は使えません。


551 名前:503 :2007/03/06(火) 21:44:28
>>549
>>CREATE_NO_WINDOWフラグを入れるのは?
>で、conime.exeが起動されなければ一番よさそうですね。試してみます。

とりあえずXP環境で確認したところ、CREATE_NO_WINDOWでconime.exeは起動されなくなるようです。
Vistaは明日確認。これでOKなら万事解決!感謝!

このスレに最もふさわしい解決方法ですね。
(言い訳しとくと、このプログラムの初版は1998年。当時CREATE_NO_WINDOWなんて無かった・・・)


552 名前:503 :2007/03/06(火) 22:27:06
余談だが、VisualStudio6のIDEでビルドを行った時もconime.exeが起動され、IDE終了後も残る。
VistaにVS6入れる人なんてほとんどいないと思うが、プロジェクトのディレクトリが
削除できなくなるんだろうなあ。


553 名前:デフォルトの名無しさん :2007/03/06(火) 22:32:35
DETACHED_PROCESSでもコンソールウィンドウは表示されなくなるが、
CREATE_NO_WINDOWとは何が違うのだろう。(conimeについては未確認。)

554 名前:デフォルトの名無しさん :2007/03/06(火) 23:15:11
Vista に 6.0 入れてるよ俺…
明日試してみるか orz

555 名前:デフォルトの名無しさん :2007/03/07(水) 04:58:35
デュアルブートしてるXPにインストールしたVC6のコンパイラだけ借りてる

556 名前:デフォルトの名無しさん :2007/03/07(水) 09:10:10
コンパイラを使っている方のOSは何

557 名前:503 :2007/03/07(水) 13:36:06
Vista環境で、CREATE_NO_WINDOWによりconime.exeが起動されなくなり、ディレクトリが消せなく
なる問題が解決することを確認できました。
また、>>538の状況やCREATE_NO_WINDOWでの対策が有効なことは、Vista-x64のWOW64
環境下でも同じであることを確認しました。
万事解決。皆様に感謝。

>>552がデマだったらまずいんで自分でも確認してみたら、やはりVista環境でログイン後の最初に
VS6-IDEからビルドを行ったプロジェクトのディレクトリは削除できなくなりました。


558 名前:デフォルトの名無しさん :2007/03/07(水) 15:50:15
ポップアップメニューで、特定の項目についてのみ、クリックしてもポップアップが閉じない
(メッセージは送信する)ようにするにはどうすればよいでしょうか?

559 名前:デフォルトの名無しさん :2007/03/07(水) 17:22:36
>>558
よくある感じだと [OK] [APPLY] [CANCEL] の [APPLY] ってこと?

560 名前:558 :2007/03/07(水) 17:27:10
>>559
そうです!
あの感じです!

561 名前:デフォルトの名無しさん :2007/03/07(水) 17:38:14
>>560
メインウインドウに PostMessage するのはダメ?

562 名前:558 :2007/03/07(水) 17:58:15
>>561
それは具体的にはどういうことでしょうか??

563 名前:デフォルトの名無しさん :2007/03/07(水) 18:04:11
「MFS_CHECKED になりえるメニューアイテムがあって、開きっぱなしのままトグル動作したい」

POPUP しなおす / POPUPメニューを止めて、ダイアログで実装

すきなのえらべ

564 名前:558 :2007/03/07(水) 18:17:16
>>563
やはりその二つですか〜。
ありがとうございました!

565 名前:デフォルトの名無しさん :2007/03/08(木) 00:13:13
CreateProcessのCREATE_NO_WINDOWフラグって
VC7でないと使えない?
MSDNの2000年版にすらそのフラグは存在してないんだが。

566 名前:デフォルトの名無しさん :2007/03/08(木) 00:14:42
自分で定義すりゃ何ででも使える

567 名前:デフォルトの名無しさん :2007/03/08(木) 00:15:18
以前は非公開だったってだけだな

568 名前:デフォルトの名無しさん :2007/03/08(木) 00:15:31
そっか
逆にOSは2000以上限定ですかね?

569 名前:デフォルトの名無しさん :2007/03/08(木) 00:29:18
9xだって動くんだい

570 名前:デフォルトの名無しさん :2007/03/08(木) 00:34:34
>>565
なるべく新しいPlatform SDKを入れてみろ

571 名前:デフォルトの名無しさん :2007/03/08(木) 00:41:56
VC6なら、ほどほどに新しいもの(2003febだったか)を
入手する必要があるぞ(w

572 名前:デフォルトの名無しさん :2007/03/08(木) 07:21:54
>>565
VC6 SP6でもちゃんとwinbase.hで定義されてるし、VC6用最終のMSDN Oct.2001には載ってる。
Win9xも対象にしたいならDETACHED_PROCESSでも使え。
(CREATE_NO_WINDOWと何が違うのかは知らんが。)

573 名前:デフォルトの名無しさん :2007/03/08(木) 08:11:37
リダイレクタ作った時、CREATE_NO_WINDOWを指定したら、
コンソール窓が開かなくなったが・・

憶測だけど。

574 名前:デフォルトの名無しさん :2007/03/08(木) 11:01:47
質問があります。

とあるファイルパスが、
ショートファイルネーム形式か、
ロングファイルネーム形式かを判定する関数ってありますか?
あれば、関数名を教えていただきたいです。

もしなければ、皆様はどのようにして判定しているのでしょうか?
(~を検索?)

575 名前:デフォルトの名無しさん :2007/03/08(木) 11:08:01
>>574
GetFullPathName
GetShortPathName

576 名前:574 :2007/03/08(木) 11:58:35
>>575
この2種の組み合わせで検討してみます。
ありがとうございます。

577 名前:デフォルトの名無しさん :2007/03/08(木) 17:31:27
タイマーの調子が悪いんですが
SetTimerとKillTimerを繰り返していたら処理落ちするとかありますか?

578 名前:デフォルトの名無しさん :2007/03/08(木) 17:33:38
>>577
ソースあげ

579 名前:デフォルトの名無しさん :2007/03/08(木) 17:47:43
>>578
pはsageです。
ttp://www.uploda.org/uporg721879.zip.html

580 名前:デフォルトの名無しさん :2007/03/08(木) 18:15:54
Windowsは知らんのだけど、これってタイムアウト前に再度SetTimer()したらどうなるんだ?
なんとなく、一度目のタイムアウトで二度目のタイマーまでKillしてしまうような気がするのだが。
#つーか、毎回毎回KillTimer()しないといけないもんなのか?

581 名前:579 :2007/03/08(木) 18:25:10
>>580
じゃあKillするに相応しいメッセージはなんなんだろう。

582 名前:デフォルトの名無しさん :2007/03/08(木) 18:29:49
そもそも何を持って処理落ちしてると判断したんだ

583 名前:デフォルトの名無しさん :2007/03/08(木) 18:32:25
あと、SetTimer時の戻り値を保存しておいてそれを使ってKillして
その変数をタイマーの有無に使えば2重に作ったり消したりは防げないか

584 名前:デフォルトの名無しさん :2007/03/08(木) 18:37:18
SetTimerとKillTimerでタイミングを制御していること自体が「処理落ち」の原因だと思うけど。

585 名前:579 :2007/03/08(木) 18:40:03
根本から間違ってたわけですか。
タイマーってかなりメモリ使いそうだからいちいちKillしてた。
そこに原因があったのかもしれません。
ありがとうございます。

586 名前:デフォルトの名無しさん :2007/03/08(木) 18:40:40
Userメッセージ使ってもいいしな。
しかし、InvalidateRect使っててUpdateWindowしてないからな気もするな

587 名前:デフォルトの名無しさん :2007/03/08(木) 18:40:55
>>580
タイムアウトまでに再度SetTimerしたら
そのタイマが既存のタイマに取って代わる。
その場合既存のタイマのタイムアウトが経過してもメッセージは流れない。

588 名前:デフォルトの名無しさん :2007/03/08(木) 18:46:57
>>585
SetTimerは確かにユーザーオブジェクトとしてはかなりリソースを使う方だし
そもそもコールバック使わない場合、WM_TIMER自体のメッセージ優先度が低いから
精度もかなり酷い(スレッドのメッセージ処理が空いた時にしか投げられない)。
ソース見てないから適当な事言うけどウェイタブルタイマに置き換える事は出来ないの?

589 名前:579 :2007/03/08(木) 19:07:05
MouseMoveに詰め込みすぎたかもしれません。
60行近くあったんだけど、
消したら割りとスムース。

>>586
それも忘れてました

>>588
ウェルタ・・・難しそうだ。

590 名前:デフォルトの名無しさん :2007/03/08(木) 19:12:42
>>588
SetTimerはコールバック使っても一緒だよ。

>>577
「調子が悪い」なんて抽象的に言われても分からん。
質問するときは、もっと詳しく書かないと駄目。

591 名前:579 :2007/03/08(木) 19:18:17
>>590
サーセン。ありがとうございました。

592 名前:デフォルトの名無しさん :2007/03/08(木) 19:19:52
ちょっとソース見てみたけど、WM_MOUSEMOVEでInvalidateRectしてるのが
いけないんじゃない?

593 名前:デフォルトの名無しさん :2007/03/08(木) 19:55:01
Windows Mobile 5.0向けのアプリケーションを作っています。
HTTPサーバ上にあるXMLを読み込みたいのですが、
XMLHTTPあたりを使えばできますか?

594 名前:デフォルトの名無しさん :2007/03/08(木) 20:00:05
ソケット生成、データ受信、構文解析で出来る。

595 名前:デフォルトの名無しさん :2007/03/08(木) 20:00:34
>>577のソース見てみようと思ったら消してやがる・・・

>>593
これ使えばいいかなって思うのがあるならまずやってみれ

596 名前:579 :2007/03/08(木) 20:09:11
>>592
それだ!THX!595悪いね。恥ずかしいから

597 名前:デフォルトの名無しさん :2007/03/08(木) 20:17:20
じゃ、代わりに上げておくか。

598 名前:579 :2007/03/08(木) 20:42:02
その流れ秋田

599 名前:デフォルトの名無しさん :2007/03/08(木) 22:58:08
cmdから叩けばprintfでコンソールに値を出せて、
ダブルクリックで起動したらウインドウ無しで常駐できるアプリは作れますか?

WinMainで作るとコンソール出せなくてダメで、
コンソールアプリとして作るとどうしてもウインドウがでちゃうの

600 名前:デフォルトの名無しさん :2007/03/08(木) 23:40:09
AttachConsole?

601 名前:デフォルトの名無しさん :2007/03/08(木) 23:45:30
たしかwinアプリでコンソールに出力するなら、AllocConsoleのあと、
freopenでstdoutを"$COUT"で開き直すんだったはず

でも起動方法で分岐するとなると分からん

602 名前:デフォルトの名無しさん :2007/03/08(木) 23:49:52
STARTUPINFOとか臭いな と調べもせずにいってみる
あと親プロセスがコンソールか否かを調べるとか

603 名前:デフォルトの名無しさん :2007/03/08(木) 23:58:34
試しにぐぐってみたらこんな記事が
http://is3000nx.seesaa.net/article/24649854.html

604 名前:デフォルトの名無しさん :2007/03/09(金) 00:31:49
http://karinto.mine.nu/ulink/uploader/download/1173367827.zip
試しに作ってみた。

605 名前:デフォルトの名無しさん :2007/03/09(金) 06:11:21
ウィンドウクラスについて質問なのですが、
ローカルウィンドウクラスを登録する場合、
他のプロセスですでに登録されているウィンドウクラスの名前を使っても問題ないのですよね?

606 名前:デフォルトの名無しさん :2007/03/09(金) 06:26:44
問題ない

607 名前:デフォルトの名無しさん :2007/03/09(金) 08:14:55
>>599
パイプ作って、STARTUPINFOについないで、
CreateProcess

608 名前:デフォルトの名無しさん :2007/03/09(金) 13:29:28
色々と調べた(実行、検索)のですがわからないので、どなたかお教え願います。

プラットフォーム:VB6
質問に関係するAPI名:SetMenuItemBitmaps
作業内容:メニューにアイコンを表示する

アイコン表示そのものはうまくいっています。
しかし、アイコンのサイズが16x16のBitmapなのに対して
メニューの各項目の表示幅が12程度しかないため、
Bitmapが全て表示されない(左上を基点として、半分程しか表示されていない)と
いう状態に陥っています。
設定後、DrawMenuBarで更新してみましたがそのままでした。

質問は以下の通りです。
 ・メニューの各項目の縦幅を任意に変更できるか?(ChangeMenu、ModifyMenuでは無理のようですね…)
 ・Bitmapのサイズに合わせて、メニューをうまく表示させる方法は?

以上、どなたかお教え願います。引き続きあれこれやっていくつもりなので、もし自己解決しましたら
その時点ですぐにこちらに解決したことを報告いたします。

609 名前:デフォルトの名無しさん :2007/03/09(金) 13:31:59
>>599
winアプリで作って、コンソールからは、
winアプリ|more
で使うしか方法はないんちゃうか
GetStdHandleで判定

610 名前:デフォルトの名無しさん :2007/03/09(金) 13:40:29
そもそもダブルクリック起動かどうかなんて判定取れない

611 名前:デフォルトの名無しさん :2007/03/09(金) 14:31:49
>>608
標準のWindowsの設定ではメニューの縦幅は16pxのアイコンがきっちり入るから
12pxってのは設定いじった結果なのか、よくわからないけど、
オーナードローでメニューをイチから描画するのが、
一番自由度は高くて、メニューの高さも幅もアイコンも全部自由に管理できる

612 名前:デフォルトの名無しさん :2007/03/09(金) 14:33:47
なんか読点多くて 日本語でおk みたいな文になったな
とりあえずいいたいことは オーナードローメニュー でググレば目的は達せられると思う、と


613 名前:デフォルトの名無しさん :2007/03/09(金) 15:41:12
>>611-612
プログラマとしての適性なさそうです。
学生ならプログラマになるの止めましょう、もし、いまプログラマなら転職をすすめます。



614 名前:608 :2007/03/09(金) 15:46:11
原因は別のような気がします。
SetMenuItemBitmaps のサンプルを幾つかダウンロードし(ソース付きのやつね)
実行してみたものの、3種類試しましたがいずれもアイコンが全て表示されません。
(13x13のアイコンなのに8x8サイズぐらいしか表示されない)

WinXP SP2、VB6 SP5、それ以外に思いつくのは・・・IE7をインストールしたことでも
関係するのかなあ?

VPC上での動作と比較してみます。

615 名前:デフォルトの名無しさん :2007/03/09(金) 15:51:40
プログラマになりたいんですけどどうすればいいですか?

616 名前:デフォルトの名無しさん :2007/03/09(金) 15:55:42
先ずは層化学会に入信しなさい、そうすれば道は開かれます。

617 名前:デフォルトの名無しさん :2007/03/09(金) 16:18:12
>>616
そうか?

618 名前:デフォルトの名無しさん :2007/03/09(金) 16:32:26
>>613
マジか? 俺も創価行ってくるわ

>>608には失礼した
SetMenuItemBitmapsはスモールアイコンじゃなくて
チェックマークイメージの代わりを指定するものだったみたいだな

619 名前:608 :2007/03/09(金) 16:46:50
VPC上(Win2k)でも同じだった…何がまずいんだろう(´・ω・`)

http://homepage1.nifty.com/MADIA/vb/API/SetMenuItemBitmaps.htm

のサンプルをダウンロードしてそのまま実行、下のような表示になります。
(自分で作ったのも同じ結果)

http://ud.gs/3010x

「それって○○じゃね?」ってわかる人いらっしゃいますか〜?


620 名前:608 :2007/03/09(金) 16:48:02
しまった ttp にするのを忘れてた・・・後の祭りですが、すみません。

621 名前:デフォルトの名無しさん :2007/03/09(金) 18:13:14
>>608
cx = GetSystemMetrics(SM_CXMENUCHECK)
cy = GetSystemMetrics(SM_CYMENUCHECK)
Debug.Print "cx = " & cx & vbTab & "cy = " & cy

上記コードを実行したらわかるけど、規定のサイズは11px。

622 名前:608 :2007/03/09(金) 18:35:02
ガ━━━━━━(゚д゚;)━━━━━━ ン!!


>>621さんありがとうございます。
16x16で配布しているサイト多いし、アプリから吸い出しても16x16が多いので
これが基本だと思い込んでた・・・

ふむう、仕方がない。アイコン全部自作すっか・・


基礎知識提供感謝です。


623 名前:デフォルトの名無しさん :2007/03/09(金) 18:40:52
>>617
kwsk

624 名前:デフォルトの名無しさん :2007/03/09(金) 22:03:19
SetMenuItemBitmaps って
Vistaだと16x16の32bitアイコン表示してくれるんだよね
微妙にうれしい


625 名前:デフォルトの名無しさん :2007/03/10(土) 08:31:59
Windowsの右下に小さなアイコンが居ますよね?
幾つも居るんだけど使わない時は隠れていたり.
アレってなんて言うんでしょうか?
アレもアプリの一種だというのは判るのですがどうやって作るのでしょうか?

626 名前:デフォルトの名無しさん :2007/03/10(土) 08:46:59
>>625
タスクトレイ
http://www.google.co.jp/search?complete=1&hl=ja&q=shellnotifyicon&lr=&aq=t&oq=shellnoti

627 名前:デフォルトの名無しさん :2007/03/10(土) 09:37:58
すまんAPIというか微妙なんだがブラシとかフォントとかリソースあるよね?
頻繁に使われるものをパフォーマンスのために一時的にキャッシュ(数秒使われなかったら削除など)してみようかと思うんだがこれは許されない行為なんでしょうか?

628 名前:デフォルトの名無しさん :2007/03/10(土) 09:46:09
いつ削除するかはプログラマの自由だべ。
とはいえ、削除しようとするハンドルが利用されていたらダメだけども。

629 名前:デフォルトの名無しさん :2007/03/10(土) 09:46:10
別にいいと思うよ。
俺もウィンドウを作ると同時にオブジェクトを作って、
ウィンドウを削除するまで保持しておくとかやるし。

630 名前:デフォルトの名無しさん :2007/03/10(土) 09:56:03
>>628-629
あり。
プログラミングウィンドウズ本とかですぐに開放しろといってるのは、たまるとほかのアプリのリソースを圧迫するからって話で、適切に管理するならやって大丈夫ということでいいのかな。

631 名前:デフォルトの名無しさん :2007/03/10(土) 11:56:45
>>630
> プログラミングウィンドウズ
Windows 3.1時代から改訂を繰り返してるから当時のリソース制限を前提に書いてる

632 名前:デフォルトの名無しさん :2007/03/10(土) 12:09:47
ロジックを複雑にしてリソースを可能なかぎり早く解放するより、多少無駄なリソースを持ってもロジックを単純にするほうが、
今日ではメリットが大きいと思われ。

633 名前:デフォルトの名無しさん :2007/03/10(土) 12:13:46
検討違いのレスがあるな

634 名前:デフォルトの名無しさん :2007/03/10(土) 12:34:39
漢字間違いのレスがあるな


635 名前:デフォルトの名無しさん :2007/03/10(土) 13:57:11
ぬるぽのレスが無いな

636 名前:デフォルトの名無しさん :2007/03/10(土) 14:12:21
ウインドウのDCをゲットして、スクリーンショットを撮るプログラムを書いてますが、
隠れてたり最小化してるウインドウは不可能ですよね?

637 名前:デフォルトの名無しさん :2007/03/10(土) 14:16:02
> ですよね?
やってみれ

638 名前:デフォルトの名無しさん :2007/03/10(土) 14:22:00
>>636
VistaでAero有効ならできる

639 名前:デフォルトの名無しさん :2007/03/10(土) 14:49:02
>>627
CreateFontでフォントを毎回作成するのと、最初に一度だけ作って使いまわすのを
比較したことがあるけど、毎回作ったときのオーバーヘッドはPentium3でも
0.1ms程度だったから、パフォーマンスのためにキャッシュってのは、
あまり効果がないよ。

640 名前:デフォルトの名無しさん :2007/03/10(土) 14:55:23
5とか10usみたいなミジンコみたいな小さい時間ならわかるけど、
100usって結構大きくね?

641 名前:デフォルトの名無しさん :2007/03/10(土) 15:09:49
わずかな時間でもそれを何回も呼ぶとかによって
トータルで速いとか遅いとか感じることが出来るかどうかだ。
微妙なら面倒なことやりたくないが
やってみないとわからないんだよな。

642 名前:デフォルトの名無しさん :2007/03/10(土) 15:30:06
おでの作ったアプリは起動時に全部読み込んで終了するまで放さないぜ

643 名前:デフォルトの名無しさん :2007/03/10(土) 17:14:12
そういうキャッシュに類する行為は実際に動作させてボトルネックに
なっていることがわかってから考慮すれば十分。

644 名前:デフォルトの名無しさん :2007/03/10(土) 17:27:17
HWND から実行ファイル名を調べる API があれば教えて下さい

645 名前:デフォルトの名無しさん :2007/03/10(土) 17:32:15
ありません

646 名前:デフォルトの名無しさん :2007/03/10(土) 17:38:41
TeraPad の外部ツールは HWND から実行ファイル名を特定してるぞ

647 名前:644 :2007/03/10(土) 17:39:22
無いのですか…残念

同一のツールでバージョン違いがいくつかあり、
今起動中のものがどのバージョンのものかを調べる方法が知りたかったのです
(ツールにはバージョン表記がなく、見た目では判別できません)

GetWindowThreadProcessId
GetModuleFileName
とか試してみたのですが、どうにもうまくいかなかったのでここで質問させてもらいました

648 名前:デフォルトの名無しさん :2007/03/10(土) 17:42:24
もっとスマートな方法がありそうだけど

GetWindowThreadProcessId
+
OpenProcess
+
GetModuleFileNameEx

649 名前:デフォルトの名無しさん :2007/03/10(土) 17:48:26
GetModuleFileNameEx
Windows 95/98:対応していません。

650 名前:デフォルトの名無しさん :2007/03/10(土) 17:51:23
>>643 とりあえず今遅いんだよね。
キャッシュでやってみて結果報告するノシ

651 名前:デフォルトの名無しさん :2007/03/10(土) 17:54:47
>>647
GetModuleFileNameは自プロセスのモジュールの情報しか得られません。
>>649
CreateToolhelp32Snapshot

652 名前:644 :2007/03/10(土) 18:01:33
>>651
ありがとうございます

CreateToolhelp32Snapshot プロセス 列挙 でググったら

CreateToolhelp32Snapshot
+
Process32First
+
Process32Next

でいけそうです
ありがとうございました

653 名前:デフォルトの名無しさん :2007/03/10(土) 20:41:28
NT系OSの場合はPSAPIに頼ることになるが、
9xならGetWindowModuleFileName()を使えば一発で取得可能。

http://support.microsoft.com/kb/228469/ja

654 名前:デフォルトの名無しさん :2007/03/10(土) 22:58:49
>>653
Win95ではMSAAは別途インストールする必要があるので
GetWindowModuleFileNameの存在を仮定できない。
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpdnacc/htm/ms_active.asp

655 名前:625 :2007/03/10(土) 23:04:31
626さんありがとう

ちなみにタスクトレイに並ぶアプリってスタートアップに入っていないのも居ますよね?
アレってどっかのレジストリに登録されているんだろうと思っているのですが,あってますでしょうか?
だとすると,それは何処になるのでしょうか?


656 名前:デフォルトの名無しさん :2007/03/10(土) 23:06:26
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
を見てみると幸せになれるかもしれない
あとたぶん他にもWindowsサービスで動いてるものもあるかと

657 名前:デフォルトの名無しさん :2007/03/10(土) 23:11:30
HKLMだけでなくHLCUにも同じのがあったはず

658 名前:デフォルトの名無しさん :2007/03/10(土) 23:23:13
え?タスクトレイにアイコンを表示したいんじゃないの?
Shell_NotifyIcon ってことじゃないの。

659 名前:デフォルトの名無しさん :2007/03/11(日) 00:30:50
ペゾルド上巻p.276のコードで意味の無さそうなコードに見える箇所があって
case WM_CREATE:
case WM_DISPLAYCHANGED:
・・・
cLinesMax = cyClientMax / cyChar ;
pmsg = (PMSG) malloc (cLinesMax * sizeof (MSG)) ;
cLines = 0 ;
return 0 ;

case WM_SIZE:
cxClient = LOWORD (lParam) ;
cyClient = HIWORD (lParam) ;

// Calculate scrolling rectangle
rectScroll.left = 0 ;
rectScroll.right = cxClient ;
rectScroll.top = cyChar ;
rectScroll.bottom = cyChar * (cyClient / cyChar) - 1 ;
return 0 ;
のようにWM_SIZEが送られるときはWM_PAINTも送られるからInvalidateRectなどは要らないと思って書き直してみたのですが、
元のコードには何かの意図があったのですか?

660 名前:デフォルトの名無しさん :2007/03/11(日) 00:34:53
>>659
ウィンドウを再描写させないようにリサイズすることは簡単なんじゃ?

661 名前:デフォルトの名無しさん :2007/03/11(日) 01:13:03
> WM_SIZEが送られるときはWM_PAINTも送られる
かどうかはクラススタイルに依存する。
ウィンドウ全体の再描画が必要かどうかは書こうとしているものに依存する

662 名前:デフォルトの名無しさん :2007/03/11(日) 01:41:24
VB6+WinInetを使ってHTTPSを扱うプログラムを書いています。
InternetErrorDlgを使ってユーザに選択させたクライアント証明書を使い続けたいのですが、
作成したコードだとHttpSendRequestを行う度に選択画面が表示されてしまいます。
(一度選択したクライアント証明書を次のHttpSendRequestで使用してくれない)

どなたか原因をご存じの方いませんか?


663 名前:デフォルトの名無しさん :2007/03/11(日) 06:13:41
WM_MOUSEMOVE と WM_NCMOUSEMOVE が逆転して送られてくるのですが
なぜだかわかりません(昨日まで正常だったのですが)。

理由がわかる方教えてください。


664 名前:デフォルトの名無しさん :2007/03/11(日) 06:24:01
クライアント座標とスクリーン座標の違いがあるのに適当に処理していため、窓の位置を変えたらおかしくなった。
とエスパーしてみる。

665 名前:デフォルトの名無しさん :2007/03/11(日) 06:33:17
WM_LBUTTONDOWN などはそのままクライアント座標なんですが。


666 名前:663 :2007/03/11(日) 06:42:55
よくわかりませんが正常に戻りました。
m(__)m

667 名前:デフォルトの名無しさん :2007/03/11(日) 07:36:27
>>657
あるね
スタートメニューで言う、All Usersとカレントユーザーの分けみたいなもんだね


668 名前:デフォルトの名無しさん :2007/03/11(日) 11:45:16
類似曲検索プログラムを作ってくれーーーーーーーーーーーー
なぜかない......
音符か、波に変換して比較すればいいんだ
頼む

669 名前:644 :2007/03/11(日) 11:47:29
>>668
そのような API は存じません

670 名前:デフォルトの名無しさん :2007/03/11(日) 11:48:48
短時間FFTでもどうぞ

671 名前:デフォルトの名無しさん :2007/03/11(日) 11:49:20
なんでもいいからMP3とWMAとwavを読み込めて
にた曲を抽出するやつをつくってくれ---------------------

672 名前:デフォルトの名無しさん :2007/03/11(日) 11:49:47
>>668
そにーがConnectPlayerで実装済みですが( ´Д`)なにか??

673 名前:デフォルトの名無しさん :2007/03/11(日) 11:50:24
マジで造ったら数千万円レベルだろ

674 名前:デフォルトの名無しさん :2007/03/11(日) 11:54:00
>>672
実装済みじゃなくて、ここにexeを貼り付けてクレーーーーーーーー
それ使って類似曲を抽出したい

675 名前:デフォルトの名無しさん :2007/03/11(日) 11:55:03
>>668
ttp://www.microsoft.com/japan/msdn/vstudio/express/visualc/
とか
ttp://gcc.gnu.org/
とかどう?

676 名前:デフォルトの名無しさん :2007/03/11(日) 11:55:15
そんぐらいぐぐれ

677 名前:デフォルトの名無しさん :2007/03/11(日) 11:55:59
もはやありきたりの技術じゃないか。

678 名前:デフォルトの名無しさん :2007/03/11(日) 11:58:58
ありきたりなら、ツールのリンクを貼り付けてクレーーーー
出てこないよ

679 名前:デフォルトの名無しさん :2007/03/11(日) 12:04:54
スレ違いに貼るリンクは無い

680 名前:デフォルトの名無しさん :2007/03/11(日) 12:21:01
スレ違いじゃない。
かといって板違いでもない。

そう、気違いだ。

681 名前:デフォルトの名無しさん :2007/03/11(日) 13:03:50
スレッドIDからプロセスIDをしるAPIはありますか?

682 名前:デフォルトの名無しさん :2007/03/11(日) 13:09:09
直接はない
環境が許すならOpenThread->GetProcessIdOfThreadが一番楽

683 名前:デフォルトの名無しさん :2007/03/11(日) 13:09:59
ハンドルからならGetProcessIdOfThreadってのがある

684 名前:681 :2007/03/11(日) 13:45:56
最近できたAPIっぽいですね
ありがとうございます


685 名前:デフォルトの名無しさん :2007/03/11(日) 14:01:51
Requirements
Client Requires Windows Vista.
Server Requires Windows Server "Longhorn" or Windows Server 2003

嫌がらせ以外には使えねえな

686 名前:デフォルトの名無しさん :2007/03/11(日) 16:24:25
エクスプローラでマウスの真ん中ボタンを押したら
新しいウインドウで開く
って実現できますかね?
レジストリ登録だけで右クリック⇒新しいウインドウ
はできるんだけぢ

687 名前:デフォルトの名無しさん :2007/03/11(日) 16:28:28
>>686
出来るだろうけど、正攻法じゃなさそうだし俺は方法を知らない

688 名前:デフォルトの名無しさん :2007/03/11(日) 16:47:02
できたら便利なんだけどなぁ
DLLインジェクションでエクスプローラに寄生するとか
そういう難しいことしないとダメなのかな

689 名前:デフォルトの名無しさん :2007/03/11(日) 17:09:27
>>684
Vista以前でどうにかしたかったらToolhelp32かPSAPIで列挙して自分で探す

690 名前:デフォルトの名無しさん :2007/03/11(日) 18:33:33
msdn2またおもくなちゃってる
msdn2かわいいよmsdn2

691 名前:デフォルトの名無しさん :2007/03/11(日) 19:21:27
なんでwebブラウザに拘るんだろう>msdn online
バカバカしい

692 名前:デフォルトの名無しさん :2007/03/11(日) 19:25:09
webのmsdnってIEベース以外のブラウザだと表示がgdgdになるからイヤ

693 名前:デフォルトの名無しさん :2007/03/11(日) 19:32:48
そりゃ自社のサイトなんだから自社製品以外では見れないように嫌がらせするのが当然だろ

694 名前:デフォルトの名無しさん :2007/03/11(日) 19:45:05
深い階層に行くほど、左のフレームの表示にCPU食いまくって糞重い

695 名前:デフォルトの名無しさん :2007/03/11(日) 19:46:36
>>692
最近はわりと改善されてる。
一時のスタイルシート切らないと表示すらされないとかメニューがことごとく文字化けとか
まったく話にならないレベルと比べると

696 名前:デフォルトの名無しさん :2007/03/11(日) 19:49:14
>>694
a

697 名前:デフォルトの名無しさん :2007/03/11(日) 19:49:22
>>693
単純にコストの問題だ馬鹿。
ひとつ対応ブラウザ増やすだけで、どんだけ工数が増えると思ってんだよ。

698 名前:デフォルトの名無しさん :2007/03/11(日) 19:51:24
0.1%位

699 名前:デフォルトの名無しさん :2007/03/11(日) 20:00:41
逆だ馬鹿、わざわざ手間をかけてIE以外では全く読めないようにしてあるんだ
普通に書いたらせいぜいレイアウトが多少変わるくらいでとりあえず読めてしまうだろ

700 名前:デフォルトの名無しさん :2007/03/11(日) 20:03:14
>>697
それは何時もどこかで独禁法で争ってるMSですから^^; 

>>695
久々に行ってみたら確かに良くなってた
結局ローカルのほうが軽快なんだけどね

701 名前:デフォルトの名無しさん :2007/03/11(日) 20:16:39
>>699
そうじゃないんだよ、馬鹿。
HTMLってちょっとしたことで致命的に非互換なページができるんだよ。
運良くその「ちょっとしたこと」を踏まなきゃそこそこマシなページになるんだが、
あんなごちゃごちゃしたサイトにそれを望むのは酷だ。
てか、おまえ、Web系の仕事したことない素人だろ。

702 名前:デフォルトの名無しさん :2007/03/11(日) 20:18:39
そういう事を楽にする技術のひとつがASP.NETだった気がするんだが

703 名前:デフォルトの名無しさん :2007/03/11(日) 20:22:12
>>702
楽になる=コストがゼロになる・・・じゃないぞ。

704 名前:デフォルトの名無しさん :2007/03/11(日) 20:25:25
こんぐらい殺伐としたやりとりがあると
ああWin32APIスレだなぁって思う。

705 名前:デフォルトの名無しさん :2007/03/11(日) 20:43:00
>>701
たとえば致命的に非互換名ページをみせてみ?

706 名前:デフォルトの名無しさん :2007/03/11(日) 20:47:34
確かに、非標準の MSIE 独自機能のようなちょっとしたことを踏んでしまうかどうかは
運不運の問題であって、避けようがない災難だから仕方ないな
事実、世の中にあるほぼ全てのウェブページは IE 以外では全く読めないしな
Web系の仕事したことあるプロが言うんだから間違いない

707 名前:デフォルトの名無しさん :2007/03/11(日) 20:58:44
Web系の仕事した事ないけど俺のサイトは殆どのブラウザでみれるな

708 名前:デフォルトの名無しさん :2007/03/11(日) 21:06:50
>>705
致命的という言い過ぎかもしれんが、わんくまとか
Safariでみるとかなり酷いことになるぞ。

709 名前:デフォルトの名無しさん :2007/03/11(日) 21:27:08
>世の中にあるほぼ全てのウェブページは IE 以外では全く読めないしな
いったいいつの時代の話だ

710 名前:デフォルトの名無しさん :2007/03/11(日) 21:31:33
"全く"を除けば同意

711 名前:デフォルトの名無しさん :2007/03/11(日) 21:38:03
>>710
いったいいつの時代の話だ

712 名前:デフォルトの名無しさん :2007/03/11(日) 21:45:26
まぁ待てよ
マカーかもしらんぜ?

713 名前:デフォルトの名無しさん :2007/03/11(日) 22:02:57
マカーがWin32 API 質問スレッドとか読んでるのか

714 名前:デフォルトの名無しさん :2007/03/11(日) 22:07:12
>>713
マカーっていうか、WinとMacを両方持っているヤツなんて別に珍しくないだろ。
俺も、この書き込みはMacからしてるし。

715 名前:デフォルトの名無しさん :2007/03/11(日) 22:17:23
珍しいわw

716 名前:デフォルトの名無しさん :2007/03/11(日) 22:22:18
>>714
自分の感覚即ち世の大勢とかいうような思考は慎んだ方がいいぜ
企業の備品ならともかく、個人でWinとMac両方そろえてるなんてごく一部

717 名前:デフォルトの名無しさん :2007/03/11(日) 22:25:24
>>714じゃないけど……
どちらが事実に近いかは別として(多分君が正しい)、
全く同じ反論が成立することについては自覚してる?

718 名前:デフォルトの名無しさん :2007/03/11(日) 22:26:32
いや、Winユーザからしたらそりゃマイナーな存在に見えるかもしれんけど、
Winマシンも持ってるMacユーザは普通に居るだろ。

719 名前:デフォルトの名無しさん :2007/03/11(日) 22:30:27
Macユーザー限定の話ならそりゃそこまで珍しくは無いだろうなぁ
だがMacユーザー限定なんて言ってないしな

720 名前:デフォルトの名無しさん :2007/03/11(日) 22:31:07
マイナーでも確実にいる

721 名前:デフォルトの名無しさん :2007/03/11(日) 22:37:56
つまり井戸の蛙か

722 名前:デフォルトの名無しさん :2007/03/11(日) 22:41:10
使い所を間違ってるな

723 名前:デフォルトの名無しさん :2007/03/11(日) 22:55:11
今のMacはエミュ無しでWindowsが動くぞ。

724 名前:659 :2007/03/11(日) 23:17:13
>>660-661
ウィンンドウ作成時、WM_CREATEに始まってそれからどんな順番でメッセージが送られるのか記憶が
曖昧だったので混乱しましたが、ありがとうございました。

725 名前:デフォルトの名無しさん :2007/03/12(月) 08:08:17
おいおい、スレ違いもry

726 名前:デフォルトの名無しさん :2007/03/12(月) 08:33:56
proxomitronみたいなのでMSDNのフィルタ作れ

727 名前:デフォルトの名無しさん :2007/03/12(月) 10:57:55
言い出しっぺ頑張れ

728 名前:デフォルトの名無しさん :2007/03/12(月) 11:23:49
どうしてもローカルに保存する必要がある場合は
わざわざそれ専用のDLプログラム作ったりするけど
MSDNはローカルに持ってるからな
サイトの構成わかってるんだし直リンページ作っとけば済むと思うけど

729 名前:デフォルトの名無しさん :2007/03/12(月) 14:46:37
そのうちMSDN3がしゃしゃり出てきて、また一つ一つURLを直さないといけない

730 名前:デフォルトの名無しさん :2007/03/12(月) 15:49:18
ちょっと質問。
プログラムの追加と削除に表示されるアイコンてどこに保存されてるの?


731 名前:デフォルトの名無しさん :2007/03/12(月) 16:04:05
HDD

732 名前:デフォルトの名無しさん :2007/03/12(月) 16:05:45
ここはやっぱりURNだろ
俺はしらんが

733 名前:デフォルトの名無しさん :2007/03/12(月) 16:11:54
表示用アイコンの項目で指定された場所にあるはず

734 名前:デフォルトの名無しさん :2007/03/12(月) 16:14:49
普通はインストールしてあるプログラム

735 名前:デフォルトの名無しさん :2007/03/13(火) 02:58:51
プログラムのアイコン書き換えたらどこなのか簡単に分かると思うけど。

736 名前:デフォルトの名無しさん :2007/03/13(火) 03:13:44
>>735


737 名前:デフォルトの名無しさん :2007/03/13(火) 05:13:50
LocalLockしたローカルメモリオブジェクトをLocalUnlockせずにLocalFreeしても大丈夫?

738 名前:デフォルトの名無しさん :2007/03/13(火) 05:26:09
今はLock、Unlockって機能してるの?

739 名前:デフォルトの名無しさん :2007/03/13(火) 05:35:47
してない。
LocalLockは二重ポインタ逆参照してるだけだしLocalUnlockは何もしない。

740 名前:デフォルトの名無しさん :2007/03/13(火) 09:07:39
派遣プログラマ、高卒、身長163cmです
この先どうしたらいいですか?

741 名前:デフォルトの名無しさん :2007/03/13(火) 09:15:58
>>740
激しくスレ違い。というか死んでくれ。

742 名前:デフォルトの名無しさん :2007/03/13(火) 11:15:20
なんかDVD-RAMドライブでエラーが起こると
勝手にドライバ設定がDMAからPIOになっちゃうみたいなんですけど、
これがいつもコソーリ起こるので
何か
「エラー出たのでPIOにしました」
みたいなメッセージとか出したいような気がするんですが、
何を監視すればいいですか?

743 名前:デフォルトの名無しさん :2007/03/13(火) 13:15:02
>>742
http://support.microsoft.com/kb/817472/ja
http://journal.mycom.co.jp/column/winxp/075/
http://blog.so-net.ne.jp/haruyuki-m/2005-09-05

恒久的に(再起動後も)影響するのはMasterDeviceTimingModeAllowedあたり。

744 名前:743 :2007/03/13(火) 13:15:34
DVDだとSlaveDevice〜か。

745 名前:742 :2007/03/13(火) 16:24:41
THX!

746 名前:デフォルトの名無しさん :2007/03/13(火) 18:58:43
GDIよりDIBの方が描画速度が速いですか

747 名前:デフォルトの名無しさん :2007/03/13(火) 18:59:49
それはアレだな。
車よりガソリンの方が走るのが速いですかと聞いてるようなもんだ。
まともな返事は返ってこないよ。

748 名前:デフォルトの名無しさん :2007/03/13(火) 19:05:21
>>747
ワロタ
分かりやすい例えだ

>>746 じゃないけど

749 名前:デフォルトの名無しさん :2007/03/13(火) 19:10:59
ウィンドウメッセージのメッセージIDを「WM_DESTROY」といった名称に変換するにはどうしたらいいですか?

750 名前:デフォルトの名無しさん :2007/03/13(火) 19:11:07
.NETよりGDI+の方が(ry


■過去ログ置き場に戻る■ 1- 前250 次250 最新50
DAT2HTML 0.33f Converted.