[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 06/22 11:35 / Filesize : 228 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Win32API質問箱 Build52



1 名前:デフォルトの名無しさん [2007/04/18(水) 01:54:51 ]
スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。
やさしいお兄さんやお姉さんたちが答えてくれるかも。

過去スレ、関連リンクは>>2-5くらい。

■注意
・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。
・日本語版MSDN Online Libraryは不完全です。英語版(msdn.microsoft.com/library/)の利用推奨。
・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。
・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで

75 名前:デフォルトの名無しさん mailto:sage [2007/04/19(木) 22:02:35 ]
>>74
シェルの機能なのでcmd.exeごと起動する。cmd /? をチェキ。

76 名前:74 mailto:sage [2007/04/19(木) 22:06:48 ]
>>75
納得!!
cmd.exeに委託しているんですかー。

ありがとうございます。

77 名前:デフォルトの名無しさん mailto:sage [2007/04/19(木) 22:38:43 ]
CreateWindowのEDITで、書き込みとか書き換えを不可能にするために
EnableWindow(h1, FALSE)をしたところ、背景が灰色になって文字も薄くなりました。
書き換え書き込みは不可能なまま、背景白、文字黒に直したいのですが
どうすればいいのでしょうか?

78 名前:デフォルトの名無しさん mailto:sage [2007/04/19(木) 22:47:20 ]
>>77
ES_READONLY
WM_CTLCOLORSTATIC
でどう?

79 名前:デフォルトの名無しさん mailto:sage [2007/04/19(木) 22:55:03 ]
>>78
できました!ありがとうございます!
しかし、目的のEDITのウィンドウの背景を変えるにはどのように指定すればいいのでしょうか?

80 名前:デフォルトの名無しさん mailto:sage [2007/04/19(木) 23:59:54 ]
>>79
親ウィンドウでWM_CTLCOLOREDITを捉える

81 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 00:20:58 ]
リストビューの行にチェックボックスはどうやって付けるのでしょうか
↓こんな感じです
_______
|__|_____
|□  |
|□  |
|□  |
 ̄ ̄ ̄ ̄ ̄ ̄ ̄

82 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 00:25:49 ]
>>81
www.kumei.ne.jp/c_lang/sdk2/sdk_198.htm

ここらへんで幸せになれると思う

83 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 00:27:54 ]
>>82
即レスありがとう
幸せになってきます



84 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 09:52:05 ]
>>72
それでした。
""を追加したら表示されました。
ありがとうございました。

85 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 10:35:32 ]
ReadFileで読み取ったファイルを1行づつ二次元の配列に格納して
構文解析したいです

ReadFileの第二パラメータのバッファから、二次元の配列に移すAPI
はありますか?

86 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 10:45:42 ]
CopyMemory

87 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 10:57:17 ]
物臭もここまでくると素晴らしいな

MSが何の為にそんなAPI用意するんだろうか

88 名前:デフォルトの名無しさん [2007/04/20(金) 11:50:11 ]
質問です。
ツールバーを作ろうとしているのですが、色々なサイトを調べても、ツールバー上にはボタンしか置いていないようです。
コンボボックスをツールバー上にのせたいのですが、可能でしょうか?

ツールバーと似た、レバーコントロールというものの上におけるのは調べて発見できたのですが…

89 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 11:58:39 ]
>レバーコントロール
思わずふきだしてしもた。


90 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 12:57:22 ]
エクセルでオープンしているファイルを、
CreateFileでオープンしたいのですが、どうすれば出来るでしょうか。

エクセルでオープンしていなければ、CreateFileでオープンできるのですが、
エクセルでオープンしていると、CreateFileでオープンできないようです。
ただ、他のファイルビュアーでは読めたりするので、どうやればそれができるのかわかりません。

91 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 13:01:21 ]
CreateFileのリファレンス読めば明らかだと思うが・・

92 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 13:01:24 ]
>>90
排他モードで開いてるんだろ

93 名前:85 mailto:sage [2007/04/20(金) 13:06:25 ]
ReadFileの第二パラメータのバッファの中は

111\r\n222\r\n333\r\nEOF

と連続した文字列なのはわかったのですが、これをCopyMemoryを使って、
1行づつ二次元の配列に移す場合、バッファを先頭から1文字づつ読んで\r\n
毎に切り分けて格納するしかないのでしょうか・・・
定番の読み方(例えば仕事(?)でやられる方)が知りたいです

↓こうしたい
char hairetsu[5000][1024] (5000はファイルの行数、1024は1行の最大の長さ)

