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


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

C++相談室 part122



1 名前:デフォルトの名無しさん mailto:sage [2016/01/23(土) 23:06:15.32 ID:HdItgJjm.net]
C++に関する質問やら話題やらはこちらへどうぞ。
ただし質問の前にはFAQに一通り目を通してください。
IDE (VC++など)などの使い方の質問はその開発環境のスレに
お願いします。

前スレ
C++相談室 part121
peace.2ch.net/test/read.cgi/tech/1449240881/


このスレもよろしくね。
【初心者歓迎】C/C++室 Ver.97【環境依存OK】
peace.2ch.net/test/read.cgi/tech/1439849418/

次期規格C++1zはこちら
C++14/C++1z 20
peace.2ch.net/test/read.cgi/tech/1410382924/

■長いソースを貼るときはここへ。■
 codepad.org/
 ideone.com/

577 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 07:34:36.75 ID:WJf9jt/h.net]
>>538, >>561, >>571
専ブラ使えよ
フルボッコされた涙目だとアンカーも付けにくいだろ w

578 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 07:55:30.76 ID:vxNioHuU.net]
「今回は特別に教えてやろう」はお前のような低能をバカにするにふさわしい、あのバカが残した名言。

> 低メモリ下の話なんて見つからないんだが
当たり前だ。世界中でそんな結論に至った低能はお前だけだという証明。

今回も特別に教えてやろう。エラーがでたらエラーの理由を調べなきゃダメだぞ。中学生。
https://msdn.microsoft.com/ja-jp/library/windows/desktop/ms644944(v=vs.85).aspx
| To get extended error information, call GetLastError. GetLastError returns ERROR_NOT_ENOUGH_QUOTA when the limit is hit.
と書いてあり、さらに
| There is a limit of 10,000 posted messages per message queue.
| This limit should be sufficiently large. If your application exceeds the
| limit, it should be redesigned to avoid consuming so many system resources.
| To adjust this limit, modify the following registry key.
と書かれている。

PostMessageがFAILするヘボアプリなんか書いたことが無いので、試しにCreateWindow直後に
while (PostMessage(hWnd, WM_NULL, 0, 0))
;
するプログラムを書いてみると、ERROR_NOT_ENOUGH_QUOTAが発生する事が確認できる。

お前のヘボアプリが原因だな、証明終了。

579 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 08:27:04.76 ID:pNz7UH/B.net]
www.dotup.org/uploda/www.dotup.org734087.zip
おかげさまでコンパイルも無事通り最初のデバッグができました。
リファレンスにタコなAI突っ込んどいたので誰か遊んでください。
ありがとうございました。
一応ライセンスはMITライセンスでいいです。
自己責任でおながいします!

580 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 08:35:31.59 ID:LEO/MbWa.net]
IDが変わっててよくわからんから君ら昨日と今日のIDを等式で繋いでくれよ

581 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 08:55:50.21 ID:vxNioHuU.net]
ID:r+XipyqSとID:rWlIZ3EBが低能ぶりでそっくりだが、
ID:r+XipyqSはシステムリソースを食い尽くすアホアプリを特定する監視プログラムを作ろうとして
プライベートリソースを食い尽くすアホ**2アプリを作ってしまった無能。
ID:rWlIZ3EBは話題についてこれない低脳。無視して良い。

582 名前:デフォルトの名無しさん [2016/02/11(木) 09:20:37.71 ID:JNPPvkDO.net]
C++の標準ライブラリの貧弱さは異常

583 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 09:33:17.55 ID:EuRhj+pR.net]
string関連は特に酷いよな

584 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 09:34:54.74 ID:OZhLkZUr.net]
ライブラリ自体が飯のネタになってた時代の言語だからな

585 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 09:50:04.55 ID:pNz7UH/B.net]
>>582
自分に必要なライブラリスクラッチしてると実力つくぞ。
ただ、環境依存系はきついけど。



586 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 09:57:52.64 ID:rWlIZ3EB.net]
ID:lc1dGjcs = ID:rWlIZ3EB

しかし>>576がリファレンス読めない馬鹿ではなく
リファレンスも読もうとしない低能だったとは

587 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 10:01:08.51 ID:ZvFHDsOW.net]
>>580
このアホさ加減から言ってID:rWlIZ3EB=ID:cNfi8Aotだろ
別人装ってるけどなw

588 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 10:49:54.44 ID:vxNioHuU.net]
ID:lc1dGjcs = ID:rWlIZ3EBはアスペっぽいな。放置推奨。

