1read 100read
2011年12月1期プログラム14: Win32API質問箱 Build99 (1001)
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▼
・ 次のスレ
15: C/C++の宿題片付けます 154代目 (427)
16: 【Intel】OpenCV総合スレ 3画素目【画像処理】 (856)
17: 性器表現0.0.1 (16)
18: WinRTスレ (Metro, .NET Core, C++/CX) (832)
Win32API質問箱 Build99
- 1 :11/11/29 〜 最終レス :Over
- スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。
やさしいお兄さんやHなお姉さんたちが答えてくれるかも。
「知らないならレスしないで下さい。ウザイだけです。 」なんて言わないでねっ!
■過去スレ
Win32API質問箱 Build98
http://hibari.2ch.net/test/read.cgi/tech/1321456608/
■注意
・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。
・日本語版MSDN Online Libraryは不完全です。
英語版( http://msdn.microsoft.com/en-us/library/ )の利用推奨。
・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。
・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで
- Win32API質問箱 wiki
http://wiki.livedoor.jp/program1/d/FrontPage
過去スレはwikiから探してください。
- 2 :
- 雑魚スレにようこそ
このスレは雑魚質問者の隔離用だから
雑魚は他のスレに迷惑かけないようにこのスレに書き込むように
- 3 :
- >1とか本物の雑魚なんだろうな。
- 4 :
- 雑魚というより頭悪いだけだろw
- 5 :
- さっさとスタイルの変え方教えろ
- 6 :
- 雑魚のWin32API雑談 Build99
だろ
- 7 :
- >>2-4
ここはお前ら雑魚を隔離するためのスレだ
- 8 :
- この子気に入ったのでもう1回貼っておきますね
http://www.youtube.com/watch?v=VohnQ9p6f7U
- 9 :
- スタイルの変え方教えろつってんだろ
- 10 :
- 脂肪吸引でもしろよ雑魚。
- 11 :
- 結婚相手を見つけるAPIを教えてください
年齢的に焦ってるのでお願いします
- 12 :
- Windows7 32bitのWinsockの動きがおかしい
マルチスレッドで送信と受信にそれぞれmutexを掛けて保護して
同時にselectで送信可能チェックをして送信してるんだけど
大量にデータを送ってるわけでもないのにすぐにタイムアウトまでブロッキングされる
タイムアウトで送信出来ないのかと思いきや普通に送信出来るし
まったく同じプログラムを64bitマシンで動かしても何も問題は起こらない
元々はselectを入れてなくてたまにsendがブロックしたまま制御が帰ってこなくなるので入れてみたんだけど
selectを入れたらさらに頻繁に制御が帰ってこなくなった
そもそもいくらマルチスレッドとはいえバグでsendの制御が帰ってこないなんて考えられないと思うのだけど
いったいこれは
- 13 :
- かかてこいよ雑魚共
- 14 :
- ドーナツのようなくりぬいた図形を描画するには
どうすればいいですか?
- 15 :
- >>12
ソケットをスレッドごとに分けなければいけない。
1スレッド1ソケットの原則。
- 16 :
- >>12
select の使い方と thread の使い方を間違えてるんだろう
ソースも貼らずになにを言っておるのかね
- 17 :
- SetWindowsHookExについて質問させてください。
m_hHook = ::SetWindowsHookEx(WH_GETMESSAGE, (HOOKPROC)GetMsgProc, getThisInstance(), dwThreadId);
こんな感じでプロセス毎にフックを仕掛けてるんですが。
フックを仕掛けるexeを素早く複数立ち上げると、プロセスが異なる(dwThreadIdが別)のに、同じハンドルが返されることがあります。
ちょっと一呼吸待ってから2つめのexeを立ち上げると別のハンドルが返ってくるのですが。
同じハンドルを返されると、片方のexeを閉じてUnhookWindowsHookExすると、閉じていない方のexeまでフック用のdllがアンロードされてしまいます。
SetWindowsHookExで必ず異なるハンドルが返ってくるように強制させることはできるものでしょうか。
- 18 :
- 書き忘れました、環境は
Windows7 Professional SP1 64bit
VisualStudio2010のMFCアプリ (アプリとdllは32bit版で作成/実行してます)
- 19 :
- m_hHookはexeの個別のプロセスのアドレス空間にありますか?
それともdllのアドレス空間にありますか?
- 20 :
- 正しく宣言されていれば、(HOOKPROC)GetMsgProcのキャストはいらない
- 21 :
- >>11 Yahoo! パートナー
- 22 :
- >>19
DLL側のコードに、
#pragma data_seg(".CHookData")
static HHOOK m_hHook = NULL;
#pragma data_seg()
で宣言しています。
これだとdllのアドレス空間ということになるのでしょうか。
そして今確認しましたが、申し訳ありません。同じハンドルだから別exeのdllをアンロードしているわけではありません。
ハンドルが別でもアンロードされる時はされてしまいました。
- 23 :
- >>12
APIの質問じゃないだろゴミクズ
そんな問題の切り分けもできないヴァカが通信系なんかするんじゃねぇよ
問題外のクズは回線切れよわきまえろよ低能
>>15
何を言ってるのか意味不明
ガキに間違った回答して楽しいか?
>>16
ここまでで一番まともな書き込み
- 24 :
- >>20
おっしゃる通りです、キャストはなくても動作しました。
- 25 :
- >>22 .CHookDataが共有なら、
m_hHookはCreateMutexなどで同期しないといけない。
共有じゃないなら、設計ミス。
- 26 :
- でもMutexのハンドルが渡せないとかMutexのハンドル自体の
同期という問題が起こるので、Mutexの名前を統一してOpenMutexで
開くなどしないといけない。
- 27 :
- つまりはMutexのハンドルは共有しちゃダメ。
Mutexの意味は知ってるよね?
- 28 :
- MFCだったらCMutexっていうクラスがあるからそれを使え。
- 29 :
- >1スレッド1ソケット
ジョークならジョークって分かる書き方しないと本物の馬鹿だと思われるぞ
- 30 :
- 明らかにジョークと分かる内容をジョークと分からないお前が馬鹿
- 31 :
- 馬鹿を演じて注目を浴びようとする
どこにでもいるただの本物の馬鹿だよ
- 32 :
- >>14
リージョン、パス、アルファブレンド
- 33 :
- >>32 ありがとう。BeginPath, CloseFigure, EndPath,
StrokeAndFillPathでOKだった。
- 34 :
- _
σ λ
〜〜〜〜
/ ´・ω・) <糞コテさん 糞コテさん
_, ‐'´ \ / `ー、_ まゆしぃはね、糞コテが配布しているexeを実行できるわけがない
/ ' ̄`Y´ ̄`Y´ ̄`レ⌒ヽ 女子高生的に考えて、って思うの
{ 、 ノ、 | _,,ム,_ ノl
'い ヾ`ー〜'´ ̄__っ八 ノ
\ヽ、 ー / ー 〉
\`ヽ-‐'´ ̄`冖ー-/
- 35 :
- SetPolyFillModeも。
- 36 :
- どうしてCreateWindowをオーバーロードできないのはなんで?
- 37 :
- >>36 virtual関数にしていないから。
- 38 :
- じゃないんだな。プリプロセッサーマクロだから。
- 39 :
- 正確には関数マクロに展開されるから。
- 40 :
- 名前を変えるといいよ。
- 41 :
- virtualつけたらできました
- 42 :
- >>25-28
回答ありがとうございます。解決しました。
共有しないように変更しました。
#pragma data_seg をフックするときは必要なもんだと何も考えずに入れていたのが問題です。
えぇ、コピペ君ってバカです。
プロセス間でメモリ共有してたらそりゃダメですよね、本当に助かりました、ありがとうございました。
- 43 :
- >>41 お冗談を
- 44 :
- >>23
十分問題を切り出してると思うんだが
Windows7 32bitのみでselectをすると悪化する
残る可能性はただ1つ
Winsockの仕様を勘違いしてるか、Windowsがおかしいか
>>15はただの馬鹿だが
まあでもそういう回答を期待して書いてみただけだから
- 45 :
- >>42みたいなゴミがまた中途半端な知識で回答したりするんだろうな
もう存在自体が迷惑
- 46 :
- オマエモナ
- 47 :
- 冗談抜きで雑魚しかいねーな
- 48 :
- 外部からアプリケーションを操作するプログラムを作っています。
対象のアプリケーションのコントロールの種類を知るにはどんな方法があるでしょうか?
というのも、アプリケーションの持つコントロールのEDITBOXやPICTUREBOXなどの
固有の値があれば特定できそうなんですけれども、GetWindowLong関数でGWL_ID指定しても、
アプリケーションが立ち上がるたびに変わってしまうのです。なので、固有の値が
取れるような方法など、お教えいただけるとありがたいです。
- 49 :
- 無理
- 50 :
- >>48
お前には無理
- 51 :
- 無理って・・・
いや、技術が低いのは理解しています。
現在の能力では無理でしょう。ですからいろいろ勉強しています。
私には無理というのは、「方法はある」と理解してよろしいでしょうか?
それとも、無理と言っているのは、お答え頂いた方たちにも無理=仕様上不可能
ということでしょうか?
- 52 :
- まさかの>>15が正解だったかもw
確かに複数のソケットを1つのスレッドで処理して送信してたので分離してみたら動いた
ブロッキング機構は1スレッドに1つしかないのか?
受信と送信を共有してるスレッドでは問題が起こらないのを考えると受送信の分離は行われてるんだろうけど
こんな仕様聞いたことないけど、そうなのか?
- 53 :
- ブロッキングを勘違いしてると思われう
http://www.youtube.com/watch?v=LhF6WCfUn4k
- 54 :
- えっ?
1スレッドで何ソケ扱おうがそんなところでバグ出ねーよ
- 55 :
- >>51
あるかないかも分からない奴にはどう足掻いても無理。
- 56 :
- 基礎をやらずに実践とかいきなりやるから勘違いして恥ずかしい長文投稿するんだろうなwwwww
恥さらし乙
- 57 :
- Winsockがマイクロソフトの仕様じゃないのが問題かも。
- 58 :
- 1スレッド1ソケットなら
1スレッドで複数のソケットを処理して
しかもそのスレッドが複数存在するような通信部分を書いた
俺のモルピグ鯖はとっくに不具合出してるし
俺もとっくの昔に解雇されてるよw
- 59 :
- >>54
今まで出たことないし、そんなサンプルや記述は見たことがないが
そんなに複雑な処理じゃないから
単にメモリにキャッシュしたデータを複数の送信先に送信してるだけ
それを送信先毎にスレッドを分離するようにしただけだから
他に解決した理由は考えられない
複数の環境でWindows7 32bitのでしか起こらないことからしても
環境に依存したものが関連してそうだけど
- 60 :
- 勘違いで書き込んでる奴キモい。
リアルでもうざがられてるんだろうな、
本人が気づかないだけで。
- 61 :
- そんなわけねーだろ馬鹿!
と、答えたいところなんだけど、仕様さえマイクロソフトのものではないし、
実装に至っては各社個人いろいろなものがあるので、何とも言いようがないってとこか。
ごく一般的に言えば、そんなわけねーだろ馬鹿!なんだけどな。
- 62 :
- >>51=ゴミ
- 63 :
- こういうヴァカが自作のプログラムで他人の鯖に接続したりするんだろうな
迷惑だから回線切ってやれよ
- 64 :
- このスレはね雑魚しかいないのよもう。
答える奴が雑魚だからもうここで質問しないほうがいいよ。
このスレはもう機能してないから。
雑魚の隔離スレなのここ
- 65 :
- 質問する奴の基礎がなってないのが問題。
- 66 :
- すげぇな、基礎がなってないっていうのなら、
それを指摘すれば言いだけであって、人格攻撃までしてくるとは
思わなかったですよ。朝鮮人みたい。
しかし、回答者の口ぶりからすると、方法はあると読めるので、
調べてみます。
どんな情報でもいただけたことを感謝いたします。
- 67 :
- 2chに何期待してんだ
- 68 :
- DQNの一種だろうなww
あーるぇぇぇぇぇwwwエンジンwwwwかけてみたらwwwww
かかったwwwwwwwww
みようみまねでwwwwwアクセルwww踏んだらwwwwwwwwww
動いたwwwwwwwwwwwwwwwwwwwwwwwww
って公道出て事故ってるDQN家庭で育った工房と同じレベルw
クズ以下の親に育てられたDQNはやっぱりクズ以下だなw
子は親の鏡とはまさにww
- 69 :
- >>66
質問者のフリしてわざと珍妙な投稿まで荒らしてるんだから人格まで否定されるのは当たり前。
- 70 :
- 馬鹿には無理
- 71 :
- 今日もM$信者を一人退治してやった。
一日一善。
- 72 :
- だからこの糞スレには雑魚しかいないから無理なんだって・・
- 73 :
- Linuxで書いた標準Cライブラリだけで作ったコンソールアプリのバイナリは
Macでもそのまま動きますか?
- 74 :
- だからTwitterのほうがいいって。
基地害片っ端からブロックできるし。
- 75 :
- × この糞スレには雑魚しかいないから無理なんだって・・
◎ このスレにはぼくちゃま一人しかいないから糞スレなんだって・・
- 76 :
- Mutexにタイムアウトを設定して、Socketにタイムアウトを設定しないとブロックされる
Socketにタイムアウトを設定してMutexにタイムアウトを設定しなとタイムアウトで処理が戻る
つまりMutexはブロックに関与してない
排他ミスによって複数のスレッドが同時にメモリアクセスを起こした場合は経験上こういうエラーは出ない
ソケットがsend部分でブロックしてるのは間違いない
その条件のまま、送信先毎にスレッドを分離処理するようにしただけ
処理内容は何も変わってない
するとsendでブロックしなくなった
スレッドが影響してるとしか考えようがない
- 77 :
- mutexにもsocketにもタイムアウトなんて設定しなくてもそんな珍妙な現象起きたことねぇよw
お前が雑魚なだけだろw
- 78 :
- >>77
だからWindows7 32bitでしか起きないと言ってるだろう
他は64bitマシンしかないが通常に動いてると言ってるだろう
だから「そんな現象が起きたことがない」のは自慢にはならないぞw
- 79 :
- 送信毎に分離て1000人以上も同時接続するモルッピグの鯖は1000以上スレッド作ってんのかよwww
常識で考えろやゴミクズwwwww
- 80 :
- >>79
そのサーバーがうちのWindows7 32bitマシンじゃないからな
- 81 :
- 知らねえよWindows7なんてタームは>>76に一言も出てきてねーだろ
- 82 :
- しばらくぼくがひとりでかきこむから
みんなはきにしないでほっといてね
- 83 :
- 32bitマシンでHDDエラーが出てたんだよな
まだ試してないが
もしかしたらシステムの一部が破損してるのかも
- 84 :
- なるほどなぁ・・・。
そういうことか。
腑に落ちないが納得はした。
今回はTwitterのリプがくるのも遅かったな。
win7 32ビット特有だからかな。
- 85 :
- 勝手に雑魚って言葉使うんじゃねーよ雑魚のくせに
- 86 :
- 32bitマシンは雑魚
- 87 :
- エディットコントロールにデフォルトでついてくるポップアップメニューの
「貼り付け」のみを無効にするにはどうすればいいですか?
- 88 :
- 貼り付け動作を無効化するなら簡単なんだけどなあ。
WM_CONTEXTMENUを引っ掛けて、
代わりに自前のメニューを出す位しか思いつかない。
- 89 :
- EnableMenuItem MF_GRAYED
- 90 :
- 雑魚しか返答してくれないのですね。。。
- 91 :
- やってみてもダメでした
ポップアップメニュー自体を消すしかないんですかね
ReadOnlyのテキストエディタではデフォルトで貼り付け無効にしといてくれよ
- 92 :
- (雑魚が返答しては)いかんのか?
- 93 :
- 誘導されてきました。
エクスプローラっぽいものを作ってるんですが、ネットワーク接続フォルダを
表示するときにローカルエリア接続の「状態」(接続、接続中、限定など)も表示したいんですが
どうすれば取得できるのかでつまっています。
環境はXPでBCB使ってます、よろしくお願いします。
- 94 :
- 日本の全産業の雇用の調整便がIT技術者
昭和に作られた大手の時代遅れの雇用環境を守るため搾取され使い捨てにされるのがIT技術者
古い産業の既得権益を守るため新しい産業の人材が搾取されるのがこの国のシステム
お客さんに素晴らしいサービスを届けたい
技術を蓄積して海外との競争に勝ちたい
そんな純粋な気持ちは踏みにじって面倒なことは下請け丸投げで
楽して生活費を稼いで問題が起きたら知らん振りするのが日本人
- 95 :
- 雑魚はレスしないで下さい。ウザイだけです。
- 96 :
- 今BCBって変な人にでも薦められない限り使わんよな
- 97 :
- >>93
このスレに誘導されてる時点でお前ウザがられてるんだよ
ここはウザい雑魚の隔離スレだからな
そんなことにも気付かずにここで再質問とか頭悪すぎてワラタwwww
- 98 :
- IT関係者はストライキしまくってプライベートでハッキングしまくればいいのに
うえのほうでふんぞり返ってるカスどももさすがにやばいと思って泣いて謝ってくるよ
この業界根暗っぽいやつ多そうだしそれでおとなしすぎるからいまの奴隷の地位にいるんだろうね
- 99 :
- >>93
そもそもネットワークフォルダとローカルエリア接続に関連性がないからな
接続先が1つならいいが2つ以上あるとどこの接続先のフォルダか分からないだろ?
やるだけ意味のないことだが
どうしてもやりたいならGetAdaptersAddressesあたりで接続状態は調べられそうだけど
- 100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▲
・ 次のスレ
15: C/C++の宿題片付けます 154代目 (427)
16: 【Intel】OpenCV総合スレ 3画素目【画像処理】 (856)
17: 性器表現0.0.1 (16)
18: WinRTスレ (Metro, .NET Core, C++/CX) (832)
-