hairetsu[0][1024]に111\r\n
hairetsu[1][1024]に222\r\n
hairetsu[2][1024]に333\r\n
hairetsu[3][1024]にEOF



94 名前:85 mailto:sage [2007/04/20(金) 13:07:03 ]
>>86
ありがとうございます

95 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 13:12:28 ]
てかCの標準関数にそのものズバリなのあるじゃねぇか

96 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 13:19:12 ]
バッファはそのまま使いつづけて
各行開始位置のポインタ値を保持する変数配列を用意し
バッファを一旦頭から末尾まで全部捜査し
行開始位置のポインタをとりつつ\r\nを\0\0に書き換えていく
これで文字列系関数にもポインタを渡すだけで行ごとに処理が可能に!

つーか>>93みたいな多元配列はメモリの無駄だし

97 名前:デフォルトの名無しさん [2007/04/20(金) 14:00:55 ]
Win2000+VC.net2003の環境で
QueueUserAPCをコンパイルすると
error C3861: 'QueueUserAPC'識別子は、引数依存の照合を使用しても見つかりません。
と出るんですがどうすれば解決できますか?
winbase.hをインクルードしてもkarnel32.dllとリンクしても駄目みたいなんですが。。

98 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 14:06:49 ]
_WIN32_WINNT を 0x0400 以上の値で define した後にヘッダーをインクルード
(コンパイラ設定でマクロ設定する でも可)

99 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 14:22:34 ]
子ウィンドウが開かれていて、親ウィンドウの上を移動させる時、
9x系と再描画されて、XPだと再描画されないのですが、
9x系とXPでは、再描画の挙動が違ったりしているのでしょうか。

100 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 14:46:22 ]
そりゃあ、OSの設定の問題だろ
移動を終えてドラッグ止めたら再描画されるだろ?

101 名前:99 mailto:sage [2007/04/20(金) 15:35:25 ]
>>100
ありがとうございます。
されないです。
最小化して標準に戻すのでもダメです。
WM_PAINTが来てない可能性すらあるので、
そこらへんから実験してみます。

102 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 16:22:57 ]
それはあれか、全く同じEXEを9xとXPで動かしてるのか?

>WM_PAINTが来てない可能性すらあるので、
ネェヨwwwww

103 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 16:29:05 ]
子ウインドウは動かしただけでは再描画されなくても正常だが
WS_EX_LAYERED付なら親でも



104 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 16:34:47 ]
そういえばレイヤードウィンドウなんてありましたねぇ
全然必要性を感じないから使ったこと無いですが

105 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 16:39:05 ]
レイヤードウィンドウは雑誌やスクリーンショットで見る分にはかっこいいが
実際に使ってみると使いにくくてしょうがない

106 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 16:42:11 ]
>>95
ありがとうございますstrtok確認しました

>>96
>\r\nを\0\0に書き換えていく
このやり方で行きます目から鱗です
こういうテクニックって本に書いてあるんでしょうか?
ウェブでも本でも見たことない・・

107 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 16:51:04 ]
>>105
完全不透明のレイヤードウィンドウもつくれるよ。
見た目は普通のウィンドウと変わらないけど、WM_PAINTは激減する。

108 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 17:05:24 ]
外部プロセスのCPU使用率を強制的に制限する方法を探しています。

最初に、CreteProcessのPROCESS_INFORMATIONから得られるhThreadに対して
SuspendThread/ResumeThreadを試しましたが、
複数スレッドがある場合に対応できない様です。

次にCreateToolhelp32Snapshotによるプロセス内のThreadの列挙で
SuspendThread/ResumeThreadをやろうとしましたが、
Thread32First/Thread32Nextで得られるThreadIDに対し、
OpenThreadでHandleへ変換しようとすると失敗してしまいました。

また、JobObjectの関連付けでJOB_OBJECT_LIMIT_JOB_TIMEや
IDLE_PRIORITY_CLASSで時間制限を掛けてみましたが、このオプションは
設定時間にプロセスが終わってしまうだけみたいなので目的と違う様です。

使用率制限を行うツールとして既にBESという物がありますが、
あれはどうやっているのでしょうか?

109 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 17:07:32 ]
すいません、BESはソースが公開されていますね。
調べてみます…。

110 名前:99 mailto:sage [2007/04/20(金) 17:12:42 ]
>>102
はい。基本は9xで作っているんですけど、
動作確認のためxpで動かそうと思いました。

>>103
再描画されて欲しいのは、下にある親ウィンドウの方です。
ただ、最小化→標準化とすると、子ウィンドウの方も再描画されません。
WS_EX_LAYEREDについても調べてみます。