589 名前:r mailto:sage [2016/02/11(木) 10:54:32.20 ID:ECJX98k8.net]
このスレの住人ってどんな環境使ってるんだ?
なんかWin+VS環境が多い印象なんだが、LinuxやMacでClang使ってる奴はこのスレでは少数派?

590 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 11:36:47.06 ID:unvLhFXs.net]
仕事の話なのかオナニーの話なのか

591 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 13:29:43.31 ID:WJf9jt/h.net]
本人: 仕事の話のつもり
本人以外: またオナッてら

592 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 13:32:04.04 ID:r+XipyqS.net]
>>578
アホすぎて返す言葉もないわ
お前が引用した文はメッセージキューがいっぱいになったときの挙動だろうが
それのどこに低メモリ下の話があるんだよ
ERROR_NOT_ENOUGH_QUOTAなんてお前が勝手に引っ張り出してきただけで
俺が言ってるのはキュー溢れの話じゃないから
何が「証明終了」だよこのクソバカ

593 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 13:39:36.40 ID:r+XipyqS.net]
>>578
>PostMessageがFAILするヘボアプリなんか書いたことが無いので、試しにCreateWindow直後に
>while (PostMessage(hWnd, WM_NULL, 0, 0));
>するプログラムを書いてみると、ERROR_NOT_ENOUGH_QUOTAが発生する事が確認できる。
得意気に言ってるけどそんなもん当たり前の話だよ
メッセージキューだって無限じゃないんだから

まずは低メモリ下での実験をして低メモリなだけじゃPostMessageがエラーを返すことはない
という証明をしろよ
この低能シッタカくん

594 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 13:46:20.87 ID:COETO4tD.net]
>>592
リファレンスには「低メモリ下の話」は載ってないってことだよね?
リファレンスに載ってる ERROR_NOT_ENOUGH_QUOTA と "5 (access denied)" 以外の
どのエラーコードが返ってきたの?
https://msdn.microsoft.com/ja-jp/library/windows/desktop/ms681381%28v=vs.85%29.aspx

595 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 13:57:39.95 ID:r+XipyqS.net]
>>594
さあもう10年以上もことで何のエラーだったかは覚えてないけど
低メモリ下ではPostMessageがエラーを返すことは事実だよ
newとかmallocが失敗するようになる前にそうなる。
XPだったと思うけどもしかしたらWindows2000だったかも知れん。
その監視プログラムのソースは持ってるから再び試すことは可能ではあるけど
そこまで暇人じゃない。

まあOSバージョンが何にしろ低メモリ状況ではAPIがちゃんと動けなくなることがあるなんていうのは
当たり前の話だと思うが???



596 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 14:07:17.11 ID:r+XipyqS.net]
低メモリ状況だからといってPostMessageがエラーを返すことがないと証明したいなら
その証明プログラムを書くなんて簡単な事だよ
まずそれをやれよ
俺は今超絶忙しいから、低メモリ状況ではAPIがエラーを返すことがあるなんて当たり前のことを
わざわざ証明する気にはなれないね悪しからず

こんな当たり前のことも理解できない低能はどんだけ俺に迷惑かければ気が済むんだよ???

597 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 14:10:14.16 ID:xD0FV+ye.net]
悪魔の証明っぽいんですけどそれは大丈夫なんですかね?

598 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 14:13:42.80 ID:Nr5EvEk2.net]
低レベルAPIってスタックも積まないしメモリも使わないのに低メモリ下でこけるのはどういうときなんだろ
いまいちイメージができない

599 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 14:15:13.30 ID:r+XipyqS.net]
あんまりしつこくすると俺の得意技の処刑プログラムを発動させるぞ
過去の苦い思い出があるからなるべくそれは避けたいんだけど。。。

600 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 14:24:50.96 ID:r+XipyqS.net]
間接的にとはいえ人を殺すというのは、そいつがどんなクズだったとしても精神的に深いキズを残す
そんな修羅場を乗り越えたことがある者だけが俺に向かって石を投げなさい(救世主モード)

601 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 14:34:35.16 ID:COETO4tD.net]
>>595
ん?それじゃ ERROR_NOT_ENOUGH_QUOTA だった可能性も否定もできないってことになるね。

https://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/8fcf1a75-8cbb-4523-991f-88e0088ac524
PostMessage() の本来の動作に追加のメモリ確保が必要なわけでもないんで、
低メモリ状況で失敗するのが当たり前とは思わないなぁ。

低メモリ→スラッシングなどで極端にキューの取出しが滞る→キューがいっぱい、っていう
シナリオもありそうだし。10年以上前ならなおさら。


