08/06/07 00:31:04
こんな風に書いているので、問題があったら知りたいなぁという以上の意味はないので・・・
// ドローイングエリアの真ん中へ移動
Cursor.Position = new Point((winRect.left + winRect.right) / 2, (winRect.top + winRect.bottom) / 2);
//クリック
INPUT[] input = new INPUT[2]; // 計2イベントを格納
input[0].mi.dwFlags = MOUSEEVENTF_LEFTDOWN;
input[1].mi.dwFlags = MOUSEEVENTF_LEFTUP;
SendInput(2, input, Marshal.SizeOf(input[0]));
893:いのぶー
08/06/07 00:46:46
追伸、
466の記述時点では、Rectで何の値が取れるか分かっていなかったのですが、
デバッグプリントして、理解して、887の時点では、なんとか好きな所に点が打てるように
なっていました。
(おそらく、入れ違いになってしまったのでは・・・と思っています。)
ただ、この場合に、ウィンドウ内の座標を使って何ができるのかが知りたいのです。
この場合、テンプレの本を薦められても対象が高域過ぎるのでお勧めのURLや書籍
でもあれば、明日にでも探しに行きたいと思います。
894:デフォルトの名無しさん
08/06/07 02:01:28
いい加減うざいです><
Win32スレなのか.NETスレなのか分かりません><
895:デフォルトの名無しさん
08/06/07 02:16:31
ここってWin32APIスレですよね><
言語が.NETだろうとWin32の話なら全然構わないと思います><
896:デフォルトの名無しさん
08/06/07 03:27:14
たとえば、スレッドの中にスレッド作った場合の注意点ってある?
開放する順番以外に。windowsスレッドって、ExitThread(true)で
自動で開放されたりしない?ハンドルクローズしないとダメ?
897:デフォルトの名無しさん
08/06/07 03:45:01
windowsスレッドって何だよ
windows板なら分かるが
898:デフォルトの名無しさん
08/06/07 04:47:09
>893
何ができるかとかいう問題じゃなくて
┏━┓
┗━┛
この枠の内側測るのと外側測るのじゃ大きさが違うだろ?
内側から測れって言われてるのに外側から測った数字使ってたりしたら
細かいところで計算が合わないからちゃんと意識しろってこと。
899:896
08/06/07 06:05:37
>>897
Linuxのプロセスみたいにゾンビプロセスが残るのかとか
windows のスレッドはexitThread(true)でスレッド開放されるのかとか
900:デフォルトの名無しさん
08/06/07 06:41:38
スレッド自身がExitThreadを呼び出すか、スレッドの関数から戻ればスレッドは止まる。
どのスレッドによって作られたか、などということは一切関係ない。
また、そのスレッドを参照しているすべてのスレッドハンドルをCloseHandleしなければならない。
スレッドハンドルを閉じていないということは、まだ使うということだから。
スレッドがシグナル状態になっているかどうかを見るなど。
pthreadだって、明示的にpthread_joinかpthread_detachしなきゃならんだろ。
901:いのぶー
08/06/07 06:56:28
> 898
取れる数字に対する注意点を教えていただいたと理解しました。
894さんとか、うざがってる方もいることですので、この話題を終了したいと思います。
ありがとうございました。
902:デフォルトの名無しさん
08/06/07 08:06:34
>>899
> ExitThread(true)
こんな事を書いてるということはMSDN読んでないのがバレバレ
903:デフォルトの名無しさん
08/06/07 14:06:32
おいおい・・
そんなこと言ったら、ここの質問全てmsdn嫁で終わるw
904:デフォルトの名無しさん
08/06/07 14:25:25
ちょっと質問ですが、
//tmpgenc.pegasys-inc.com/ja/download/tp.html
TMPGEncの支援ツールを作りたいと思ってます。
主に自動で次々と縁故してくれるように支援するツールです。
そこで、まずファイルをドロップしてファイル名を渡すところですが、ここはどんなAPIを使ってドロップしたことにしてやればよろしいでしょうか?
905:デフォルトの名無しさん
08/06/07 14:27:01
はぁ?
906:デフォルトの名無しさん
08/06/07 14:29:15
>>905
そのTMGENCの画面にファイルをドロップするところを、他のアプリから操りたいのです・・・。
907:デフォルトの名無しさん
08/06/07 14:47:12
はぁ?
908:デフォルトの名無しさん
08/06/07 14:47:55
知らないならレスしないでください
909:904
08/06/07 14:50:36
908は私の発言じゃないですよ。
わかりにくいですか?
910:デフォルトの名無しさん
08/06/07 14:53:40
まったく分からない
911:デフォルトの名無しさん
08/06/07 14:54:30
初心者スレ池
912:デフォルトの名無しさん
08/06/07 14:55:06
910は私の発言じゃないですよ。
わかりにくいですか?
913:デフォルトの名無しさん
08/06/07 15:10:01
TMPEGの画面ってのがよく分からんが
画面へのドロップ動作をさせたいならOLE D&Dとマウス動作のシミュレートで良いんじゃね
コマンドライン使えるならそっちの方がいいと思うけど
914:デフォルトの名無しさん
08/06/07 15:12:18
お前は何を言ってるんだ
915:デフォルトの名無しさん
08/06/07 15:12:52
LoadLibraryEx で LOAD_LIBRARY_AS_DATAFILE や LOAD_LIBRARY_AS_IMAGE_RESOURCE を
指定してロードした特定のモジュールのファイル名を、GetModuleFileName で取得できません。
(GetModuleFileName の戻り値は0だが、GetLastError の戻り値は ERROR_SUCCESS)
具体的に言うと、下のページの mxdrv.dll が該当します。
URLリンク(gorry.haun.org)
どういったケースでそれが起こるのか、誰かおわかりになりませんか。
916:デフォルトの名無しさん
08/06/07 15:27:25
>>913
レスありがと。
ただOLE D&Dって初見なんだけど、これってつまりAPIでファイルを対象のウィンドウにドロップするやつはないってことですか?
917:916
08/06/07 15:38:46
自己解決しました、ありがとうございます
918:デフォルトの名無しさん
08/06/07 16:21:57
英語MSDNのSendIMEMessageExに
This function is obsolete and should not be used.
と書いてた。
ってことは、IME使うにはどうすればいいんだ?
919:デフォルトの名無しさん
08/06/07 16:28:20
質問です。
対象のアプリのボタン(OKと書かれたボタン)が操作不可かどうかを判断したいのですが、
なにか手はありますでしょうか?
920:デフォルトの名無しさん
08/06/07 16:29:48
フックふっくにしてやんよ
921:デフォルトの名無しさん
08/06/07 16:37:46
IsWindowEnabledでいいんじゃね
922:デフォルトの名無しさん
08/06/07 17:07:40
>>918
Imm~関数群などを使う。
923:デフォルトの名無しさん
08/06/07 17:16:07
IMMの次はTSFだぜ
924:デフォルトの名無しさん
08/06/07 18:31:42
>>923
> TSFとは、異性への性転換を扱うフィクションのジャンルにおける略称である。
URLリンク(ja.wikipedia.org)
???
925:デフォルトの名無しさん
08/06/07 18:38:05
ストリートファイターズ……
926:デフォルトの名無しさん
08/06/07 18:51:28
アルファベット3文字の略称って大抵は既に何かに使われてるよなw
927:デフォルトの名無しさん
08/06/07 19:26:35
_beginthreadexでつくったスレッドで現在稼動しているもののIDかなんかを取得するのは
どうすればいいですか?Thread.currentThread()みたいなやつ
928:デフォルトの名無しさん
08/06/07 19:33:05
GetCurrentThread
GetCurrentThreadId
929:デフォルトの名無しさん
08/06/07 19:33:19
IDってどういう意味だ?
スレッドハンドルの事を言っているなら、_beginthreadexの戻り値がまさにそれだ。
必要ないなら、ちゃんとCloseHandleしておけ。
スレッドIDの事を言っているのなら、スレッドハンドルに対してGetThreadIdを呼べ。
930:デフォルトの名無しさん
08/06/07 19:37:06
>>927
GetCurrentThread
931:918
08/06/07 19:44:58
>>922,923
感謝する。
とりあえず今回はTSFの方向で考えてみようと思う。
932:デフォルトの名無しさん
08/06/07 19:49:55
>>931
え……?性転換ネタでいくの?キョン子はやめたほうが……
933:931
08/06/07 20:05:29
>>932
TextServicesFlameworkですよ(汗
...とマジレスしてみる。
934:デフォルトの名無しさん
08/06/07 20:08:52
>>928-930あざーした
935:デフォルトの名無しさん
08/06/07 20:31:21
>>933
Text Services Frameworkですよとマジレス
936:デフォルトの名無しさん
08/06/07 20:37:32
Flamework
燃える仕事か。
937:デフォルトの名無しさん
08/06/07 20:40:20
>>934
一応言っておくと、GetCurrentThreadで得られるのは擬似ハンドルで
自分自身のスレッドを示す事にしか使えないからな。
938:933
08/06/07 20:46:31
>>935,936
わざとだ。
ということにしておいてくれ。
939:デフォルトの名無しさん
08/06/07 20:55:32
>>936
仕事熱心でいいじゃないか
940:デフォルトの名無しさん
08/06/07 21:01:53
炎上しているって事はデスマーチなんだろ
941:デフォルトの名無しさん
08/06/07 21:04:22
>>937
なんか書いてありましたね。でも
_beginthreadexの最後の引数に入るDWORDのIDはGetCurrentThreadIdのものと一致しますよね?
あと関係ないと思うんですが、MSDNの
_endthread と _endthreadex によって、C++ デストラクタはスレッドで保留状態になり、呼び出されません。
という日本語の意味がよく分からないんですが、どういうこと?
942:デフォルトの名無しさん
08/06/07 21:14:46
ThreadEntry(PVOID param)
{
CMyClass hoge;
kansuu();
}
kansuu()
{
_enthreadex(0);
}
hogeのデストラクタは呼ばれませんよということ
素直にreturnしとけ
943:デフォルトの名無しさん
08/06/07 21:16:00
日本語の意味が分からなかったら英語版を読めばいいだろ
そもそも日本語版なんてWin95時代から更新止まってるのにそんなの見るなって
944:デフォルトの名無しさん
08/06/07 21:22:00
英語MSDNのSendIMEMessageExに
This function is obsolete and should not be used.
と書いてた。
ってことは、IME使うにはどうすればいいんだ?
945:デフォルトの名無しさん
08/06/07 21:25:06
英語MSDNのSendIMEMessageExに
This function is obsolete and should not be used.
と書いてた。
ってことは、IME使うにはどうすればいいんだ?
946:918
08/06/07 21:27:22
なんかコピペされてる?
何事ですか?
947:デフォルトの名無しさん
08/06/07 21:28:37
英語MSDNのSendIMEMessageExに
This function is obakadesu and should not be used.
と書いてた。
ってことは、IME使うにはどうすればいいんだ?
948:デフォルトの名無しさん
08/06/07 22:10:57
MSDNのYieldのところに
ウィンドウを含むスレッドでは、DispatchMessage 関数、PeekMessage 関数、または TranslateMessage 関数を使ってください。
てあるけど、どうやんのかね?
949:デフォルトの名無しさん
08/06/07 22:20:17
ウィンドウを作ったスレッドがなんでyieldなんかするんだよ
950:デフォルトの名無しさん
08/06/07 22:31:29
知らないならレスしないでください
951:デフォルトの名無しさん
08/06/07 22:57:14
糞スレ終了
952:デフォルトの名無しさん
08/06/08 00:37:08
次は、まだかな♪(・ ・。)(。・ ・)まだかな♪
953:デフォルトの名無しさん
08/06/08 00:42:09
質問したいんですけどいいですか?
954:デフォルトの名無しさん
08/06/08 00:44:29
ものによる。まずは質問して。
955:デフォルトの名無しさん
08/06/08 00:49:12
>>948
PeekMessageでぐぐればいろいろ例が見つかるはずだから、そのとおりにやればいい。
956:デフォルトの名無しさん
08/06/08 00:55:24
質問です
CreateThreadで作ったのが糞スレッドかどうか判断するAPIを教えてください
957:デフォルトの名無しさん
08/06/08 00:58:06
CreateThread自体が糞だからそのようなAPIは用意されていません。
958:デフォルトの名無しさん
08/06/08 08:19:20
PCを起動したときに、それまで何日間起動されなかったか知りたいのですが、
前回シャットダウンした日時を取得する方法ってありますか?
959:デフォルトの名無しさん
08/06/08 09:05:59
イベントログ
960:デフォルトの名無しさん
08/06/08 10:58:25
>>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);
}
}
961:デフォルトの名無しさん
08/06/08 11:00:37
親切な人だなぁ・・
質問者じゃないけど、感心した
962:デフォルトの名無しさん
08/06/08 14:26:31
質問者はトリップ付けた方がいいと思うお
963:デフォルトの名無しさん
08/06/08 15:22:53
そんな面倒な事わざわざしないお
964:デフォルトの名無しさん
08/06/08 18:23:10
IDがあればそんな面倒な事しなくもいいのにね
965:デフォルトの名無しさん
08/06/08 19:07:44
コンボボックスをオーナードローすると
初期表示状態が微妙に縦幅が太くなるんだけぢ
どうやって元に戻すんdねすか?
中身の太さ(高さ)は↓で細くできたんです
void CColorComboBox::MeasureItem(LPMEASUREITEMSTRUCT lpMeasureItemStruct)
{
lpMeasureItemStruct->itemHeight = 14;
}
966:デフォルトの名無しさん
08/06/08 19:07:58
またID厨か
967:965
08/06/08 19:15:42
もひとつ問題が
オーナードローを可変にすると(CBS_OWNERDRAWVARIABLE)
ボックス内でマウスホイール動かしたときに意味不明な動きをします。
ホイールを下に回してるのに上からビローンって一回転して正しい
位置に回ってきます。なんだこれ。
968:デフォルトの名無しさん
08/06/08 19:46:30
>>966
独り言消えろ
969:デフォルトの名無しさん
08/06/08 19:48:08
またまたID厨か
970:デフォルトの名無しさん
08/06/08 19:53:08
ID厨ウゼェ
971:デフォルトの名無しさん
08/06/08 19:57:41
↑キモッ
972:デフォルトの名無しさん
08/06/08 19:58:33
ID厨の特徴
1. 「IDがあればなぁ」などと書く
2. 自演で荒らす
3. 「やっぱID欲しいな」などと書く
973:デフォルトの名無しさん
08/06/08 20:08:59
やっぱID欲しいな
974:デフォルトの名無しさん
08/06/08 20:09:32
IDがあればなぁ
975:デフォルトの名無しさん
08/06/08 20:29:07
俺の予想では荒らしてるのは一人か二人
976:デフォルトの名無しさん
08/06/08 20:29:14
かまってほしいな
977:デフォルトの名無しさん
08/06/08 20:30:04
>>975
二人以上なのか確実
おれ以外にも居るから
978:デフォルトの名無しさん
08/06/08 20:30:32
× なのか
○ なのは
979:デフォルトの名無しさん
08/06/08 20:32:58
りりかる
980:デフォルトの名無しさん
08/06/08 20:54:18
/* ここまで俺の自演 */
981:デフォルトの名無しさん
08/06/08 21:05:34
/* かまってほしいな */
982:デフォルトの名無しさん
08/06/08 21:10:01
/*
コメント
/*/
スイッチ
//*/
983:デフォルトの名無しさん
08/06/08 21:20:31
>>977
いや一人だ
俺と、俺の中の別人格(=お前)
984:デフォルトの名無しさん
08/06/08 21:24:40
チィッ…右手よ、静まれ!
985:デフォルトの名無しさん
08/06/08 21:38:27
IDがあって困ることはないから、ID導入して欲しいな。
なんでム板はないんだっけ?
986:デフォルトの名無しさん
08/06/08 21:40:04
必要ないから
987:デフォルトの名無しさん
08/06/08 21:45:51
IDは昔はどこもなかった。基本的にはIDが導入される板というのは
人が多く荒れる事が多い板。今までム板では現状のこのスレみたいな
事がほとんどなかったから必要なかっただけかな
988:デフォルトの名無しさん
08/06/08 21:52:30
この程度で荒れてるって・・・
989:デフォルトの名無しさん
08/06/08 21:56:25
機能してない時点で十分荒れてるだろう、ここは雑談系の板ではなく専門板なんだから
990:デフォルトの名無しさん
08/06/08 22:06:49
それに加担してる事は自覚してるのかね
991:デフォルトの名無しさん
08/06/08 22:11:40
自覚してないけど、何か?
992:デフォルトの名無しさん
08/06/08 22:12:33
次スレ建ってないんだから減速しろ
993:デフォルトの名無しさん
08/06/08 22:18:11
建ててくるわ。
Win32API質問箱 Build67
スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。
やさしいお兄さんやお姉さんたちが答えてくれるかも。
過去スレ、関連リンクは>>2-10くらい。
■注意
・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。
・日本語版MSDN Online Libraryは不完全です。英語版(URLリンク(msdn2.microsoft.com))の利用推奨。
・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。
・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで
- Win32API質問箱 wiki
URLリンク(wiki.livedoor.jp)
Win32API質問箱 Build66
スレリンク(tech板)
994:デフォルトの名無しさん
08/06/08 22:27:48
次スレたててきた
スレリンク(tech板)
995:デフォルトの名無しさん
08/06/08 22:40:15
ume
996:デフォルトの名無しさん
08/06/08 22:40:35
うめ
997:デフォルトの名無しさん
08/06/08 22:41:11
産め
998:デフォルトの名無しさん
08/06/08 22:42:18
埋め
999:デフォルトの名無しさん
08/06/08 22:43:16
おめ
1000:デフォルトの名無しさん
08/06/08 22:43:25
こ
1001:1001
Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。