111 名前:108 mailto:sage [2007/04/20(金) 17:27:28 ]
できました。Thread32First/Thread32Nextの方法でよかった様です。


112 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 17:37:56 ]
画像を扱うのにBMP用のAPIは見つかったのですが、
PNG用のAPIは、外部ライブラリを探すしかないのでしょうか?
OSはXPです。

113 名前:デフォルトの名無しさん [2007/04/20(金) 17:40:00 ]
GDI+でも検索汁



114 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 17:41:03 ]
つ gdiplus

115 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 17:45:29 ]
StretchDIBitsって出力先がメモリDCや拡張メタファイルでもPNGを出力できるんだろうか

116 名前:112 mailto:sage [2007/04/20(金) 17:50:23 ]
ありがとうございます。勉強してきます。

117 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 18:07:55 ]
WM_CREATEメッセージ中に、子ウインドウのレイアウトに従い
自身のサイズを変更したいのですが、CREATESTRUCTを修正しても
MoveWindow/SetWindowPosでも変更できないようです
何かいい方法はないでしょうか?

118 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 18:10:34 ]
サイズの変更をポスト

119 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 18:15:05 ]
>MoveWindow/SetWindowPosでも変更できないようです
可能性
・自分の WM_SIZE ハンドラで、引数と無関係の値にサイズ変更している
・自分の親が 親のWM_SIZEのタイミングで 自分をMoveWindowしやがってる

120 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 18:15:36 ]
あれ?ウィンドウ生成時にもWM_SIZEが発行されるんじゃなかったっけ?

121 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 18:26:35 BE:124224588-2BP(222)]
>WM_CREATEメッセージ中に、

リソースインダイレクトを使っているというオチではなかろうな。

122 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 19:23:11 ]
ウィンドウを作らずに通知エリアの追加は出来ないの

123 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 19:25:15 ]
通知エリアって?



124 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 19:34:20 BE:62112184-2BP(222)]
>>122
できたとして、どうやってメッセージを受け取るつもりだ?

125 名前:97 mailto:sage [2007/04/20(金) 19:43:23 ]
>>98
ありがとうございます。
その通りにやったら、できました。

126 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 19:45:04 ]
>>124

Hook

127 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 19:46:33 BE:58230656-2BP(222)]
>>126
「通知エリアのメッセージ」と分かっているのにフックしなければならない理由があるの?

128 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 19:59:01 ]
北がキチガイなのは世界中公認の周知の事実だが
南は中身は同じなのに私達先進国ですという皮をかぶってるのがウザス

129 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 20:02:32 ]
同意するがスレ違いだ

130 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 21:09:53 ]
>>106
さぁねぇ
プログラムの本なんて数多あるから、似たようなのが載ってる本ももしかしたらあるかもしれないな
俺はとりあえず見たこと無いが
ランゲージリファレンス系の本しか持ってないしな
ていうか今回のくらいのは、自分で思いつくくらいにはならんといかんのじゃないかと思うよ

131 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 21:12:23 ]
>>96
>行開始位置のポインタをとりつつ\r\nを\0\0に書き換えていく

これポインタ取るのはわかるけど、書き換えは出来ないんじゃね?
バッファってchar*だから一旦配列なり、mallocで取った領域なりに
バッファ丸ごとコピーして、そこを書き換えないと

132 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 21:18:26 ]
ファイルマpp(ry

133 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 21:21:50 ]
>>131
constでもリテラルでも無い、普通にメモリ上に動的確保したバッファ内の値が書き換えできないと申すか?w



134 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 21:25:15 ]
>>131
おまえの言ってるバッファはいったい何のバッファだ?
ReadFileに渡すようなバッファがWriteAccess不能なメモリ領域だと言うのか?w

135 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 21:27:54 ]
バッファの語源はやっぱ水牛?

136 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 21:28:26 ]
シリアル通信について質問させて下さい。
通信がうまくできません。

以下は流れです。

CreateFile( "COM1", GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0 );
GetCommState();
DCBパラメータを書き換え
SetCommState();
GetCommTimeouts();
タイムアウトパラメータを変更
SetCommTimeouts();

WriteFile();       // 1byteのコマンド送信準備
FlushFileBuffers();  // 送信
ReadFile(); // 1byte受信(受信できるまで10回繰り返し)

0x0Fを送れば、0xF0が返ってくるはずなのですが
何も返ってこなくて。手順的な見落としなどがあれば
ご指摘頂けると幸いです。

秋月のTDS01Vというセンサーキットを自前のプログラムで
読んでみようと始めたのですが、最初から躓きました。