念のため言っとくけど、関数が失敗する理由がドキュメントですべて列挙されてるとは思わないから、
他のエラーの可能性を否定してるわけじゃないよ。そういう、ドキュメントに載ってないエラーの例が
あれば面白いなぁと思ったまで。

602 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 14:40:04.55 ID:2zWchetY.net]
エラーコードも書けない
回避方法も書けない

ネタ決定でしょ
まともなプログラマなら、自分は覚えてなくてもすぐエラーコードや回避方法はわかるはずだから

603 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 14:59:37.10 ID:8QEa0xty.net]
いいねえ、その処刑プログラムとやら、ぜひ発動させてくれ。
今。
ここで。

604 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 15:17:40.53 ID:rWlIZ3EB.net]
・リファレンス上、PostMessageは失敗することがある
・リファレンス上、メモリ不足でエラーにならないとは書かれていないようである
・実際にメモリ不足でエラーになったと主張する>>509が登場

この状況なんだから「メモリ不足エラーというリファレンス上許された挙動があり得ないと言うならそれを証明しろ」
と言えばいいのにr+XipyqSは

605 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 15:37:44.95 ID:r+XipyqS.net]
『低メモリ状況ではPostMessageに限らず多くのAPIが失敗する可能性がある』
こういう当たり前の主張にしつこくケチつけなきゃいられないようなタイプのクズ
っていうのは現実の社会にもそれなりに実在するから真面目な人は気を付けたほうがいいよ
もっともここでそれをやってるのは現実の社会から干されたどうしようもないゴミクズだろうが



606 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 16:06:50.17 ID:8QEa0xty.net]
クズでもなんでもいいから早く処刑プログラム発動させろよ。
使えねえ奴だな。同類扱いされるぞ?

607 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 16:31:59.03 ID:r+XipyqS.net]
>>606
発動させるときは不言実行だからな
お前は対象ですらないけどw

608 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 16:40:31.83 ID:r+XipyqS.net]
俺の処刑プログラムは簡単にはその発動が察知されないようにできている
悪いけどお前らみたいなへボプログラマじゃないんでね
誰も知らないうちにターゲーットはご臨終(ナムナム)になってて
俺はゲラゲラ笑ってる

609 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 16:44:15.33 ID:8QEa0xty.net]
わかったわかった
夢の中で好きなだけ発動させてなさいね

610 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 16:45:37.29 ID:Qn21xKPQ.net]
>>587
> このアホさ加減から言ってID:rWlIZ3EB=ID:cNfi8Aotだろ

俺もだんだんそう見えてきたw

リファレンス、リファレンス、リファレンス
リファレンス上、リファレンス上、リファレンス上

611 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 16:45:46.47 ID:rWlIZ3EB.net]
「そいつはもう死んだ」
「真面目なエンジニアさんはこの状況をよく見てください」
「間接的にとはいえ人を殺すというのは、そいつがどんなクズだったとしても精神的に深いキズを残す」
「修羅場を乗り越えたことがある者だけが俺に向かって石を投げなさい(救世主モード)」

ここは中学校じゃないぞ

612 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 16:50:37.94 ID:r+XipyqS.net]
俺は精神的に中学生かも知れないが(嬉しい!)
お前らなんてそれ未満だからならw

613 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 16:53:21.89 ID:r+XipyqS.net]
俺にケチを付けたいクズは
『低メモリ状況ではPostMessageに限らず多くのAPIが失敗する可能性がある』
まずこの当たり前の主張が誤りであることを証明しろよ
それが出来ないならお前ら共には生きる権利はない

614 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 17:02:41.95 ID:R5nKPKgb.net]
ここまで臭い奴は2chでもそう居ない
ここ最近で一番ひどい

615 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 17:15:45.76 ID:r+XipyqS.net]
議論で勝てそうに無くなったら訳の分からない人格攻撃に走るという行為はド低能にありがちな典型的なもの
もうそろそろチョン認定してくれてもいんだぜw



616 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 17:19:03.88 ID:rWlIZ3EB.net]
>>615
今さらだが>>586のアンカーが間違ってたわ
576でなく578だったスマン

617 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 17:19:34.12 ID:R5nKPKgb.net]
2chで生きる権利がないとか無茶苦茶言うやつには言われたくない言葉だな

618 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 17:25:34.85 ID:rWlIZ3EB.net]
「もうそろそろチョン認定してくれてもいんだぜw」

腹痛ぇ
お前はどこまで日本語弱いんだ

619 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 17:30:57.72 ID:r+XipyqS.net]
はいはい。低脳どもとの会話にありがちな典型的なパターンに陥りました
さいならゴミクズ有害低能くんども

