■過去ログ置き場に戻る■
1-
前250
次250
最新50
[memo]
"9999999999_00.html#R20"
という感じで、URLの最後に "#R
レスNo
" を追加すると幸せになれます。
Win32API質問箱 Build13
251
名前:
デフォルトの名無しさん
:03/08/19 15:39
何故オーナードローを使いませんか。
252
名前:
Windows GDIでの質問です
:03/08/19 15:48
反転する線を描きたいのですが、どうすればいいでしょうか?
例えば、ある画像にRGB(255,255,25)で線を描くと、
白ではなく、元の画像とXORされる線を描きたいのです。
どなたか教えてください
253
名前:
250
:03/08/19 15:53
>>251
いやぁ、このくらいなら、既存のものでチャキチャキ
終わらせたかったなと<(*´Д`)
オーナードローしかないですか…レスサンクスです。
254
名前:
デフォルトの名無しさん
:03/08/19 15:54
>>252
SetROP2(hdc, R2_XORPEN)
255
名前:
252
:03/08/19 16:02
>>254
わーい、出来ましたー
ありがとですよ!!!
256
名前:
デフォルトの名無しさん
:03/08/19 17:35
何故カスタムドローを使いませんか。
257
名前:
デフォルトの名無しさん
:03/08/19 21:49
何故ケアルドローを使いませんか。
258
名前:
デフォルトの名無しさん
:03/08/19 22:25
子ウインドウは親ウインドウの終了を知ることは出来ますか?
259
名前:
デフォルトの名無しさん
:03/08/19 22:35
>>258
子供も道連れになるのでわかります。
260
名前:
デフォルトの名無しさん
:03/08/19 22:52
それは子ウィンドウにもWM_DESTROYが送られるという意味ですか?
261
名前:
デフォルトの名無しさん
:03/08/20 11:09
ShellExecuteで起動したアプリケーションをPostMessage等で終了させる方法を教えて下さい。
262
名前:
_
:03/08/20 11:11
http://homepage.mac.com/yamazaki8
263
名前:
_
:03/08/20 11:16
http://homepage.mac.com/yamazaki8/hankaku10.html
264
名前:
デフォルトの名無しさん
:03/08/20 18:23
CreatDCで作成したプリンタのデバイスコンテキストにTextOutで文字を描画して
BitBltでウインドウのデバイスコンテキストに転送して印刷プレビューを
ウインドウに表示させようとしているのですが表示されません。
手順を間違えてるいるのでしょうか?教えて下さい。
265
名前:
デフォルトの名無しさん
:03/08/20 19:05
プリンタのデバイスコンテキストからは転送できない。
266
名前:
デフォルトの名無しさん
:03/08/20 23:32
猫でも分かるプログラミングSDK編を勉強しているのですが
メニューを作る際、resource.rc、resource.hに記述して
コンパイルすると「.Debug/resource.resが開けません」
となってしまいます。これは何が原因なのでしょうか?
267
名前:
デフォルトの名無しさん
:03/08/20 23:39
そのディレクトリが無いからじゃないか?
268
名前:
デフォルトの名無しさん
:03/08/20 23:55
Win32 APIでキーボードやマウスの動きを自動化するプログラムを
作りたいのですが、どのようにすればいいのでしょうか?
269
名前:
デフォルトの名無しさん
:03/08/20 23:56
いえ、フォルダもファイルも存在しています
270
名前:
デフォルトの名無しさん
:03/08/20 23:58
>>266
プロジェクトにリソースファイルを加えてないとかw
271
名前:
デフォルトの名無しさん
:03/08/21 00:05
いえ、SourceFilisの下に確に入っています
272
名前:
デフォルトの名無しさん
:03/08/21 00:06
Filesですね。
273
名前:
デフォルトの名無しさん
:03/08/21 00:11
あれ?ワークスペースを開き直したら普通に出来ました。お騒がせしました。
274
名前:
デフォルトの名無しさん
:03/08/21 00:27
>>268
かなり勉強しないと無理臭い
勉強じゃないならば、FreeMacroってソフトを使ったら?
275
名前:
デフォルトの名無しさん
:03/08/21 12:42
CreateFile(...)で作成したファイルの途中以降のデータを切り捨てる方法を教えてください。
先頭から途中までのデータを新しいファイルに書き込むってのは無しの方向で。
SetFilePointer(hFile, 0x9613E, NULL, FILE_BEGIN);
CloseHandle(hFile);
これで0x9613E〜EOFまで切捨てられるかと思ってた。
276
名前:
名無し@沢村
:03/08/21 12:50
>>275
SetEndOfFile()
277
名前:
デフォルトの名無しさん
:03/08/21 12:51
>>275
SetEndOfFile
関係ないがファイルマッピングでファイルサイズ伸張をバイト単位で綺麗に制御する方法を思いつかない
278
名前:
275
:03/08/21 13:00
>>276-277
ありがd。
しかしヘルプのCreateFileの所にリンクくらい張っておいて欲しいな。
SetEndOfFileにはCreateFileのリンクあるのにさ・・・。
279
名前:
デフォルトの名無しさん
:03/08/21 18:29
>>278
SetFilePointerやWriteFileのとこにはリンク張ってあるし・・・
CreateFileで扱えるオブジェクトはファイルだけじゃないからなー
280
名前:
268
:03/08/21 22:24
>>274
むー、そんなに難しいことなんですか?ちょっと考えが甘かったかな。
かなり趣味の領域なんですが、キーボードやマウス操作の自動化って
かなり面白そうだし実用性あるなーと思います。
やっぱりマクロじゃなくてプログラミングでやりたいですねー。
281
名前:
:03/08/22 00:55
CSVファイルの読み込み・編集・保存等をしたいのですが参考になるHPってありますか?
またエクセルのセルのようなものを作ってそこに読み込ませたいのですが、どのコントロールを
使えばいいのでしょうか? VC++6.0使ってます
どなたか教えてくださいませm(_ _)m
282
名前:
デフォルトの名無しさん
:03/08/22 08:57
>>280
まずはフリーマクロというソフトを使ってみてください。難しいことは一切なし。非常に簡単。
どうしてでも気に入らなければプログラミングで。
やり方が推測できないようならばゼロから勉強して下さい
>>2
の猫でもわかる〜を読んで
283
名前:
デフォルトの名無しさん
:03/08/22 11:55
>>268
はキーボードやマウス操作を自動化したいんでなくて
キーボードやマウス操作の自動化するプログラムを組んでみたいって事だろ?
まあ他のソフトがどんな挙動してるか調べるにはFreeMacro使ってみて損はないけどな。
つうかそんなに難しくないと思うけどな。
284
名前:
デフォルトの名無しさん
:03/08/22 13:41
>>283
質問している内容から、質問者にはかなりハードルが高そうですね
285
名前:
デフォルトの名無しさん
:03/08/22 13:49
とりあえずJournalPlaybackとか挙げておけば?
286
名前:
デフォルトの名無しさん
:03/08/22 14:02
誰も触ってないのにキーボードがカタカタタイプされたり、マウスが移動しているとすると、
既にホラーだと思うのだが
287
名前:
デフォルトの名無しさん
:03/08/22 14:04
うちのマウスなら勝手に動くぞ
288
名前:
デフォルトの名無しさん
:03/08/22 14:06
>>287
光学マウスとかで、カーソルが勝手に動くことがあるみたいなオチ?
289
名前:
デフォルトの名無しさん
:03/08/22 14:15
マウスを掴もうとすると、嫌がって逃げたり
290
名前:
デフォルトの名無しさん
:03/08/22 14:22
_beginthreadex()の戻り値をHANDLEにキャストして
WaitForXXX()系のAPIに渡す事って正当な行為なんですか?
そんな事が出来るみたいな記事をどっかのHPで見たのでやってみたんですが、
スレッドハンドルがシグナル状態になってもWaitForSingleObject()が制御返してくれません。
291
名前:
デフォルトの名無しさん
:03/08/22 14:32
>>289
手を洗え
292
名前:
290
:03/08/22 14:38
_beginthreadex()の戻り値でWaitForSingleObject()使えるみたい。
ヘルプに書いてあった。
んじゃ下のコードでWaitForSingleObject()が制御を返してくれないのはなぜ?
hThread = (HANDLE)_beginthreadex(NULL, 0, ThreadEntry, (void*)this, CREATE_SUSPENDED, &uiThreadID);
SetEvent(hThread);
WaitForSingleObject(hThread, INFINITE);
293
名前:
デフォルトの名無しさん
:03/08/22 14:54
>SetEvent(hThread);
これは何?
294
名前:
290
:03/08/22 15:09
>>293
SetEvent(hThread);でハンドルをシグナル状態にして、
WaitForSingleObject()がすぐに制御を返すかのテスト。
でもこれCreateEvent()で作成したハンドルでないとダメなんかね。
295
名前:
デフォルトの名無しさん
:03/08/22 15:29
SetEvent が対応できるハンドルは、イベントのハンドルだけ。
296
名前:
デフォルトの名無しさん
:03/08/22 20:53
すみません。
GetGlyphOutlineでは下線や打消し線は無視されるのでしょうか?
297
名前:
デフォルトの名無しさん
:03/08/22 21:24
CreateFileを使うと
2000,XPだと正常にファイルができるんですが
Meだとファイルができません
使えないんでしょうか?
298
名前:
デフォルトの名無しさん
:03/08/22 21:24
そうなっているんなら、そうだろ。
そんな修飾付きのアウトライン返されても困ると思うがね。
299
名前:
デフォルトの名無しさん
:03/08/22 21:45
>>297
Windows9xでは使えない引数使ってるだろ
300
名前:
デフォルトの名無しさん
:03/08/22 22:41
>>281
> どのコントロールを使えばいいのでしょうか?
はぁ ? ほんとに VC++6.0使ってるの ?
VB の間違いとか言う落ちじゃないよね ?
まあどちらにしてもスレ違いだよ。
301
名前:
281
:03/08/23 01:55
>>300
VBだとそういうのがあるってのはわかってるんですが、VCでやろうと思ってるんですよ
スレ違いですか?だったらスミマセン
一応APIに関することだと思ったのですが・・・
302
名前:
デフォルトの名無しさん
:03/08/23 06:14
>>301
> 一応APIに関することだと思ったのですが・・・
マジでか ?
> CSVファイルの読み込み・編集・保存等をしたいのですが参考になるHPってありますか?
ReadCSVFile(), EditCSVFile(), SaveCSVFile() とかの API があるとでも思ってんのか ?
CSV ファイルと言ってもいろいろバリエーションがあるのは知ってるのか ?
(話の流れから、エクセル互換か ?)
またMFC も使わずに...
> またエクセルのセルのようなものを作ってそこに読み込ませたいのですが、どのコントロールを
と言うことをしたい漢なのか ?
だったらその「エクセルのセルのようなもの」ってどういうものかを説明すれば、やさしいお兄様方が適切な API を教えてくれるかもしれない。
ただし、やりたいことによるけどそれなりのコード量になると思うよ。
303
名前:
デフォルトの名無しさん
:03/08/23 09:45
VB6使ってます。Textout()でPictureBoxの上に文字列を
表示してるんですが、その文字列ににアンチエイリアスを
かけて出力する方法が分かりません(;´Д`)
検索するとGetGlyphOutline()を使えば出来ると見かけますが、
全然使い方がわからず困ってます。GetGlyphOutline()以外で
実現する方法があるなら、何方かご教授頂ければ幸いです。
304
名前:
デフォルトの名無しさん
:03/08/23 12:01
>>303
ぐぐればGetGlyphOutline()の説明なんていくらでも出てくる。
GetGlyphOutline()以外の実装としては文字をグラフィックとして扱えば、
いくらでも方法はあると思う。
一番簡単なのは大きめのフォントで描画して縮小だな。
305
名前:
デフォルトの名無しさん
:03/08/23 12:07
DragQueryFile()でウィンドウに対しドロップされたファイルの個数とそれぞれのフルパスを手に入れることが出来るのですが、
どこからドロップされたのかを知る術が分かりません。
c:\hoge\hage\ というディレクトリ構成があると仮定して、
hage内のファイルをドロップした場合におけるhageを検出したいのです。
306
名前:
デフォルトの名無しさん
:03/08/23 12:13
>>305
フルパスが分かれば、
どこからドロップされたか分かりそうなもんだが・・・
307
名前:
305
:03/08/23 12:20
ファイルがドロップされた場合は親ディレクトリがドラッグ位置だが、
ディレクトリがドロップされた場合はどこまでさかのぼればいいのだ?
あ、これも親ディレクトリでいいのか?
308
名前:
デフォルトの名無しさん
:03/08/23 12:23
検索からドラッグされる可能性はあるな
309
名前:
デフォルトの名無しさん
:03/08/23 12:28
>>303
CreateFontするときにANTIALIASED_QUALITYを指定するだけ。
http://www.microsoft.com/JAPAN/developer/library/jpgdipf/_win32_createfont.htm
310
名前:
305
:03/08/23 12:43
>>308
新たな問題発覚(;´Д`)
でもWinRARだと検索からのドロップはディレクトリ無視して圧縮してるね。
そんな方向で対処します。
311
名前:
デフォルトの名無しさん
:03/08/23 13:19
エディットコントロールの文字列を変数に代入するのはどうしたらいいでしょうか。
がいしゅつであればアドレス出してください。
312
名前:
デフォルトの名無しさん
:03/08/23 13:36
>>311
GetWindowText() か WM_GETTEXT
313
名前:
268
:03/08/23 14:23
一応Win32 APIの「SetCursorPos」を使ってマウスカーソルの移動は
できるようになりました。
マウスのクリックやキーボードの制御は「SendInput」を使えば
いいのでしょうか?
>>282
フリーマクロちょっと使ってみました。とても参考になりました。
314
名前:
281
:03/08/23 14:47
>>302
なんか的外れな質問してるみたいでスミマセン
始めて間もないので実はよくわかってないとこがあるんですよ・・・今猫で勉強中です
じゃあやるなって言われそうですが、やらなきゃいけないもので・・・
>CSV ファイルと言ってもいろいろバリエーションがあるのは知ってるのか ?
エクセル互換のカンマ区切りのCSVファイルと思ってたんですが、ほかにもあるのでしょうか?
ttp://up.isp.2ch.net/up/a31622ee5486.jpg
↑はVBで作ってあるのですが、Cでこんな感じにしたいんですよ
無理ですかね?
315
名前:
デフォルトの名無しさん
:03/08/23 15:18
>>314
無理ではないよ。
316
名前:
デフォルトの名無しさん
:03/08/23 15:37
>>314
やれやれはっきり言わないとわからないみたいだな...
・CSV を扱う API なんかない。
・Excel みたいなセルを扱うのは最終的には API を使うだろうが、普通は直接 API なんか呼ばない。
∴ スレ違い。
VC 使ってるんなら、VC のスレに行った方が良いよ。
> エクセル互換のカンマ区切りのCSVファイルと思ってたんですが、ほかにもあるのでしょうか?
データ中の改行の扱いはどうするとか、細かいことを言い出すときりがない。
317
名前:
311
:03/08/23 15:37
>>312
ありがとうございますぅ
318
名前:
311
:03/08/23 15:39
GetWindowText()はどのライブラリの関数ですか?
319
名前:
デフォルトの名無しさん
:03/08/23 15:50
user32.libでねーの。実体はCOMCTL32.DLLにあるみたいだが。
320
名前:
281
:03/08/23 17:01
VCスレ逝って来ます
お騒がせしました&ありがとうございました
321
名前:
:03/08/24 07:35
http://home.att.ne.jp/yellow/town/rockm.htm
のようなウインドウズの操作を自動化するツールを作りたいのですが、
MSDNなどを見てもマウスとキーボードの情報を送信する関数が分かりません。
SetCursorPosでマウスの位置は動かせることがわかったのですが、
クリックとキーボードの情報を出す方法がわかりません。
説明のあるページか、関数名をおしえてください
322
名前:
デフォルトの名無しさん
:03/08/24 11:31
SendInput
323
名前:
デフォルトの名無しさん
:03/08/24 13:58
>>321
mouse_event、keybd_event
324
名前:
デフォルトの名無しさん
:03/08/25 00:50
ResumeThread()の返り値が -1で、GetLastError()が 0ってどういうことです?
325
名前:
デフォルトの名無しさん
:03/08/25 01:00
>>324
テストしてみたがスレッド終了時とか
326
名前:
325
:03/08/25 01:05
おっと
ERROR_CALL_NOT_IMPLEMENTEDが返ってきていた
327
名前:
324
:03/08/25 01:49
MSDNには「戻り値が 0 の場合、指定したスレッドが中断されていなかった
ことを示します」と書いてあるが、中断していないスレッドを ResumeThread
すると0ではなく-1が返って GetLastError=0になるっぽいです。
MSDN間違ってる? Win98なんだけど、NTと9xで違うのだろうか...?
328
名前:
:03/08/25 06:09
>>322
>>323
問題解決しました。感謝です。
329
名前:
デフォルトの名無しさん
:03/08/25 11:17
GetStdHandleで取得したハンドルを最後にCloseHandleする必要はありますか?
MSのサンプルでCloseHandleしているところがあってその通りに実行するとエラーが発生します。
http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/q190/3/51.asp&NoWebContent=1
330
名前:
デフォルトの名無しさん
:03/08/25 11:28
メール受信日付で+900とか+400とかの日時の計算方法と種類を教えて下さい。
331
名前:
デフォルトの名無しさん
:03/08/25 11:43
>>330
まず中学校を修了して下さい。
332
名前:
デフォルトの名無しさん
:03/08/25 11:51
>>330
ほれ。
http://academic1.plala.or.jp/higataka/vj.htm
333
名前:
デフォルトの名無しさん
:03/08/25 13:38
いや+400とかの意味つうか時間になんぼ足すとかって書いてるとこ知りたい
334
名前:
デフォルトの名無しさん
:03/08/25 13:46
何故RFCを読みませんか。
335
名前:
デフォルトの名無しさん
:03/08/25 13:58
RFC厨は逝ってください
336
名前:
デフォルトの名無しさん
:03/08/25 14:00
RFCすら読めない厨は逝ってください。
337
名前:
デフォルトの名無しさん
:03/08/25 14:14
RFCしか言えない厨は消えて下さい。
338
名前:
デフォルトの名無しさん
:03/08/25 14:27
RFC知らない厨は死んで下さい。
339
名前:
デフォルトの名無しさん
:03/08/25 14:46
ふぁみこんのなかまだろ
340
名前:
デフォルトの名無しさん
:03/08/25 15:01
Real Family Computer
341
名前:
デフォルトの名無しさん
:03/08/25 15:05
初代ファミコンはTVと接続するときにRFC使ってた
342
名前:
デフォルトの名無しさん
:03/08/25 15:14
つか
>>333
を教えてよ
343
名前:
デフォルトの名無しさん
:03/08/25 15:19
>>342
板違いなので余所へいけ。
344
名前:
デフォルトの名無しさん
:03/08/26 03:43
キーボード入力で[D],[4],[→]の同時押しを検出しようと思い、
GetKeyboardState関数、GetAsyncKeyState関数を用いてプログラムを作成したのですが、他の3つのキーの同時押しは検出できるのですが、何故だか[D],[4],[→]の同時押しが検出できません。
これは仕様なんでしょうか?
何方か[D],[4],[→]の同時押しの検出方法をお教えください。
環境はVC++6.0,Win2000です。
よろしくお願いします。
345
名前:
デフォルトの名無しさん
:03/08/26 05:18
AT互換機のキーボードのハードウェア的な仕様なのでどーにもなりません。
コストダウンでどんどん安物を追求していった結果です。
シフトキー以外の同時押しは保証されないと思ってください
346
名前:
:03/08/26 06:39
>>344
PCでgeme作る時非常に困るんだよね、この仕様
347
名前:
デフォルトの名無しさん
:03/08/26 09:54
自分が答えられないと板違いってほざく厨房がいるスレはここですね?
348
名前:
デフォルトの名無しさん
:03/08/26 09:56
>>347
ん?何を教えて欲しいの?
349
名前:
デフォルトの名無しさん
:03/08/26 09:58
板違いじゃなくてスレ違いだよな
しかしもう
>>334
が答えてるじゃないか
350
名前:
デフォルトの名無しさん
:03/08/26 10:11
答えてもらえないと煽る厨房がいるスレは(
351
名前:
デフォルトの名無しさん
:03/08/26 11:09
便乗して煽る厨房がいるスレはここです!
352
名前:
デフォルトの名無しさん
:03/08/26 11:16
コマンドラインから(自作のアプリからでもいいのですが)
myhelp.chmを検索単語 myword で開くにはどうすればいいですか?
353
名前:
デフォルトの名無しさん
:03/08/26 12:57
>>352
板違いなので余所へいけ。
354
名前:
デフォルトの名無しさん
:03/08/26 13:08
>>353
板違いなので余所へいけ。
355
名前:
デフォルトの名無しさん
:03/08/26 13:15
>>354
板違いなので余所へいけ。
356
名前:
デフォルトの名無しさん
:03/08/26 13:29
>>352
一応、HtmlHelp API がある。使ったことないからよくしらない。
>>355
板違いなので余所へいけ。
357
名前:
デフォルトの名無しさん
:03/08/26 14:01
>>356
板違いなので余所へいけ。
358
名前:
デフォルトの名無しさん
:03/08/26 14:36
>>359
基地外は余所へいけ
359
名前:
デフォルトの名無しさん
:03/08/26 14:38
えー、そんなー
360
名前:
デフォルトの名無しさん
:03/08/26 19:24
>>352-359
板違いなので余所へいけ。
361
名前:
デフォルトの名無しさん
:03/08/26 23:37
板違いなら俺んとこへ来い!
362
名前:
デフォルトの名無しさん
:03/08/27 01:49
>>360
とは腹違い
363
名前:
デフォルトの名無しさん
:03/08/27 22:39
>>360
とは穴兄弟
364
名前:
デフォルトの名無しさん
:03/08/27 23:46
>>361
俺も違うから心配すんな!
365
名前:
デフォルトの名無しさん
:03/08/28 00:51
DialogBoxもMFC使わないでモーダルダイアログ?(WM_DESTROYまで処理を返さない方)を表示するにはどうやればいいんでしょうか?
モーダルにするウインドウ以外のウインドウのメッセージを全部カットするんでしょうか?
366
名前:
デフォルトの名無しさん
:03/08/28 02:20
呼び出した関数の中にメッセージループ作ればいいんじゃねぇの?
後はフォーカスの制御も必要か。
367
名前:
デフォルトの名無しさん
:03/08/28 02:57
>>365
オーナーウィンドウにEnableWindow(FALSE)して
ダイアログを閉じるときにEnableWindow(TRUE)で戻す。
368
名前:
デフォルトの名無しさん
:03/08/28 10:18
以下の手順で外部プロセスを終了するためにTerminateProcessを使っているのですが
うまくいきません。なにが悪いのでしょうか?
1.プロセスを列挙し終了させるプログラムのIDを取得する。
2.プロセスIDからプロセスハンドルを取得する。
3.TerminateProcessを呼び出す(TerminateProcess(ProcessHandle, 0&))
4.プロセスハンドルクローズ
言語:VB6
OS :Win2000
369
名前:
デフォルトの名無しさん
:03/08/28 10:32
特定のウィンドウのHWNDを取得して,そのウィンドウに対して
使用不可(マウスでそのウィンドウをクリックしても何も反応しないようにする)
右上のペケボタンを使用不可にする
隠す(タスクバーからも消す)
表示する
はSendMessageでどのようなメッセージを送ればよいのですか?
教えてください
370
名前:
デフォルトの名無しさん
:03/08/28 10:44
上から順に
EnableWindow
システムメニューから閉じるを削除
ShowWindow(SW_SHOW)
ShowWindow(SW_HIDE)
SendMessageを使うものなんか1つもないが
371
名前:
デフォルトの名無しさん
:03/08/28 10:48
SW_SHOWとSW_HIDEが逆だった
372
名前:
デフォルトの名無しさん
:03/08/28 11:07
EnableWindow関数の説明によれば
WM_CACELMODEとWM_ENABLE使えばいけるっぽい
ウィンドウを閉じずに、
タスクバーから消す方法は知らない
最初からタスクバーに表示しないウィンドウをつくるなら、
CreateWindowEXのスタイルで、
WS_EX_TOOLWINDOWを指定すれば良かったと
373
名前:
デフォルトの名無しさん
:03/08/28 11:08
>>370-371
ご親切にどうも
>システムメニューから閉じるを消去…
どういうことですか?(汗
374
名前:
デフォルトの名無しさん
:03/08/28 11:09
>>372
Thx!
375
名前:
372
:03/08/28 11:31
>>373
CreateWindowするときに、スタイルにWS_SYSMENUを付けない
註:WS_OVERLAPPEDWINDOW,WS_POPUPWINDOW はWS_SYSMENUを含んでいる
もしくは、
style =GetWindowLong(hWnd,GWL_STYLE);
style &= ~WS_SYSMENU;
SetWindowLong(hWnd,GWL_STYLE,style);
みたいな感じでいけたと
ただ、最小化ボタンと最大化ボタンも消えるけど
376
名前:
デフォルトの名無しさん
:03/08/28 11:36
>>375
なるほどなるほど
ペケボタンは消すんじゃなくってただ単に押せなくなる(色が薄くなる)
だけでいいんですけどね…
ただまぁ自分のWindowをそうするんじゃないんで…たのWindowをいろいろ操作
したいのです
377
名前:
デフォルトの名無しさん
:03/08/28 11:50
>>373
GetSystemMenuでコントロールメニューのハンドルを取得して
EnableMenuItemでIDがSC_CLOSEなメニュー項目を無効化
つーか少しは自分で調べてよ
378
名前:
デフォルトの名無しさん
:03/08/28 11:59
>>377
ごめんなさい,ちょっと甘えてました
みなさんどうもありがとう!
379
名前:
デフォルトの名無しさん
:03/08/29 00:08
指定の exe 実行して、終わるまで待機 って API無いですか?
ShellExecuteだと、立ち上るけど、そのまま処理を続けるてるし。
380
名前:
デフォルトの名無しさん
:03/08/29 00:23
ShellExecuteEx
381
名前:
デフォルトの名無しさん
:03/08/29 01:25
ファイルを検索するのにFindFirstFileを使用しています。
Debugモードでは日本語を使用しているファイル名を指定でき、
ファイルを見つけることができます。
しかしReleaseでビルドしたものは全く日本語を受け付けてくれません。
原因は何が考えられるでしょうか。
環境 : VC++7.1,Win2KSP4
プロジェクトの設定
Release : スタティックライブラリでMFCを使用する。
Debug : 共有 DLL で MFC を使用する.
文字セット : マルチ バイト文字セットを使用する
問題と思われる個所のコード。
HANDLE dno;
TCHAR dir[MAX_PATH];
WIN32_FIND_DATA fil;
if ((dno = FindFirstFile(dir, &fil)) != INVALID_HANDLE_VALUE) {
よろしくお願いします・・・困ってます。
382
名前:
381
:03/08/29 01:27
すいません。sageてしまいました。改めてよろしくお願いします。
383
名前:
381
:03/08/29 02:03
申し訳ないのですが、他の個所に問題があったようで
FindFirstFileは関係なかったようです。
もう少し調べてから質問すべきでした。
お騒がせしました。
384
名前:
デフォルトの名無しさん
:03/08/29 14:26
CreateThreadで作ったスレッドがまだ実行中に
CloseHandleしたら成功したんだけど、
これってどういうこと?
スレッドが終了次第、自動的にスレッドオブジェクトが破棄されるの?
それともやっぱりスレッドが終わってから再度CloseHandleしないといけないの?
385
名前:
デフォルトの名無しさん
:03/08/29 16:02
ハンドルハ実体ニアラズ
386
名前:
デフォルトの名無しさん
:03/08/29 17:05
環境
OS:Windows98SE
コンパイラ:bcc5.5
ttp://www3.big.or.jp/~schaft/program/getopenf/getopenfC.html
上のページにあるサンプルをそのままコンパイルしたのですが上手くいきません。
コンパイルは出来るのですが、ファイルを開くダイアログは出てこないで
"キャンセルされました"のメッセージボックスが出て来るだけです。
最初に
#define _WIN32_WINNT 0x400
#define WINVER 0x400
を加えても上手くいきませんでした。
どう書けばいいのか教えて下さい。
387
名前:
384
:03/08/29 17:10
>>385
実体ってスレッド自体のこと?スレッドオブジェクトのこと?
388
名前:
デフォルトの名無しさん
:03/08/29 17:30
>>386
WinMain にある
szFileName が初期化されて無いでち
389
名前:
デフォルトの名無しさん
:03/08/29 17:38
>388
ZeroMemoryで上手くいきました、有難うございます
390
名前:
デフォルトの名無しさん
:03/08/29 18:53
ウィンドウメッセージ
SC_MINIMIZEで最小化
SC_MAXIMIZEで最大化
元のサイズに戻すのは…SC_ZOOM?
ああSC_ZOOMとSC_MAXIMIZEって一緒だったんだっけ?
391
名前:
デフォルトの名無しさん
:03/08/29 19:23
SC_RESTOREだけど、ウィンドウメッセージではないぞ。
392
名前:
デフォルトの名無しさん
:03/08/29 20:01
>>391
SendMessageじゃだめなのですか?
393
名前:
デフォルトの名無しさん
:03/08/29 20:22
OS2のdllはコールゲート呼び出す設計らしいけど
windowsのdllってコールゲート呼び出してるの?
394
名前:
デフォルトの名無しさん
:03/08/29 21:33
>>392
SC_MINIMIZEなんかは、ウィンドウメッセージWM_SYSCOMMANDのパラメータ。
SendMessage(hwnd, WM_SYSCOMMAND, SC_MINIMIZE, 0)
395
名前:
bees
:03/08/29 23:02
指定したフォルダの中の全てのファイルパスを
拾得するにはどうしたらいいでしょうか?
396
名前:
beep
:03/08/29 23:04
書き忘れました、VC++6にてSDKでやっています
OSはXPです。
397
名前:
デフォルトの名無しさん
:03/08/29 23:05
FindFirstFile / FindNextFile
398
名前:
デフォルトの名無しさん
:03/08/29 23:08
>>395
http://www.google.com/search?lr=lang_ja&q=win32api
399
名前:
bees
:03/08/29 23:11
>>397
>>398
ありがとうございました!397さんのでできそうです、
ググルも見てミマス!
400
名前:
デフォルトの名無しさん
:03/08/30 10:33
>>393
Windowsはコールゲート使ってません。
int 20とかarplとか(Win9x)
int 2eとか(WinNT, WDM)
401
名前:
デフォルトの名無しさん
:03/08/30 11:36
>>400
さんくす
402
名前:
デフォルトの名無しさん
:03/08/30 13:29
>>394
Danke
403
名前:
デフォルトの名無しさん
:03/08/30 20:47
2重線を引きたいのですが、Penにはそういうのが
ないと思うのですがAPIとかあるのですか?
404
名前:
デフォルトの名無しさん
:03/08/30 21:03
>>403
GDI+のPen::SetCompoundArray()ぐらいかな。
GDIにはない。たぶん。
405
名前:
403
:03/08/30 21:29
>>404
どうもです。
やはりですか。。。
GDIにはそんなのがあるのですね・
GDI使えないのでwidth5で引いて上からXORでwidth3で引いてみる
とかしてみますね。。。ありがとう。
406
名前:
:03/08/30 21:53
GDI+ってVC6で使えないよね?
初めて聞いたw
もうそろそろ乗り換えないといかんのかなぁ
407
名前:
デフォルトの名無しさん
:03/08/30 22:09
>>406
いや、そんなこと全然ないぞ。ないはず。
GDI+は最新のプラットフォームSDKダウンロードしたら付いてなかったかなぁ?
408
名前:
デフォルトの名無しさん
:03/08/30 23:07
単に
>>406
がGDI+もそれがVC6で使えることも知らないだけだ。
409
名前:
デフォルトの名無しさん
:03/08/31 16:00
W2Kでフォルダをネットワーク経由でアクセス可能な共有状態にし、
そのフォルダのアクセス権からeveryoneを削除して、
Administoratorをフルアクセスで追加って事をしたいです。
バッチファイルでできそうな気がしたのですが、
net share、caclsでは、フォルダそのもののアクセス権を
変更するだけで、ネットワーク経由のアクセス権を変更
する事はできないようです。
適当なWin32APIがあればコマンドを自作してしまおうと思い、
こちらに書き込ませていただいてます。
ご存知でしたらアドバイスをお願いいたします。
410
名前:
デフォルトの名無しさん
:03/09/01 23:40
>>409
自宅でMSDN参照できないので、あまり参考にもならないかも
知れませんが、レスついていないのでちょっと。
キーワード acl でぐぐってみて。で、検索されたAPIの仕様を
確認してみて。おそらく希望しているものが見つかると思う。
参考
ttp://www.cisnet.or.jp/home/tsuneoka/win32tech/10.html
411
名前:
デフォルトの名無しさん
:03/09/01 23:44
APIENTRYとWINAPIって、何が違うの?
ググっても同じとしか書かれてないんだけど、
本当は何か違いがあるんじゃないの?
歴史的な理由とか?教えてプリーズ。
412
名前:
デフォルトの名無しさん
:03/09/02 00:35
ドライブのフォーマットを取得するAPIってありますか?
種別はGetDriveTypeとかなんとかで取れたんですが
FAT32かNTFSか、というのも判別したいんです。
おながいします。
413
名前:
デフォルトの名無しさん
:03/09/02 00:39
(゚д゚)<GetVolumeInformation
414
名前:
デフォルトの名無しさん
:03/09/02 01:02
>>413
即レスありがとうございます。
逝けそうです。
415
名前:
デフォルトの名無しさん
:03/09/02 03:51
case WM_VSCROLL:
switch (LOWORD(wParam))
{
case SB_THUMBTRACK:
HIWORD(wParam);
}
スクロールに関する質問なんですが、
HIWORD(wParam)では 0〜65535 の範囲でしか値は得られませんよね?
65536 以上ドラッグ操作でスクロールしたい場合はどうしたらいいのでしょうか?
416
名前:
デフォルトの名無しさん
:03/09/02 03:52
STRINGTABLE { IDS_A "あああ" }
↓
STRINGTABLE { IDS_A "いいいいい" }
コンパイル時にexeファイルに入れたリソースの内容を書き換えるようなことはできないでしょうか?
417
名前:
415
:03/09/02 04:19
ttp://www.asahi-net.or.jp/~uq7k-hrsm/vcdev2fr.htm
↑で解決いたしますた。
418
名前:
デフォルトの名無しさん
:03/09/02 04:21
>415
MSDNに書いてある。
>Thus, an application can call GetScrollInfo while processing
>either the WM_HSCROLL or WM_VSCROLL messages to
>obtain 32-bit scroll-bar position data.
419
名前:
デフォルトの名無しさん
:03/09/02 06:20
MessageBoxで表示されるアイコン(MB_ICONINFORMATIONとか、MB_ICONHAND等)は
自前で使えないでしょうか?何かヒントになる
APIがあれば教えて下さい。
420
名前:
デフォルトの名無しさん
:03/09/02 07:15
>>419
LoadIcon
421
名前:
デフォルトの名無しさん
:03/09/02 08:59
>>420
ありがとうございました。
422
名前:
デフォルトの名無しさん
:03/09/02 13:54
spoolデータの所有者を変更したいのですが。
何か方法ありませんか?
423
名前:
デフォルトの名無しさん
:03/09/02 15:30
StretchBlt()で直接デスクトップにBltしたいのですが、
なぜか画像に意図しない歪みが生じてしまいます。(下記URLがそのキャプです)
何がいけないのでしょうか?ご教授ください。
http://www.forgetmenot.jp/diary/img/1053829691/1054775553.jpg
424
名前:
デフォルトの名無しさん
:03/09/02 15:33
久しぶりに蓮コラ見た
425
名前:
デフォルトの名無しさん
:03/09/02 15:35
>>423
そりゃあ乳首が蓮だからだよ。
426
名前:
bees
:03/09/02 16:56
これは引数に指定したフォルダの中のファイル数をカウントするつもりで作ったのですが
なぜか毎回二個増えてしまいます、だれか助けてくだちぃ。
例えば空のフォルダ指定してもなぜか二個になってしまいます。
隠しファイルは表示させてあるのでわかると思うんですが・・。
int Find(char *fDir)
{
HANDLE hFind;
WIN32_FIND_DATA fd;
char Dir[256];
int count = 0;
if(fDir[strlen(fDir)-1] != '\\')
return -1;
wsprintf(Dir,"%s*.*",fDir);
hFind = FindFirstFile(Dir, &fd);
if(hFind == INVALID_HANDLE_VALUE)
return -1;
do
{
count++;
} while(FindNextFile(hFind, &fd));
FindClose(hFind);
return count;
}
無関係ですがホットゾヌつかて見ました、はまりカケです。
427
名前:
デフォルトの名無しさん
:03/09/02 16:57
fdの中身を確認してみれ。
428
名前:
デフォルトの名無しさん
:03/09/02 16:58
.
..
の二つじゃねーの。
つーかデバッグしてフォルダ名見てみりゃいーじゃん。
429
名前:
デフォルトの名無しさん
:03/09/02 17:03
カレントと親
430
名前:
429
:03/09/02 17:03
カレントじゃなくて自分自身
431
名前:
bees
:03/09/02 17:08
ぬぁ!フントでした!フォルダも検索されていたんですね
FILE_ATTRIBUTE_DIRECTORYで判別してみました。
>>427
~
>>430
ありがとう!
432
名前:
デフォルトの名無しさん
:03/09/02 21:12
Win32API と Win32SDK って何が違うの?
433
名前:
デフォルトの名無しさん
:03/09/02 21:20
こんなの相手にすんな
434
名前:
デフォルトの名無しさん
:03/09/02 22:25
まあまあ。
APIはプログラムを作るためのライブラリ関数。
SDKはプログラムを作る時の組み方。
つまり、比べる分野の地点で違う。
435
名前:
デフォルトの名無しさん
:03/09/02 22:35
ここわ殺伐としたインターネットですね
436
名前:
デフォルトの名無しさん
:03/09/02 22:51
API = Application Program Interface
あるソフトウェアの機能を他のプログラムから利用するための手続き。
Win32APIではほとんどがDLLからexportされた関数として提供されている。
SDK = Software Development Kit
ある環境で動作するソフトウェアを開発するのに必要なものの一式。
Windows SDKの場合C/C++用のヘッダ、DLLや、それをリンクするのに必要な
インポートライブラリ、各種ドキュメント、サンプルプログラム等が含まれている。
437
名前:
デフォルトの名無しさん
:03/09/02 23:51
デスクトップとか
フォルダでファイルがドラッグ開始された瞬間を取得するには、
どうすればいいですか?
438
名前:
デフォルトの名無しさん
:03/09/02 23:56
>フォルダでファイルがドラッグ開始された瞬間
ボタンを押下した瞬間か移動しはじめた瞬間かどっちなんだ
439
名前:
434(!432)
:03/09/03 00:00
勉強させてもらいました。
440
名前:
デフォルトの名無しさん
:03/09/03 00:09
>>410
ありがとうございました。
720個のフォルダを手動で共有化せずに済みそうです。
441
名前:
デフォルトの名無しさん
:03/09/03 00:13
>>438
どちらでもいいです。
あえて言うなら
移動した瞬間です。
442
名前:
デフォルトの名無しさん
:03/09/03 01:53
>>441
Notify掛けとけば?
443
名前:
デフォルトの名無しさん
:03/09/03 06:00
プログレスバーがクリックされたかどうか知りたいんですけど
どうすればいいんでしょうか?
444
名前:
デフォルトの名無しさん
:03/09/03 08:19
>>443
サブクラス化してWM_LBUTTONDOWNを処理。
445
名前:
デフォルトの名無しさん
:03/09/03 12:35
拡張子関連付けの起動ができないURL(index.html#aaa 等)をブラウザで開きたいのですが、
ShellExecute(0, "open", BrowserPath, "", 0, SW_SHOW);
// BrowserPath = とりあえずエクスプローラへのパス
とすると、起動はできるのですが、実行するたびに新しいウインドウが起動してしまいます。
拡張子関連付けの場合、既に存在すれば使いまわされます。
一応、ぐぐってたら前スレの 29 にヒットしました
http://pc.2ch.net/tech/kako/1006/10067/1006783012.html/29
つまり「既に存在するならそこで開いてほしい」のですが、どうしたら良いでしょうか?
446
名前:
445
:03/09/03 12:39
訂正です
X // BrowserPath = とりあえずエクスプローラへのパス
O // BrowserPath = とりあえず IE へのパス
前スレの 29
http://pc.2ch.net/tech/kako/1006/10067/1006783012.html
447
名前:
kumazo
:03/09/03 15:56
今、Winsockを使用しマルチプロセスサーバを作成しています。しかし、
親プロセスから子プロセスへのソケット値の継承方法がわかりません
(CreateProcess関数を使用しプロセスを生成しています)。
わかる方がいらっしゃいましたらご教授お願いします。
環境はVC++6.0 WINSOCKバージョンは1.1を使用しています。
また、スレッドは使用しないようにしたいと考えています。
448
名前:
デフォルトの名無しさん
:03/09/03 16:23
DuplicateHandle
449
名前:
デフォルトの名無しさん
:03/09/03 17:10
リフレッシュレートを変更する方法って
何かないですか?
UNIXではsetmonとかをsystem関数で呼び出してたんですが
その部分をWindowsで実現したいのです
450
名前:
449
:03/09/03 17:27
ごめんなさい
解決しました
451
名前:
449
:03/09/03 18:30
450は偽物です。
引き続き情報をお待ちしてます。
452
名前:
デフォルトの名無しさん
:03/09/03 18:31
何でリフレッシュレートを変更したいわけ?
453
名前:
デフォルトの名無しさん
:03/09/03 18:39
ChangeDisplaySettings
ChangeDisplaySettingsEx
454
名前:
449
:03/09/03 20:46
引き続き皆さんの情報をお待ちしてます。
お電話はこちらまで。
4400333
455
名前:
デフォルトの名無しさん
:03/09/03 22:35
Win32API関数の一覧が載っているページを知りたいのですが教えてください。
456
名前:
デフォルトの名無しさん
:03/09/03 22:35
>>455
死ね割れ厨
457
名前:
デフォルトの名無しさん
:03/09/03 22:49
>>455
MSDN
458
名前:
デフォルトの名無しさん
:03/09/03 23:08
>>455
教えてやってもいいが有料
459
名前:
455
:03/09/03 23:22
>>457
CDは持っているのですが、Win32APIだけが載っているページがあればなと。
ANSI-Cだとこういうページがあるのですが。
http://www.bohyoh.com/CandCPP/C/Library/index.html
また、検索する時一つ一つではこういうページにいけるのですが元のページが分かりません。
http://www.google.co.jp/search?q=cache:Fb-0krTmdfwJ:www.microsoft.com/japan/developer/library/jpwinpf/_win32_setconsoletextattribute.htm+SetConsoleTextAttribute&hl=ja&ie=UTF-8
>>458
お願いします。
460
名前:
デフォルトの名無しさん
:03/09/04 01:21
>>459
Platform SDK Update
ttp://www.microsoft.com/msdownload/platformsdk/sdkupdate/
461
名前:
455
:03/09/04 01:38
>>460
ありがとうございます。ただ、英語でページの使い方が分からないので、
いろいろいじってみます。
462
名前:
デフォルトの名無しさん
:03/09/04 01:46
英語読めないのにプログラミングするなと小一時間
463
名前:
デフォルトの名無しさん
:03/09/04 03:18
MSDN(SDK含む)は平易な英語だから辞書があれば中学生でも理解できると思う
464
名前:
デフォルトの名無しさん
:03/09/04 03:20
要は簡単な英語を訳す努力もしないような奴はプログラミングをするなと(
465
名前:
デフォルトの名無しさん
:03/09/04 04:25
ウインドウ上のマウス位置を取得したいのですが、どうすればよいのでしょう。
GetConsolePosやlParamだと、スクリーンの上のを調べてしまいます。
466
名前:
デフォルトの名無しさん
:03/09/04 04:34
ScreenToClient
467
名前:
デフォルトの名無しさん
:03/09/04 10:21
Borlandのbcc55フリーコンパイラでWindowsプログラミングができるのでしょうか?
_mainのシンボルが未解決と出てしまいます( ´Д⊂ヽ
468
名前:
デフォルトの名無しさん
:03/09/04 10:32
>>467
普通に可能だが。
何故そのエラーが出るのかといえばbccの使い方が理解できていないから。
469
名前:
デフォルトの名無しさん
:03/09/04 11:39
>>467
タダで最強!フリーC/C++コンパイラ
http://pc2.2ch.net/test/read.cgi/tech/1035882599/
470
名前:
デフォルトの名無しさん
:03/09/04 12:20
>>466
GetCursorで画面での位置を取得
↓
ScreenToClientでウインドウでの位置に変換
でできました。ありがとうございました。
471
名前:
デフォルトの名無しさん
:03/09/04 12:35
Win2k/XPでは、CTRLを押しながら[シャットダウン...]を押すと
緊急時シャットダウンとなり、瞬時(1〜2秒)でウィンドウズが
シャットダウンします。
これと同じ事をプログラムからAPIを呼び出して行いたいのですが
どのAPIを使えばよいのでしょうか?
ExitWindowsEx( EWX_FORCE | EWX_SHUTDOWN , 0 );
とやったらイケルかと思ったのですが、この場合、アプリなどは
強制終了されているようですが、Windows自体のシャットダウン
プロセス自体は通常通りでした。(「設定を保存中です」という
ダイアログが表示され、10秒程度終了処理を行ったあと電源が切れる)
(参考) Windows で緊急時シャットダウンを実行する方法
http://support.microsoft.com/default.aspx?scid=kb;ja;279134
472
名前:
デフォルトの名無しさん
:03/09/04 14:15
>>471
試していないのですが、EWX_FORCEIFHUNG が必要では?
参考:
ttp://msdn.microsoft.com/library/default.asp?url=/library/en-us/sysinfo/base/exitwindowsex.asp
473
名前:
471
:03/09/04 14:50
>>472
ありがとうございます。
EWX_FORCEIFHUNG は試してみました。
これをつけると無条件にアプリのプロセスを終了するのではなく
応答無しのプロセスのみ強制終了するようになります。
結果、EWX_FORCE のみのときに比べてシャットダウン処理時に
余計に時間がかかるようになります。
この方が安全なのでしょうけど、いまやりたいのは即座に
シャットダウンさせたいのです。
474
名前:
デフォルトの名無しさん
:03/09/04 19:01
MS Pゴシック 12pt の時のいろいろな文字列の実際に表示された時の幅を
取得したいのですが、どうすればいいのでしょうか?
いろいろ調べた結果
GetTextExtentPoint32
がぁゃιぃと踏んだのですが…
475
名前:
デフォルトの名無しさん
:03/09/04 19:07
>>474
その通りだが。
476
名前:
474
:03/09/04 20:00
>475
Font 変更のところで詰まっていたへたれでして…
でも、検索したら猫に解説がありました(´・ω・`)
477
名前:
474
:03/09/04 21:28
HDC hdc = GetDC(NULL);
HFONT hFont = CreateFont(12, 0, 0, 0, 0, 0, 0, 0, SHIFTJIS_CHARSET, 0, 0, 0, 0, "MS Pゴシック");
SIZE size;
GetTextExtentPoint32(hdc, "e", 1, &size);
cout << "e" << size.cx << endl;
GetTextExtentPoint32(hdc, "g", 1, &size);
cout << "g" << size.cx << endl;
結果:
e6
g6
こういう結果が得られたのですが、実際に IE にて二つの文字を表示してみたところ
e のほうが 1 dot 大きいのですがなぜでしょうか?
IE が特殊なのん?
478
名前:
デフォルトの名無しさん
:03/09/04 21:34
TextOut()やDrawText()でウインドウに出力したテキストを消去するにはどうすれば良いですか?
479
名前:
デフォルトの名無しさん
:03/09/04 21:48
>>477
CreateFontの引数はピクセル単位だぞ。12ピクセル=9ポイント(WinXPデフォルト設定で)
480
名前:
デフォルトの名無しさん
:03/09/04 22:02
>>478
背景色で塗りつぶす。もしくは背景の画像の該当部分をコピー。
481
名前:
デフォルトの名無しさん
:03/09/04 22:15
>>477
hFontを使ってないように見えるけど…省略しただけ?
482
名前:
デフォルトの名無しさん
:03/09/04 22:32
ふぉんとのことを言うと、SelectObjectしないとFontが変わらないよ。
483
名前:
デフォルトの名無しさん
:03/09/04 22:37
江~~~~~~~~~~~~~~~~~~フォントォォ~~~?????????????????????????
484
名前:
デフォルトの名無しさん
:03/09/04 22:37
>>483
5点
485
名前:
デフォルトの名無しさん
:03/09/04 23:41
CreateIoCompletionPort()やらについて解説してるサイトってないッスか?
…MSDN以外ないッスよね…。
486
名前:
デフォルトの名無しさん
:03/09/04 23:54
書籍でいいならAdvanced WindowsとかProgramming Windows2000とか当たってみたらどうだ?
英語のサイトなら多分あると思うが。
487
名前:
デフォルトの名無しさん
:03/09/05 00:20
DOSコマンドのnetstatのような自分のPCに接続している接続先の情報一覧
などを得ることはできないでしょうか?
488
名前:
デフォルトの名無しさん
:03/09/05 00:30
>>487
GetTcpTable, GetUdpTable,
XP以降なら
AllocateAndGetTcpExTableFromStack,
AllocateAndGetUdpExTableFromStack
のほうがプロセスIDも取れて便利。
489
名前:
デフォルトの名無しさん
:03/09/05 00:38
文字列があって、あるサイズ(横幅)に収まるポイントが
ほしいのですが、ループで回して調べるしか
ないでしょうか?
490
名前:
デフォルトの名無しさん
:03/09/05 00:54
>>489
意味がわからないが、たとえば
あいうえおかきくけこさしすせそ
↓
あいうえおかき...
みたいなのを実装したいの?
491
名前:
471
:03/09/05 00:57
>>471
の件ですが、ExitWindowsExでは無理そうなので
SYSTEMプロセスをTerminateしてやろうと挑戦中です。
HANDLE hProc = OpenProcess( PROCESS_QUERY_INFORMATION | PROCESS_VM_READ | PROCESS_TERMINATE , false , <プロセスID> );
BOOL fStat = TerminateProcess( hProc , 0);
システム系のプロセスを対象としたとき、PROCESS_TERMINATE を
つけるとOpenProcessが失敗するようです。
SeDebugPrivilege を使うとなんでもありにあるようなので
これから試してみます。
[HOWTO] SeDebugPrivilege を使用して任意のプロセスへのハンドルを取得する方法
http://support.microsoft.com/default.aspx?scid=kb;ja;JP131065
492
名前:
デフォルトの名無しさん
:03/09/05 00:57
ちょっと前に同じような質問なかったっけ。
493
名前:
489
:03/09/05 01:13
>>490
いえ、エクセルの「縮小して全体表示」みたいなのが
ほしいです。。。
494
名前:
471
:03/09/05 01:27
なんとなく独り言モード
>>491
の SeDebugPrivilege を使う方法でほとんどのプロセスを
Terminate出来るようになりました。
タスクマネージャーで「致命的なシステムプロセスです。」と
いわれて終了出来ないプロセスも終了できます。
ただ肝心の「System」プロセス(PID=8)は終了できません。
イメージ名に「.EXE」がついていないので、Idle Processの
ような仮想的なプロセスなのでしょうか。
とりあえずいろいろプロセスを殺してみましたが、WINLOGON.EXEを
Terminateしたら、いきなり画面が黒くなりマシンがリブートしました。
これか?と思いましたが、リブートしては目的に添わないし
もう一度試してみても再現性がありませんでした。がっかり
495
名前:
デフォルトの名無しさん
:03/09/05 02:25
>>485
英語ページですが。
ttp://home.arcor.de/davidweatherall/work/iocompl.htm
496
名前:
デフォルトの名無しさん
:03/09/05 04:41
質もの願いします
画面を持たないEXEモジュールで以下のことをしたいのですが。
1.エクセルを起動
2.オブジェクトを取得
3.値を配置
4.保存
5.エクセルを閉じずにオブジェクトを開放
6.人間の手で修正
7.(この間VBはエクセル終了まで待機)
8.人間の手で終了
9.エクセルの内容をDBに変更
で、
1は「ShellExecuteEX」
2は「GetObject」
7は「WaitForSingleObject」
を使って実現しようと考えました。
ところがいくつか問題がありまして、よろしければご指導ください。
1.「画面を持たないEXEモジュール」なので「ShellExecuteEX」のhwndに0を渡すと
戻りの実行ファイルのハンドルが0で帰ってきて、「WaitForSingleObject」が機能しない。
2.ループでExcelの起動完了を検出してからGetObjectでオブジェクト変数を取得しに行くが
既にエクセルが起動している場合はにうまく機能しない
よければご教授お願いします。
497
名前:
デフォルトの名無しさん
:03/09/05 05:38
オンラインのMSDNの効率的な検索方法教えて。
普通にAPIの名前だけ入れてもうまく引っかからないことが多いので
とりあえずこんな感じでキーワードを並べるとだいぶましになるけど完全とはいえない。
ShellExecute site:www.microsoft.com プラットフォーム SDK
それにしても個人のサイトでAPIリファレンス載せてる人々は一体何を考えているんだろう?
検索精度が下がって激しく邪魔なんだけど。
498
名前:
デフォルトの名無しさん
:03/09/05 08:17
あ,あの,Windows でハードウェアスクロールって
・・出来ないすよね,やっぱし・・
いえ,もういいっす・・すんませんっした・・
499
名前:
デフォルトの名無しさん
:03/09/05 08:21
>>497
うまく検索できないのは、マイクロソフト(日本)のサイト自体
の問題。個人のサイトでAPIリファレンスを載せてる人は関係
ない。
そもそも全ての情報が日本語訳されている
わけではないので、
http://msdn.microsoft.com/
を使った方がいい。
500
名前:
485
:03/09/05 08:30
>>486
うーっし、Advanced Windows辺り見てみまっさー
■過去ログ置き場に戻る■
1-
前250
次250
最新50
DAT2HTML
0.33f Converted.