センサーの動作は添付のプログラムで正常動作を確認しています。
全てのAPIからはエラーは返ってきていません。

137 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 21:34:21 ]
どんな引数を指定しているかも
DCBの設定内容も隠してどこがいけない?と聞かれてもな・・・

138 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 21:43:23 ]
>>137
申し訳ない、行数制限に引っかかったので
どこを削ろうかなと。

DCBはGetした後は、キットのドキュメントにある
パラメータをセットしてるつもりです。
(他はGet時のまま)
m_CommDCB.BaudRate = CBR_9600; // 9600bps
m_CommDCB.fBinary = TRUE; // bynary mode:always TRUE
m_CommDCB.fParity = FALSE; // parity no check
m_CommDCB.ByteSize = 8; // byte size
m_CommDCB.Parity = NOPARITY; // no parity
m_CommDCB.StopBits = ONESTOPBIT;// 1 stop bit

タイムアウトはWeb上でみつかったサンプルの値を引っ張って
来ています。
m_CommTimeouts.ReadIntervalTimeout = 100;
m_CommTimeouts.ReadTotalTimeoutMultiplier = 10;
m_CommTimeouts.ReadTotalTimeoutConstant = 500;
m_CommTimeouts.WriteTotalTimeoutMultiplier = 10;
m_CommTimeouts.WriteTotalTimeoutConstant = 500;

bRtn = WriteFile( m_hCommHandle, m_pTxBuff, 1, &dwCount, NULL );

FlushFileBuffers( m_hCommHandle );

dwCount = 0;
for ( int i = 0; i < 10 && dwCount == 0; i++ ) {
bRtn = ReadFile( m_hCommHandle, m_pRxBuff, 1, &dwCount, NULL );
// 戻り値チェックしながらリトライループ
}
ここで、for文が10回回って出てきてしまいます。dwCountは0のまま

139 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 21:52:46 ]
bRtnは確認したの?

140 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 21:56:33 ]
>>139
レスありがとうです。
上のソースは抽出でして、全てのAPIの戻り値は
チェックしていて、エラーが返ってきていないことは
確認しています。

141 名前:デフォルトの名無しさん [2007/04/21(土) 00:51:40 ]
>>140はCOMポートを増設してクロスケーブルを買ってくるべきだな。
で、ケーブルで首ry

142 名前:デフォルトの名無しさん mailto:sage [2007/04/21(土) 15:04:40 ]
タブコントロールをEnableWindow()で無効にしても、
タブの文字が淡色表示にならないのだがそういう仕様?

143 名前:デフォルトの名無しさん mailto:sage [2007/04/21(土) 15:09:15 ]
そう



144 名前:デフォルトの名無しさん mailto:sage [2007/04/21(土) 18:45:17 ]
GRAYEDにしなさい?

145 名前:デフォルトの名無しさん [2007/04/21(土) 19:34:52 ]
>>141
ワロタw

まさに泣いて馬超を斬るを地でいった訳かw

146 名前:デフォルトの名無しさん mailto:sage [2007/04/21(土) 20:07:28 ]
CreateWindowのEDITで、文字を入力してENTERを押したときに動作を設定したいのですが、
どうすればいいのでしょうか?EDITにフォーカスがないときには出来るのですが、
EDITにフォーカスがあるときは改行されてしまいます。

147 名前:デフォルトの名無しさん mailto:sage [2007/04/21(土) 20:16:09 ]
サブクラス化

148 名前:デフォルトの名無しさん mailto:sage [2007/04/21(土) 20:26:13 ]
>>146
エディットコントロールをマルチラインに設定するのをやめる。

149 名前:デフォルトの名無しさん mailto:sage [2007/04/21(土) 20:32:12 ]
>>148
メッセンジャーみたいな感じで、Shift(Ctrlだったかも)+Enterで改行、
通常のEnterで別の動作みたいな感じにしたいのですが、
マルチライン設定だと無理なのでしょうか?

150 名前:デフォルトの名無しさん mailto:sage [2007/04/21(土) 20:32:44 ]
>>149
>>147

それが理解できないならまだ早いということ

151 名前:デフォルトの名無しさん [2007/04/22(日) 00:31:32 ]
XP Homeでファイルのアクセスをプログラム側で検出することは出来ますか?
Proならファイルの監査が利用できるですが。

152 名前:デフォルトの名無しさん [2007/04/22(日) 02:03:44 ]
>>151
おまえのエクスプローラーはどうなってる?それが答えだ。

153 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 02:21:35 ]
フォルダの変更は監視できたと思うけど。



154 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 02:22:31 ]
>>151
理屈から考えて出来るはず。