620 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 17:31:22.96 ID:R5nKPKgb.net]
>議論で勝てそうに無くなったら訳の分からない人格攻撃に走るという行為はド低能にありがちな典型的なもの

あーはいはい、

>このクソバカ
>この低能シッタカくん
>こういう当たり前の主張にしつこくケチつけなきゃいられないようなタイプのクズ
>現実の社会から干されたどうしようもないゴミクズだろうが
>お前ら共には生きる権利はない

↑のことですね

621 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 17:35:34.67 ID:S066gs71.net]
もうほっといてやれよw
流れ作って>>619で緊急脱出したつもりなんだからw

622 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 17:44:20.81 ID:chyZ04S/.net]
>>5「ベクタグラフィックスの為のクラスにスマポを使いたいんだけど」
>>39「こんなんでどない」
>>52「>>39 例外でリークする糞コード晒してんじゃねーぞハゲ。大人しくスマポ使っとけ。」←vectorがbad_alloc例外を出した場合の話
>>226「>>52 つまり君はこうすれば良いと思うわけだね?」
>>227「>>226 push_backの前にreserveすりゃ良いだろ」
>>449「push_backの前に一々reserve、ダメ絶対」
>>452「実装によっては遅くなるからといって一概に駄目なんて馬鹿げてる。例外安全の方が大事。」
>>460「つまり規格に書いてない例外は無視すりゃ良いって事だな!」
>>461「メモリ不足で落ちるとか商用でもよくあるから気にしなくても良いんじゃね?」
>>470「メモリ不足の対応は難しいもんな」
>>471「んなこたーない。メモリ不足で落ちる前にPostMessageなんかのAPIが失敗し始めるからそれを検出すればおk」
ここからPostMessageがメモリ不足でコケるかどうかという話になり、
リファレンス上にはメモリ不足に関する記述が無いんだがって話が出てきて

お前らプログラマなら実際に動かして試せよ・・・・・・
俺は手元にあらゆるソフトがメモリ不足でコケるような環境にしても良いマシンが無いからやらないけど。

623 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 17:49:36.27 ID:3YTkrGr2.net]
>>622
その中で俺の発言は>>460だけなのだが
日本語が読めなかったのか?

624 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 17:53:09.04 ID:r+XipyqS.net]
『低メモリ状況ではPostMessageに限らず多くのAPIが失敗する可能性がある』
みたいな当たり前のことに何故かしつこくケチを付け人格攻撃まで始めるキチガイ
というのは不思議なことにこの社会には少なからず実在します
真面目な人はこのタイプには十分に注意してくださいね
もっとも、ここでそれをやってるクズはゴミ社会すらから爪弾きにされたようなタイプでしょうがw

625 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 17:53:50.89 ID:chyZ04S/.net]
「なるほどなるほど例外を出すって書かれて無ければ出さないもんだと思い込むんですね」
って読んだんだけど間違ってた?

# 悪いのは目ではなく頭の方です



626 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 17:59:08.81 ID:R5nKPKgb.net]
>議論で勝てそうに無くなったら訳の分からない人格攻撃に走るという行為はド低能にありがちな典型的なもの

あーはいはい、

>このクソバカ
>この低能シッタカくん
>こういう当たり前の主張にしつこくケチつけなきゃいられないようなタイプのクズ
>現実の社会から干されたどうしようもないゴミクズだろうが
>お前ら共には生きる権利はない

>しつこくケチを付け人格攻撃まで始めるキチガイ ← New
>低脳どもとの会話 ← New
>ゴミクズ有害低能くんども ← New
>それをやってるクズはゴミ社会すらから爪弾きにされたようなタイプ ← New

↑のことですね

627 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 18:14:00.19 ID:vxNioHuU.net]
codepad.org/NOUfjFJYの実行結果
1816 28 9999 Not enough quota is available to process this command.

APIの返り値確認しても、エラーコードを取得しないと意味がないぞ。中学生。
処刑プログラムか楽しみだなあ。

628 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 18:47:47.05 ID:rWlIZ3EB.net]
メモリ不足でエラーになったと宣(のたま)う奴に対して
メモリ不足と関係無いエラーを起こすとんちんかんなプログラムを見せて、
どうすると人はここまで馬鹿になれるのだろうか

629 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 18:54:09.21 ID:vxNioHuU.net]
>>628
特別に教えてやろう。(爆笑)

> メモリ不足と関係無いエラーを起こすとんちんかんなプログラムを見せて、
VirtualAllocって知ってる?

> newとかmallocが失敗するようになる前にそうなる。
アプリのメモリ管理とuser32のメモリ管理を混同してるようだから、知らなくても無理はないか。

処刑プログラム待ってるよ。

630 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 19:02:18.97 ID:8QEa0xty.net]
超絶忙しいくせに丸一日レスし続ける時間はあったみたいだな
なんとも不可解な話だ

631 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 19:23:27.23 ID:WJf9jt/h.net]
>>604
> この状況なんだから「メモリ不足エラーというリファレンス上許された挙動があり得ないと言うならそれを証明しろ」

>>613
> 『低メモリ状況ではPostMessageに限らず多くのAPIが失敗する可能性がある』
> まずこの当たり前の主張が誤りであることを証明しろよ

低脳にありがちの悪魔の証明
PostMessage のエラーコードと回避方法書くだけでいいのに
何故かやらない
どうみても妄想でしょ

632 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 19:23:30.50 ID:UQTXGuAz.net]
うむ
実に香ばしい

633 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 19:32:15.69 ID:rWlIZ3EB.net]
仕様上あり得るとされるものを証明する必要は無い
根拠も無く仕様を否定しておいて、悪魔の証明なので根拠を出せないとか
ここまで頭が悪いと生きているのも辛いだろうな

リファレンス「メモリ不足エラーはあり得る」
 ↓
>>509「確かに俺はかつて見た」
 ↓
馬鹿「あり得ない」「証拠を出せ!」「無いことを証明するのは悪魔の証明だ!」

634 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 19:33:41.27 ID:vxNioHuU.net]
>>622
> リファレンス上にはメモリ不足に関する記述が無いんだがって話が出てきて
・PostMessageの動作はMSG構造体をキューに追加して、なんらかの方法で通知
・PostMessageは高速に動作しなけらばならない
・MSG構造体のサイズは高々28バイトである
・通知プリミティブに何を使ってるかわからないけど、メモリのアロケートは不要
これらから、PostMessageのつど、メモリを動的に確保してるはずがないと推測できる

じゃ、なんでFAILするかというとリファレンスにのってるERROR_NOT_ENOUGH_QUOTAが最有力
ID:rWlIZ3EBはPostMessageがFAILした事を観測して、おバカな結論にたどり着き、なにをやってるかわからないクソアプリを作ってしまったでゴザル

不正なhWndを渡せば別のエラーが発生するだろうけど、あまりに初歩的なので除外。
でもID:rWlIZ3EBはそれすら可能にする無能レベル

635 名前:デフォルトの名無しさん [2016/02/11(木) 19:37:09.82 ID:vxNioHuU.net]
>>596
> 低メモリ状況だからといってPostMessageがエラーを返すことがないと証明したいなら
> その証明プログラムを書くなんて簡単な事だよ
> まずそれをやれよ
やってあげたのに、プログラムを読めなかったでゴザルの巻



636 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2016/02/11(木) 19:53:16.50 ID:RYWEZJ3R.net]
:-)

_ _ _ _ _ (切り取り線) _ _ _ _ _
ここから下は二月号のおまけだよ!

637 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 19:54:52.75 ID:99mWF8FH.net]
最近だとむしろ新鮮だな、ここまでのバカは

638 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 19:55:03.32 ID:chyZ04S/.net]
>>634
俺もPostMessageがメモリを動的に確保するなんて話は信じられん
が、実際にそうなったと言ってるのだからそういう夢でも見たんだろう。

>>627
4MB単位じゃなくて、もうちょっと細かい単位で確保しても同じ結果になるよね?
ページの粒度はIntel系なら4KBだと思うんだけど

誰かWindowsをGPLにしてくれ。読みたい時に読むから。

639 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 19:56:07.63 ID:chyZ04S/.net]
6が抜けた

640 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 20:04:24.71 ID:vxNioHuU.net]
無能ID:r+XipyqSは証拠出されて逃亡済みだったか、ID:rWlIZ3EBは触っちゃいけないアスペの方だった。
まあ、無能とアスペ、どっちも社会の役に立たないクズなのででうでもいいけど。

ちなみにXp64で32bitアプリとしてコンパイルしたのを実行したら
1816 27 10000 unknown error
2G弱でVirtualAllocが失敗するのはアプリのメモリ空間の制限だね
念のために言っとくけど、user32はアプリのメモリ空間で動作してるので、
「システム全体のメモリが不足する状況と違う」とかおバカな事を言いださないように

641 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 20:23:57.41 ID:vxNioHuU.net]
>>638
みたのはPostMessageがエラーになる事だけだよ。
> さあもう10年以上もことで何のエラーだったかは覚えてないけど
とか言ってるけど、エラーコード取得したならそういう印象的なエラーは憶えている、
実際無能が服を着て歩いてるID:rWlIZ3EBでもエラー自体は憶えてたし。

エラーコードまで取得してなかったんだろうな。これが合理的な説明。

642 名前:デフォルトの名無しさん [2016/02/11(木) 20:25:39.69 ID:IhmK9YPs.net]
sendmessage関数の使い方について教えて下さい。
自作システムからとあるシステムをsendmessage関数を使用して自動操作したいと考えています。
環境はVisualStudioのC++系です。

質問@
sendmessage関数にて「ctrl + A」を送信するコードをご教授下さい。

現状以下になるか?と想定しています。
SendMessage(wh , WM_KEYDOWN , VK_CONTROL , 0);
SendMessage(wh , WM_KEYDOWN , *Aに相当する何か* , 0);
SendMessage(wh, WM_KEYUP, VK_CONTROL, 0);
SendMessage(wh, WM_KEYUP, *Aに相当する何か*, 0);

*Aに相当する何か*を教えて下さい。
また*Aに相当する何か*のコードを調べる方法も教えて下さい。
そもそもこのコーディングであっていますか?

質問Aその他の自走操作関数について
SendMessage、PostMessage 以外に自動メッセージを送信する関数はありますか?

643 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 20:49:05.18 ID:vxNioHuU.net]
誤 実際無能が服を着て歩いてるID:rWlIZ3EBでもエラー自体は憶えてたし。
正 実際無能が服を着て歩いてるID:r+XipyqSでもエラー自体は憶えてたし。

644 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 20:49:36.44 ID:WJf9jt/h.net]
>>641
> > さあもう10年以上もことで何のエラーだったかは覚えてないけど
> とか言ってるけど、エラーコード取得したならそういう印象的なエラーは憶えている
そもそもソースがあるらしい(>>595 で口走ってる)ので、まともなプログラマーならエラーコード見て回避策を講じてるはず
って >>602 で指摘したら、ガン無視 w
PostMessage がエラーになったから適当にメモリー解放したらたまたまうまくいった
⇒ 俺スゲー発見しちゃった!!
ってとこじゃね?

645 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 21:05:40.00 ID:vxNioHuU.net]
>>638
もう一個根拠追加
・メッセージキューは固定長である

これらの事実からメッセージキューはMSG構造体のアレイだと思われる
28バイト*10000で高々280Kバイト、へみたいなもんだね
アレイならERROR_NOT_ENOUGH_MEMORYなんて発生するはずないね



646 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 21:11:11.48 ID:WJf9jt/h.net]
>>642
とりあえずこの辺りを見てみて
m.chiebukuro.yahoo.co.jp/detail/q1047081310

647 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 21:27:36.84 ID:rWlIZ3EB.net]
駄目だ>>615の「もうそろそろチョン認定してくれてもいんだぜw」がじわじわ来る
ブロント級の迷言

648 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 21:44:18.34 ID:r+XipyqS.net]
>>644
やれやれどうしようもない馬鹿揃いだな
こんなバカだから一日中張り付いてる暇があるんだな
>まともなプログラマーならエラーコード見て回避策
お前みたいな低能に言われなくても回避策は講じたよ
こういう状況では回避策なんてないという回避策だけどな
いい加減、自分が関わったことのない、これからも一生関わることのないような
事柄に知ったか発言するのは止めろ見苦しいぞ超絶低能

649 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 21:48:08.11 ID:vxNioHuU.net]
>>648

> 低メモリ状況だからといってPostMessageがエラーを返すことがないと証明したいなら
> その証明プログラムを書くなんて簡単な事だよ
> まずそれをやれよ
やってあげたけど、プログラム読めませんかあ?

650 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 21:52:48.88 ID:r+XipyqS.net]
>>638
>俺もPostMessageがメモリを動的に確保するなんて話は信じられん
俺だって最初はビックリしたよ
でも低メモリ状況ではそういうことがあるというか、そもそも低メモリ下でAPIが
エラーを返しても誰も文句は言えないはずなのだが?
Windows7以降ではPostMessageの挙動は変わってるかもしれないけどね
気になるなら自分で試してみれば?極限的なリソース不足の時の
APIの挙動の詳細なんて再確認してやる暇なんてないし

651 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:00:10.03 ID:r+XipyqS.net]
>>649
>やってあげたけど、プログラム読めませんかあ?
まさか>>627のことかw
> while (PostMessage(hWnd, WM_NULL, 0, 0))
VirtualAllocで6メガづつ確保するようなコードさらしてこの状況の確認になると思ってるのかwww

652 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:05:31.98 ID:vxNioHuU.net]
7で変わったかとか言い出したぞ。爆笑
xp64でもおなじ動作という事実には目をつぶるらしい

653 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:05:39.02 ID:EuRhj+pR.net]
SendMessageだと受理されなくてPostMessageだと受理される場合があるけどなんでなんだろうか

654 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:06:13.06 ID:rWlIZ3EB.net]
プログラムは読んだが何の証明にもなっていないので
「論理的思考が出来ない低能なんだろう」
ということを再確認しただけだったな

655 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:09:15.19 ID:r+XipyqS.net]
>>652
変わったかもしれないだ
確認なんてしてねーよ話を捻じ曲げるな卑怯者



656 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:10:17.25 ID:WJf9jt/h.net]
>>648
もう一回書くね w

>>602
> エラーコードも書けない
> 回避方法も書けない
>
> ネタ決定でしょ

657 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:12:35.67 ID:vxNioHuU.net]
>>651
思ってるよ
user32はkernel32のGlobalAlloc,LocalAlloc
ntdllのRtlAllocateHeapしか使っていない。
VirtualAllocがFAILする状況を作り出せば、どれを使っていても同じ事

ゴブリンには理解出来ないらしいな

658 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:14:28.08 ID:r+XipyqS.net]
6メガじゃなくて64メガだった
こんなバカの相手をしてる俺って

659 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:20:44.44 ID:vxNioHuU.net]
そこまでいうなら確認コードかいてみせろよ。 実行はしてやるから。

> 低メモリ状況だからといってPostMessageがエラーを返すことがないと証明したいなら
> その証明プログラムを書くなんて簡単な事だよ
簡単な事なんだろ。

660 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:25:20.13 ID:r+XipyqS.net]
だいたい>>627のコードはVCじゃコンパイルさえ出来ないし
GCC拡張だっけかこういうの
> WNDCLASS wclass = {
> .style = CS_HREDRAW | CS_VREDRAW,
まずはお前が試した環境(OS、コンパイラ)を書けよ
64メガブロックごとのVirtualAllocで俺が言ってるような現象が起こるわけないけどな

てか、こういう規格外コード書くなよ

661 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:26:47.70 ID:rWlIZ3EB.net]
それはですね
このスレと関係無い別の言語なんです

662 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:28:40.57 ID:vxNioHuU.net]
Xp64で64bitアプリで実行 (ページファイル枯渇のメッセージがシステムトレイに出た)
1816 60 10000 Not enough quota is available to process this command.

やはりERROR_NOT_ENOUGH_MEMORYは出ませんなあ
出るわけないけど

663 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:36:26.67 ID:r+XipyqS.net]
試したいならな>>627みたいなアプローチじゃだめだ
プログラムを2作って1つはメモリをバカみたく確保しまくるやつ
それも64メガ固定とかじゃなくてランダムにもっと小さいサイズの
ブロックを確保したり解放したりリークしたりする

もう一つは普通のシンプルなWindowsアプリで定期的(常識的なサイクルの範囲で)
にPostMessageを行う
間違っても
> while (PostMessage(hWnd, WM_NULL, 0, 0))
はやっちゃだめだぞ

664 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:38:12.36 ID:vxNioHuU.net]
>>660
> GCC拡張だっけかこういうの
C99だよ。知らないの? ぷぷっ VS2012から使えるんじゃないかな。
2012はもう捨てたからあやふやだけど、2013では使える。

ゴブリンはCとC++の区別がつけられないようだ
おかしなレイヤが挟まるとイヤだから、直に叩けるCで確認するに決まってるだろ

665 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:41:11.32 ID:vxNioHuU.net]
>>663
それがuser32のPostMessageにどのように影響を及ぼすんだ?
user32は別プロセスからは完全に切り離されてるんだぞ。Win16じゃあるまいし。
別プロセスの影響を受けるのは「VirtualAllocでのメモリ確保」



666 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:41:26.83 ID:r+XipyqS.net]
は?C99?知らんかったわ
よっぽどの事がなければCなんてもう使わないし
てかここC++スレじゃなかったっけ?

667 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:43:37.14 ID:ZvFHDsOW.net]
まだやってたのか?
今度は本質と関係ない攻撃までして本当必死だなお前はw
ID:rWlIZ3EBも早く証明しろよできるんだろ?

668 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:44:41.23 ID:Evsn43pT.net]
           / ̄\
           |    |
           \_/
             | __
            ┴´   ``ヽ   
          /::::::::::|::::::    `ヽ  てか、こういう規格外コード書くなよ

         /:::\::::::::<● >   `ヽ  
    ((   / <●>::::::::::⌒      )   
        |  ⌒(_人__)       ノ | |  
        ヽ    )vvノ:      / ノノ
          ヽ (__ン       人
         人           \
        /

669 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:47:27.18 ID:rWlIZ3EB.net]
>>667
はて何か証明しないといけないことが有っただろうか?

ちなみにC99 designated initializerはVisual C++ 2013からだな

670 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:47:40.34 ID:r+XipyqS.net]
なんとC++には「おかしなレイヤが挟まる」とか信じてるオカルト野郎だったか
>>665
64メガ単位のVirtualAllocじゃ俺の言ってる現象の確認になんてならないということは理解したか?
それにこれwwwは直したか
> while (PostMessage(hWnd, WM_NULL, 0, 0))

671 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:49:15.63 ID:cll589HH.net]
プラットフォームの知識なんてどうでもいいじゃん♪

672 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 22:57:33.08 ID:rWlIZ3EB.net]
おかしなレイヤはともかく、C++スレで「Cに決まってるだろ」の後出しはマヌケ過ぎる

673 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 23:00:37.18 ID:vxNioHuU.net]
>>663
> プログラムを2作って1つはメモリをバカみたく確保しまくるやつ
> それも64メガ固定とかじゃなくてランダムにもっと小さいサイズの
> ブロックを確保したり解放したりリークしたりする
このバカはメモリ管理が階層化されている事を知らないのだろうか?
Win32サブシステムではメモリ管理はkernel32が担当し、ntdllから
VirtualAllocで切り出したメモリブロックを小分けにしてアプリに
渡すが、kernel32はアプリのプロセス空間にロードされているので、
> それも64メガ固定とかじゃなくてランダムにもっと小さいサイズの
> ブロックを確保したり解放したりリークしたりする
こんな事しても他のプロセスにはなんら影響を与えない。

はあ、こんな初歩的な事すら知らないとは。絶句するしかないな。

674 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 23:06:42.15 ID:vxNioHuU.net]
>>666
>よっぽどの事がなければCなんてもう使わないし
> newとかmallocが失敗するようになる前にそうなる。
mallocをC++でも使うのか? そりゃ使えるけど… ぷぷぷっ

>>672
> おかしなレイヤはともかく、C++スレで「Cに決まってるだろ」の後出しはマヌケ過ぎる
アスペは引っ込んでいようね。

codepad.org/NOUfjFJY
C, pasted 4 hours ago:

675 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 23:08:59.56 ID:rWlIZ3EB.net]
>>674
知ってるぞ。コッソリ言語をCにしてたんだろ
まさにアスペの典型的行動だよな



676 名前:デフォルトの名無しさん [2016/02/11(木) 23:11:08.81 ID:IhmK9YPs.net]
sendmessage関数の使い方について教えて下さい。
自作システムからとあるシステムをsendmessage関数を使用して自動操作したいと考えています。
環境はVisualStudioのC++系です。

質問@
sendmessage関数にて「ctrl + A」を送信するコードをご教授下さい。

現状以下になるか?と想定しています。
SendMessage(wh , WM_KEYDOWN , VK_CONTROL , 0);
SendMessage(wh , WM_KEYDOWN , *Aに相当する何か* , 0);
SendMessage(wh, WM_KEYUP, VK_CONTROL, 0);
SendMessage(wh, WM_KEYUP, *Aに相当する何か*, 0);

*Aに相当する何か*を教えて下さい。
また*Aに相当する何か*のコードを調べる方法も教えて下さい。
そもそもこのコーディングであっていますか?

質問Aその他の自走操作関数について
SendMessage、PostMessage 以外に自動メッセージを送信する関数はありますか?

677 名前:デフォルトの名無しさん mailto:sage [2016/02/11(木) 23:16:23.86 ID:vxNioHuU.net]
>>663
既にヒントは出してるのに
> プログラムを2作って1つはメモリをバカみたく確保しまくるやつ
> それも64メガ固定とかじゃなくてランダムにもっと小さいサイズの
> ブロックを確保したり解放したりリークしたりする
32bitアプリじゃどんなに頑張っても2G弱しかメモリ取れなくて、
お前のいってる状況にはならないわけだ。
> XPだったと思うけどもしかしたらWindows2000だったかも知れん
と言ってるわけなので、普及してなかったXp64じゃないだろうし。

> もう一つは普通のシンプルなWindowsアプリで定期的(常識的なサイクルの範囲で)
> にPostMessageを行う
> 間違っても
> > while (PostMessage(hWnd, WM_NULL, 0, 0))
> はやっちゃだめだぞ
これも合理的な意味がない。

ゴブリンなみの知能しかないらしいな






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

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

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