155 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 06:10:46 ]
逆にpro側の監査機能が良くわからないがfilemonのようなことしたいのかな?


156 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 10:12:32 ]
ReadDirectoryChangesW

FILE_NOTIFY_CHANGE_LAST_ACCESS
監視中のディレクトリ、またはサブツリーで前回のファイルアクセス日時が変更されると、
変更通知の待機操作から制御が返ります。

157 名前:151 mailto:sage [2007/04/22(日) 11:11:30 ]
>>152-156
レスありがとうです。
ReadDirectoryChangesWなどでは、なんらかの更新が発生しないとダメな気がします。
(今から確認します)

簡単に試してみると、メモ帳でテキストファイルを開いても"アクセス日時"が変わらないような。。。

158 名前:151 mailto:sage [2007/04/22(日) 11:14:24 ]
連投申し訳ないです。
>>155
そうですね。filemonの簡易版(最低限アクセスがあったことをトリガーにしたい)のです。

159 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 11:17:44 ]
監査かけてイベントビューアからゲット

160 名前:デフォルトの名無しさん [2007/04/22(日) 11:20:19 ]
仮想リストビューでカラム幅を調整する方法を教えてください。

リストビューは詳細表示。ダイアログは使わずにCreateWindowで作ってます。

普通のリストビューを使っていたときはヘッダとデータを全部作り終わった後に
カラム数分 ListView_SetColumnWidth(ハンドル, インデックス, LVSCW_AUTOSIZE) をしていました。
仮想リストビューに変更してLVN_GETDISPINFOのときに
ListView_SetColumnWidth(ハンドル, pDispInfo->item.iSubItem, LVSCW_AUTOSIZE);
をやったら固まりました。

環境:VC6, SDK

161 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 11:20:59 ]
>>159
最初はそうしようと思ったんだけど、XP homeって監査がないんです。


162 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 11:39:44 ]
>>160
LVSCW_AUTOSIZEするためにはその列の一番長い文字列の幅が必要だから
そのときにLVN_GETDISPINFOが呼ばれて無限ループになってるんじゃね?

163 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 11:55:51 ]
ファイルアクセスをHOOK



164 名前:160 mailto:sage [2007/04/22(日) 12:02:08 ]
LVSCW_AUTOSIZEは使えなさそうですね。
他のタイミングで幅調整するしかないか。

165 名前:151 [2007/04/22(日) 12:09:48 ]
>>163
えっと、それはSetWindowsHookExを利用したHOOK機能のお話しでしょうか。
調べ切れていないかもしれませんが、ファイルアクセスに関するものは見つかりませんでした。

それとも ruffnex.oc.to/kenji/text/api_hook/
のような、概念的なフックの話で、代替DLLを用意して
起動しているプロセス全てのエントリポイントを塗り替えるお話でしょうか。

166 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 12:23:31 ]
explorer.exeだけならCreateProcess系のフックで何とかなると思うけど
Windows全体ってことになるとカーネルモードのお仕事になる気がする

CreateProcessにしても思いつきで言ってるうえ、あまりにもスマートじゃないが

167 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 12:31:53 ]
って
ファイルに触る=>CreateProcess=>ファイルパスの取得
が100%成り立つって前提じゃないとだからたぶん無理か
スマソ

168 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 12:39:27 ]
何らかの変更が加えられたときだけでいいならFindFirstChangeNotificationなどが使えるような気がする

169 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 12:42:40 ]
>>168
>>157-158を見てそういう話が出てくるか普通w

で、その上で、ファイルの監視なんて変更が加えられた時でいいと思うんだがな
開かれたからって、なんかあるか?

170 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 12:47:20 ]
>>142 だけど、どなたか淡色表示する方法教えてください。
なるべく簡単な方法で具体的だと助かります。


171 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 13:37:59 ]
オーナードロー

172 名前:151 mailto:sage [2007/04/22(日) 13:47:32 ]
>>169
特定ファイルへのアクセスのロギングがしたいのです。。。
やっぱり難しそうですね。

173 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 14:09:59 ]
>>151
Home EditionでもUIがないだけで監査の機能自体は存在する。
したがってこのスレ的な回答は「Audit Policy関数を駆使して何とかしろ」
msdn2.microsoft.com/en-us/library/aa375742.aspx



174 名前:151 mailto:sage [2007/04/22(日) 14:30:52 ]
>>173
>UIがないだけで監査の機能自体は存在する

そうだったんだ! 無知でした。
解決できそうです。ありがとうございます!

175 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 14:31:06 ]
ロードランナー






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<228KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef