乙
__,.. -一'´ ∠:.:{:. .:.:.. .:.{:.:. .:. ヽ '
>>1 乙であります!
. _,. <{ { 、__ノ ´/:人:.:.:.{:.:.:.:l\:.:.!:.:. ハ
<):::::::::ヘ∨-‐一ァ‐:'´.:./<_\{ \|_斗∧:.} :.:|: '.
/:::::::::::::::::::::::ム.〉 / ハ:.从ィ==ミ ==ミW:ハj:. │ _/⌒丶 ー:- 、
/:::::::::::::::::::xー'´ / :.:.:/:.:| | | ′ | |│}/ :.!.: | -く/__ : : `ヽ: : : : : :\
{::::::::::::::::/:ノ \ /:./ :.{: 八| │__ | |│; :|.: │ /:/´ ノ : : : : : : : : ヽ: : '. であります!
. \:::::::::::/ :::::::::丶、_{:八.:.:.:.:.:.:..\│ | i/:/l .:.:.:. l. // ∠: : : : : : : : : : : ': : :i
\::::::::::::::::::::::::::::::`^Y⌒j八.:.:.|:_\__.. <|:/ :|/ :.:j:ノ _/ ノ , イ:.{ : : : /{.: : : : : : ! : |
`丶、:::::::::::::::::::::::::i:::::::::::::\l::::ヘ7丶_ _厶イ.:.:/j:./ イ){ {_ -イ: /ト八: :V/ヽ.: : : :│: |
`丶、:::::::::::::丶::i ::::::::::::::::::::\ /不l トノ∠._'´/::::::::::ヘY: {: :{:.リ─ \{──}: :/: :| :│
`丶、::::: j:::::::::::::::::::::::::〃爪|メ、:::::::::∧::::::::::::/ ∨|ヽト{ ' 厶: : :リ :│
\::::::::::::::::::::::::::《{_>、__》:::::V::::}::::::: '´::`丶/_: l:个 、 ─ /: :./: : :八
∨:::::::::::::::::::::::/二 「 :::::::::Y::ヽ、::::::::::::::::::: `ヘ: : : |>t‐≦7: : 厶、 : : : ヽ
∨:、:::::::::::::::::{─ i :::::::::::}::::| `丶:::::::::::::Vヘ: : |_レ不 _/: :./:::::/ヽ: : : : \
'.:::\ :::::::::::{入 Vヘ::::ノ::::::|. /::`丶、 _∧: |《_小./ : /:::::/::::::}: : : : : : 丶
。 ゚ | i ゜ 。i 。 ゚l 。 i ┼┼`` 。 ゜i ゚ i ! | ゜ i / ア ア ア ア ア ア ア ア ア ───‐─ ─ i l i ! ゚ ゚ 。 ゜ i ゜ i | ゜ i | ゜ i l ゜ i 。 i l i l | l ゚ ;゜ ゜ : ; ; i l l ! : ゜ i ゚ i 、i;,| i, ゚,゜ ゜ i l ゚; l 。i | 。i l l ゜;/ ̄u ̄;j\。´ i ゚ | ! ゜ 。 .| i i :。/ :j :::::\:::/\;゚ !゜ ゜ i l | ゜ l ゜ ゚ 。゜ i / u 。<一>:::::<ー>。 ! | | i ゜ | |:j ° .:::。゚~(__人__)~゚j 目覚ましでつ。教えてください。お願いしまつ |。 ! i ! \、 u ;゜.` ⌒´,;/゜ ゜ i l ゜ i l ! l 。i /゚:j⌒ヽ゚ '"'"´(;゚ 。 ! ゜ 。i 。 ゚: ! ゚ l / ,_ \ \/\ \゜ ! ゜ i ゚ 、i;, 、|; 、i;, 。 ゜ ;゚ 、i;,と___)_ヽ_つ_;_ヾ_つ.;._ 。 l 。i ゜ ;゚ 、i;, ゜ ;゚ 、i;,
目覚ましと時計
/ ̄ ̄\ / _ノ \ | ( ●)(●) | (__人__) | ` ⌒´ノ 最後に何か質問はありますか? | } ヽ } ヽ、.,__ __ノ _, 、 -― ''"::l:::::::\ー-..,ノ,、.゙,i 、 /;;;;;;::゙:':、::::::::::::|_:::;、>、_ l|||||゙!:゙、-、_ 丿;;;;;;;;;;;:::::i::::::::::::::/:::::::\゙'' ゙||i l\>::::゙'ー、 . i;;;;;;;;;;;;;;;;;;;;;;|::::::::::::::\::::::::::\ .||||i|::::ヽ::::::|:::! /;;;;;;;;;;;;;;;;;;;;;;;;![面接官 ]\:::::::::ヽ|||||:::::/::::::::i:::| ;;;;;;;;;;;;;;;;;;;;;;;;;;|;;;;:::::::::::::::::::::::\:::::゙、|||:::/::::::::::|::: ____ / \ / ─ ─\ / ,(●) (●)、\ | (__人__) | パンフレットに「一部上場」と書いてありますが、 \ ` ⌒´ / 全部上場するのはいつ頃でしょうか? ,,.....イ.ヽヽ、___ ーーノ゙-、. : | '; \_____ ノ.| ヽ i | \/゙(__)\,| i | > ヽ. ハ | ||
拡張ペンを使って一点鎖線の太さ1以上のものを利用するとシャギーがかかったようにトゲトゲしてるんですが AAをかけるみたいにしてトゲトゲがないようにできますかね?
>>14 こんなつまんないネタ貼りまくって寒い奴だなお前
一度ウケタギャグを何度も繰り返すジジイみたい
ジジイなのだろう。
ジジイの大きな目覚ましと時計
18 :
デフォルトの名無しさん :2008/12/15(月) 10:11:44
アンチは自分で実装しないと無理
アンチ(笑) 知らないならレスしないでください。ウザイだけです。
↑話を理解していないバカ
>>20 知らないならレスしないでください。ウザイだけです。
そんな感じで新スレもGo!
23 :
デフォルトの名無しさん :2008/12/15(月) 11:28:10
>>13 GetGlyphOutlineを使う方法とGDI+を使う方法がある。
>>23 ザ・話を理解していないバカ
とでも言えばいいか
>>24 知らないならレスすんなハゲ。ウザイだけなんだよ市ね
27 :
デフォルトの名無しさん :2008/12/15(月) 12:43:26
ペンの話をしてるのにフォントの話と勘違いして返答してる馬鹿がいるね どうすればそんな勘違いができるんだろう
29 :
デフォルトの名無しさん :2008/12/15(月) 13:35:56
描画する矩形の三倍のサイズのビットマップを用意する。 線の太さを三倍にして線を描く。 SetStretchModeでHALFTONEを指定。 StretchBltで三分の一に縮小して元の矩形に戻す。 これじゃ線の太さだけ矩形からはみ出るか。。。
男ならやっぱDIBに直打ちだよな
女なので遠慮します
男ならやっぱディスプレイに直書きだよな
指定したBCDをファイルの中から検索したいのですが、 簡単な方法が分かりません。 検索したい場所はファイルの先頭から16バイト毎の先頭2バイトです。 教えてください。
まず、自分で面倒だと思ってる方法を晒してみた方がレスしやすいと思うぞ。 面倒に見えるけどそれが一番簡単、ってオチも結構ある。
>>36 ×簡単な方法が分かりません。
○方法が全く分かりません。
お願いします
ファイルを開いて データを読み込んで 対象のデータか比較する
>>36 さん
ReadFile()で2バイト取得し、比較し同じだったらforループから抜ける。
同じじゃなかったらSetFilePointer()で14バイト進めるの繰り返しでいいんでしょうか?
あと、見つからなかった場合forループから抜けたいのですが
条件式がどう書いていいのかがわかりません。
回答よろしくお願いします。
16バイトずつ読んでいけばいいじゃん
API以前のレベルだな 手近な初心者向けのスレへどうぞ
BCDは2進化10進数って事なら、数値化すればいいじゃない BCDを数値化するWin32APIは用意されていないから自分で組むしかないけど簡単でしょ
>>39 do
読み込みとか
eofのチェック
until 一致条件
でいいんじゃねーの
っていうか何がAPI?
>>40 さん
あ、そうですね。
期限が近くて、あんまり考える時間がないのですみません。
進めるのは14バイトじゃないのか。 16バイトの塊の先頭2バイトは読んじゃうからとんでるんじゃ。
>>45 APIを使うか使わないかではなく、お前の質問内容が初歩の初歩だということ
まあそれすらも理解できないからここに書いたんだろうけど
>47 40の話なら、16バイト読んで、読んだもののうち先頭の2バイト分だけで判定する、って意味だろう。
>>49 おっさんはそんなことも分からないの普通
だから、おっさん
日本語でおk
また粘着か
>>52 だから、おっさんなんだよ
どうした、おっさん
おっさんは手を挙げて! ノ
ノ
おっさん連呼してる奴もらあっという間におっさん 俺も気がついたら26・・・・ヤバイ
そっから早いしな
59 :
デフォルトの名無しさん :2008/12/15(月) 23:08:52
カーネルオブジェクトのハンドルの参照カウンタを知る事は可能ですか? デバッグ用途に使えたらいいなと思ってるのですが
61 :
デフォルトの名無しさん :2008/12/16(火) 00:18:03
Windowにjpeg表示したい訳だが、
>>61 OleLoadPictureとかGDI+とか
童貞を捨てたいんです
ノ
>>63 無理な質問しないでください。困るだけです。
SetCurrentDirectory("C:\Documents and Settings\〜"); みたいにしようと思ったんですが、LPCWSTRにしろって言われます。簡単なキャストの方法を教えてください
SetCurrentDirectory(TEXT("C:\Documents and Settings\〜"));
あれ?コンパイルできません 1>.\main.cpp(256) : warning C4129: 'D' : エスケープ シーケンスとして正しく認識されませんでした。 みたいにいわれます
言語環境スレとC初心者スレへどうぞ
最近スレ違いの質問が多すぎだが、C++/Win32のブームでも来てるのか?
エスケープシーケンスすら理解できないんじゃなあ。 下手に答えると下らない事でまた来るぞ。
printfのwin32api版は何なの?
テンプレは適当に読むこともあるけどそれに従う理由はない
答える理由も無いぜ。カス。
>>78 ・質問する前にMSDNライブラリやPlatformSDK、Google等で検索してはいけません。
・日本語版MSDN Online Libraryは完全です。英語版(
http://msdn2.microsoft.com/library/ )の利用反対。
・APIフックなど低俗な事をしたい場合は何も読まず質問しましょう。
・言語特有の問題やIDE、MFCやVCLなどの質問を大いにしましょう。
こうですね><
81 :
デフォルトの名無しさん :2008/12/16(火) 20:19:03
誰もが高確率で見ているのはスレタイぐらいという現実から目を背けた理想論は空しい
明らかにテンプレをまったく読んでいないヤツの質問に答えたいと思うかどうかと言われれば、それでも答えてやりたいというヤツは希少種だろうけどな。
次回からスレタイ変えればいいんじゃね 【質問する前に】Win32API質問箱 Build 75【ググレカス】
別にググれとまでは言わないけど 言語の制御構造上の問題とか、文法の話とかはどっか行ってよ
ああ、ギザギザかからないようにするには自分で線かかせるしかないのか・・・やるか
【おっさんの】Win32API質問箱 Build 75【談話室】
【おっさんと目覚ましの】Win32API質問箱 Build 75【憩いの談話室】
ほんとここって ただの罵り合いのためだけのスレだよな
だがそれは良くないな
>罵り合いのためだけ 語らいと言ってくれ
既出なら申し訳ありませんが、 自前のソフトで始めて「印刷設定」をVista機で操作したら動かない。 PageSetupDlg() が PDERROR_INITFAILURE を返してくる。 それは FAQ で、こうしろとかあったら教えて下さい。 尚、VC++6.0 非unicodeでのコンパイル版は Xp機で dialog が出ます。 この版でも Vista 機では dialog が出ません。
どうせ構造体の初期化忘れとかそのレベルだろ
97 :
93 :2008/12/17(水) 23:31:37
>>95 教えて頂きありがとうございます。
既にご紹介のサンプルと同じコードでやっており、VC++2008EE でのコンパイル
も通りますが、実行すると音なしです。PaintHook() を入れる例も試しました。
サンプルの PaintHook() は cast 不足のエラーが2箇所出ます。
厳密に違うところは、margin の単位指定が、自分のは mm でサンプルは inch
のみです。
質問させていただきます 途中でウィンドウプロシージャを変更する処理を書いているのですが prevWndProc→newWndProc と変更するとき、prevWndProcには変更したときに何かメッセージが送られるのでしょうか?
>>96 禿げ胴!
HWND hwnd;
psd.hwndOwner = hwnd;
Xpで動いたのは偶然hwndの値が0(NULL)だったとかで、コピペしたままで
hwndの値が不定なんじゃねぇの?
>>98 WM_WINDOWPROCCHANGING/WM_WINDOWPROCCHANGED
というのは嘘
101 :
デフォルトの名無しさん :2008/12/18(木) 06:17:59
APIの質問じゃなくて悪いんだけど、VSでF5押して実行すると実行後の終了処理に 時間がかかる。 ビルドが速いだけに残念です。 どこかのスレでこれを速くする方法を見た記憶があるが失念した。 知ってる人がいたら教えてください。 よろしく。
あなたと私は
スレ違い
VSの質問はVSのスレで聞いてくれ。 つーか、この程度聞く前に調べたほうが早いけど。 スタートアップの設定な。
>>99 レスをどうも。
自分は開いている文書の Edit control handle を渡していました。
念のため、これを NULL にして試しましたが、結果は同じでした。
てか、
>>97 で
>サンプルの PaintHook() は cast 不足のエラーが2箇所出ます。
これ、コンパイルエラー出たから試しもしなかったってことか?
コンパイルエラー取り除いて実行したら、Vistaで普通に表示されるんだけどw
日記書きたいだけの馬鹿はスルーでおk
コンパイルエラーを取り除く方法が分からない、に一票
答える気がないなら黙ってて
>>110 知らないならレスしないでください。ウザイだけです。
>>106 そのリンク先、ページセットアップダイアログで、Vistaだと
ダイアログは出るけど「プリンタの設定」ボタンが出ないってだけじゃないか。
>>108 cast つけてコンパイルしました。コード不足でも兎に角ダイアログが出て
くれれば思っていました。(サンプルがちょっと古いのに心配はあった)
>>113 その通りです。ただちょっと自分の早合点もあるのですが、VC++2008EE の
ページ設定で出てくるダイアログには、「プリンタ(p)...」のボタンがある
のです。VC++2008EE は自前で処理していると理解しました。
(その後調べたら、VS9.0→Common7→IDE→1041 にある msenvui.dll に
テンプレート定義がありました。)
ますます、Vista 本来の PageSetupDlg() は(VC++2008EE も使わないほど)
あやしいと思うようになりましたが、
>>108 さんのレスで思い直し始めている
ところです。
関係ないと思いますが、プリンタは PIXUS iP1500 です。キヤノンのペー
ジによれば Vista プリインストールのドライバでいいと言ってます。
VSというかMSOffice系はずっと前からコモンダイアログを自前で用意してる訳だが サンプルが古いだのVistaのAPIが悪いとか決め付ける前に自分で努力しろ
>>114 新規でプロジェクト起こして、単にPageSetupDlg出すだけのアプリかいてみたら?
マジキチwwwww萌え絵つけただけでそれだけ売れるとかボロイ商売だな、オイwww
119 :
デフォルトの名無しさん :2008/12/18(木) 21:46:23
>>119 だったらそのツールを使ってればいいだろ
>>118 普通同じ値段なら、萌え絵あるの買うだろ
dependency walkerとかで覗いて見たら良いんじゃないの? APIで読み込んでるなら出るでしょ
その手のツールは大抵Sysinternalsに転がってるし、わざわざ自分で作るまでも無いだろ 自分で作りたけりゃntoskrnlの逆アセでもしてろ
124 :
119 :2008/12/18(木) 22:03:56
いや純粋に名前の一覧を見たいだけならここで聞かないですが・・・ もう少し自分で調べて出直します 失礼しました
なんだっけ? 列挙して、プロセスID で付け合わせるんだったかな?
またチートやマルウェアの類か
へへへへェ
Shut up your mouth if you don't know. It's just annoying.
>>129 Si no sabe, no debe contestar. Simplemente una molestia.
ここで難しい質問しても誰も判らないから意味無いのにw
判るけどお前の態度がキモイから教えない
俺も遂に24インチに変えた 世界が変わった・・・プログラム用なら1200にすべきだった・・・
1200インチとか どんな豪邸に住んでんだ
そろそろ高DPIのディスプレイが一般に出てくるようになってほしい。
ぶっちゃけVGAで十分
お前にはな
VGAとかすげぇな 俺なんてQUXGA未満は受け付けない
>>138 3200×2400 すげぇぇぇ
てか、お前何屋なんだよ。
八百屋やってますがなにか?
暖かいレスに感謝。
>>115 去年からうまく行かなかったんで、去年もどこかで聞いたけど、Vista なんぞ
クソだから当てにすんな見たいなレスがあった。
1年たって情報も溜まったから、なんか分かったことあるかと思った。
Vista なんか使っているんか、カス みたいなレスがなくてよかった。
>>116 試してみます。
>>141 ↑カーネルオブジェクトとジョブオブジェクトの違いがわからない馬鹿
お前だってコーヒーの違いも分からないくせに
違いのわかる男
ネスカフェ・ゴールドブレンド
ネスカフェは香味焙煎が一番うまい
コーヒーの違いがわからない人はレスしないで下さい。
お前は100倍抽出缶コーヒーでも飲んでろ
別プロセスのウィンドウをサブクラス化するには?
>>151 コーヒーの違いがわからない人はレスしないで下さい。
>>151 CreateRemoteThreadかSetWindowsHookExでアタッチしてやる。
これでヒントは十分だろ。
>>153 DLL注入かフックってことか
サンクス
外部のアプリケーションに対して フォーム自体は表示したまま、タスクバーには表示させない といったことは可能でしょうか。OSはXP限定で構いません。 タスクバー内のToolWindow32のウィンドウハンドル取得して無理やり削除…? 解決策等ありましたらよろしくお願いします。
>>155 カレンダー系統のソフトがやっているので
可能であることは知っていますがやり方は知りません
むしろタスクバーって自分で登録しないとでないんじゃなかったっけ?
ああ、外部のアプリケーションかw そりゃ知らん無視してちょ
スタイル変えりゃ表示されない
160 :
156 :2008/12/20(土) 02:11:48
外部のウィンドウのスタイルをむりやりWS_EX_TOOLWINDOWにすればいいんじゃね
>>155 何を言ってるのかよくわからんがWS_EX_TOOLWINDOW?
WS_EX_TOOLWINDOWにきまってるだろjk
モニターブラックアウトする・・・もうだめも・・・
左クリックすると反応が返ってくるところの座標を得る方法ってありますか? 例えばデスクトップのアイコンとかブラウザのリンクとか、ソフトのボタンコントロールのところとか マウスポインタが近くのところにきたらその場所に移動するように補正したいんですが
純粋なダイアログボックス以外は、そういった情報がないから難しいと思う。 ただアクセシビリティに対応したプログラムの場合はそういった情報が存在するので可能。 音声認識で操作なんかはこれのインターフェイスを利用している。 .NET Frameworkの標準コントロールは対応している。 たぶんMSのプログラムはだいたい対応しているんじゃないかな。
反応ってなに
>>155 ITaskbarListを使って出来ないかな?
169 :
デフォルトの名無しさん :2008/12/20(土) 11:16:49
>>155 親ウィンドウを隠しウィンドウにすればOK
WS_EX_TOOLWINDOWつきの非表示ウインドウ作って、 それの子にすればいいんじゃないの?
171 :
155 :2008/12/20(土) 14:42:06
たくさんの回答ありがとうございます。 ・WS_EX_TOOLWINDOWに変える 対象のタイトルバー表示は変えたくないのです。 あらかじめ記述しておくべきでした、申し訳ない。 ・ITaskbarListを使う やはりその方法をとるべきなのでしょうか。 実はC#にて実装しようとしているので、メモリ等不完全な出来になりそうですが検討してみます。 できるのかとても不安ですが… 親ウィンドウを隠しウィンドウにするのは外部アプリでも可能なのでしょうか? 他にも何かありましたらお願いいたします。
MSG構造体のhwndメンバがNULLで飛んできたんだけど、これってどういうことですか?
>>172 PostThreadMessageでもされたんじゃね
174 :
155 :2008/12/20(土) 16:40:43
>>166 ありがとうやっぱり難しいのね
色々調べてきます
>>116 PAGESETUPDLG がうまく行かず質問していたものです。
出ましたネエ。感激です。
いろいろな設定を追加してもっと試します。有難うございました。
VC++2008EE で Win32プロジェクトを起こすと default でソースが出てきて
簡単なテストは楽ですね。今までは移植移植でこんなの初めてです。
GetPrivateProfileStringとかINI系の関数が全く動かないです。。。 何か心当たりありますか?
>>176 そんなの2008でなくても随分前からあっただろ
今まで何の開発環境使ってたんだ?
誰かCreateIconIndirectの成功例を見せてください・・・! どうしてもパラメータが間違っていますと出ます・。
わからないから聞かないで下さい
9xでうまくいってるけどNTでは動いてなくて放置してるコードならある
環境と失敗した例を出さないのはなんで?
サンプルコードから見つかってないんだろ多分
抽出したアイコンにショートカットのマークを付けるとかはどうやったらいいんでしょうか。
ショートカットのマークのみのアイコンを取得して合成する
>>184 こんな感じです・・・!!
ICONINFO info;
HICON icon;
info.fIcon=true;
info.xHotspot=0;
info.yHotspot=0;
BITMAPV5HEADER bi;
void *lpBits;
ZeroMemory(&bi,sizeof(BITMAPV5HEADER));
bi.bV5Size = sizeof(BITMAPV5HEADER);
bi.bV5Width = 16;
bi.bV5Height = 16;
bi.bV5Planes = 1;
bi.bV5BitCount = 32;
bi.bV5Compression = BI_BITFIELDS;
bi.bV5RedMask = 0x00FF0000;
bi.bV5GreenMask = 0x0000FF00;
bi.bV5BlueMask = 0x000000FF;
bi.bV5AlphaMask = 0xFF000000;
HDC hdc=::GetDC(NULL);
HBITMAP hBitmap = ::CreateDIBSection(hdc, (BITMAPINFO *)&bi, DIB_RGB_COLORS,(void **)&lpBits, NULL, (DWORD)0);
::ReleaseDC(NULL,hdc);
HBITMAP mono = ::CreateBitmap(16,16,1,1,NULL);
info.hbmMask = mono;
info.hbmColor = hBitmap;
icon=::CreateIconIndirect(&info);
::DeleteObject(hBitmap);
::DeleteObject(mono);
>>188 環境は?
とりあえず問題ないようだけど。
>>189 WinXP SP3 メモリもCPUも2Gくらい
普通に.icoをLoadImageで読み込んで設定する分には問題無しです・・・。
CreateIconIndirectでNULLが返ってきてGetLastError()で >パラメータが間違っていますと なの? そのままコピペしてVista64でVC++2008でコンパイルして成功するけど。
もしかしてLoadImageということと16x16というとこからスモールアイコンを使いたいのかな。 LoadIcon系は32x32の昔からのアイコンしか扱えないと思ったが。
CreateIconIndirectがBITMAPV5HEADERやBI_BITFIELDSに対応してないんじゃねーの?
CreateWindowで指定しないとあとから変更が利かないウィンドウスタイルってありますか?
とうめい
アイコンの人ですが、とりあえず生成確認しました・・・!! 皆様ありがとうございます。原因は作成したBitmapからサイズを取得した時に、大きさに変な値が 入っていたのが原因でした。 HBITMAP bitmap; BITMAP desc; ::GetObject(bitmap,sizeof(BITMAP),(LPVOID)&desc); これで関数は成功を返すが、bmWidthやbmHeightにデカイ値が入っている。この値を使ってたんです・・・。 何故そんな大きな値が入ってるのでしょうか・・・?
GetObjectが失敗してるんだろ 返値とLastErrorくらいチェックしろよ
>>197 いや、成功してるんです。返り値も24 == sizeof(BITMAP)でした。
またHBITMAPを別のHBITMAPのBitBlt等で変換転送したいんですが、HBITMAPからHDCを取得する方法はありますか?
HBITMAPからHDCを取得、なんて言ってるようでは何も分かってないみたいだな BitmapやDevice Contextの説明をMSDNで読んで勉強した方がいいと思う
お断りします
ね?ね? なんでofficeのアプリケーションは、ショートカットから実行ファイルのパスを取得すると アイコンの.exeパスを返すの?これじゃぁ起動できないじゃんカスガ
>>206 知らないならレスしないでください。ウザイだけです。
>>207 冬休みの糞餓鬼は宿題でもしてろ
クズが
>>208 ニートならレスしないでください。ウザイだけです。
>>209 冬休みの糞餓鬼は宿題でもしてろ
クズが
>>210 ニートならレスしないでください。ウザイだけです。
また目覚まし君がこんな時間まで一人で荒らしてるのかい
ActiveXってすごい難しそうなんですが、勉強する価値はありますか?
FireFoxではもともと非対応。 まぁそんなもん
>>178 考えてみれば 2008EE で新規プロジェクトを起こしたことはない。
リソース生成が便利な VC++6.0 で起こして持ってきていた。
今いじっているソフトも、見たらメニュー項目計が318個。
もともとは文書編集だったのが、今は画像主体の遊びに。
Express Editionにはリソースエディタないんだっけな
働いているなら勤務時間中にレスしないでください。無職になるだけですよ。
日曜と祝日の間だから休日に設定されたんだよ。
>>218 Win32プロジェクトで雛型作るくらいVC6でもできるわけだが
VC6すら使いこなしてなかったのね
メニュー項目が何百個とか、ソースコードが何万ステップとか、 聞かれてもいない自慢話を挟んでそれが凄いと思ってる人って実は大したこと無いよね
自分と同じだからこそ気づくんだよね
僕のはソースコード100行未満、メニューなんてないです でも、MP3再生できるんです コードはいつも、どっかからパクって来てます 凄いでしょ。
既にあるソフトに1秒でも時間使って恥ずかしくないのか? 所詮Windowsの中でしかないぞ
マイクロソフトはIntelに踊らされてるとでもいいたいのか
>>226 他のソフトは糞でしたから。
僕の作ったソフトが一番便利で使いやすいです
税金は、民間企業のITドカタが楽しく民主主義できてこそより多く回収できると思ってる みんな仲良くしろGDP上げろ。喧嘩するな^^
>>228 そうそう
自分の子供が一番可愛いって言うよね
個人的には無駄に詳細設定ができる関数は嫌い win32のフォント関連とかあんま好きじゃねぇ あんなに設定させるくせにその実ロクなできない上に面倒とか 作った奴のセンスが悪すぎる
少しでも使いやすく必至に電気信号0、1をラッピングしてるのに 作ろうと思って、ソフトが作れるのは当たり前だ。 ビデオのリモコンが操作出来ておばあちゃんにすごいって言われたのを思い出した。
>>218 に何かを気付かせようと必死だな
俺なら絶対スルーのに、お前ら・・・
マスターボリュームを操作するのに簡単な方法はありませんか? ほとんど例がない上にめちゃくちゃコード数多いんですが
コード量多いのが嫌ならAPIなんて使おうとするなよ
>>236 Win32APIでのプログラミングの場合基本的にお手軽ってのは無い
そういうのが欲しいなら.netでもやった方がお前の為になると思うぜ
カレー?
>>239 .netだけでマスターボリュームなんて操作できたか?
ミキサー系APIを叩く必要があると思うが。
>239はマスタボユームの操作にレスしてるんじゃなくて、簡単な方法、に突っ込んでるんだろ、明らかに
てか、.netで簡単に出来ることは大概Win32でも簡単に出来る むしろ.netだけで出来ないことをしようとするとAPI宣言や構造体を C#やVBで定義しないといけないので余計に面倒
まあ、ここまでをまとめると 知らないならレスしないでください。ウザイだけです。 ってことだな
知らないのはお前だけ
>>246 知らないならレスしないでください。ウザイだけです。
なにこのスレ・・・ SilverlightのせいでWEB製作者がばんばんアプリ作れるようになって歪んでんのか? どうせそのうちクリックするだけでソフトが作れるようになる 知ってようが知ってまいがどうでもいいな
大熱波が来たのか!?
簡易Timerクラスを作ろうと思うのですが、 class Timer{ HANDLE hthread; unsigned int id; unsigned int sleep; protected: Timer(unsigned int sleep):sleep(sleep){ hthread = _beginthreadex(NULL,0u,Timer::ThreadProc,this,0,&id); } virtual ~Thread(){::CloseHandle(hthread);} public: static unsigned __stdcall ThreadProc(LPVOID lpParameter){ Sleep(sleep); reinterpret_cast<Timer*>(lpParameter)->run(); return 0; } virtual void run() = 0; }; これを継承して class Tasc:public Timer{ public: Tasc(unsigned int sleep):Timer(unsigned int sleep){} void run(){ やりたいこと } }; 見たいにすれば良いですか?
Tasc・・・プ
引数がPSTRのAPIにchar* とか LPSTR とか渡しちゃいけないんでゆか?
Tascワロタ
コンストラクタで_beginthreadexなんて行儀悪すぎ せめて例外投げろよ
>>222 Win98 の頃はちょっとサイズの大きな画像を弄ると、リソース不足になった
りしたので、表示関係は自前で縮小などの処理を要したけど、OSも改良?さ
れて、そんなことも必要なくなった。マ間に合って来たってこと。
一方、今年は年賀状もワートパッドで文字だけのそっけないので済ませた。
写真や絵を入れる歳でもないだろうってんでね。凝り性の減退ってこと。
Sleepの64bit版みたいなのってありますか?長時間眠らせたいんですが。
SetWaitableTimerなら絶対時間を指定できるから、 好きなだけWaitForSingleObjectで眠っていられるよ。
25日間もSleepさせる用途ってなんだよ
俺も1000年後に起動する関数が作ってみたくなった
そんなに眠らせたら時計ズレちまってないか
???とかおかしいところとか適当に補完よろしく。 ■Person who has intention(意思(目標、目的)をもつもの) 街を風が吹き抜けていく。[広野紘] 風は冷たく時には立ち止まってしまいそうになるけれど。[宮村ミヤコ] ■Person who stands up again(再び立ち上がるもの) そういうときは、ゆっくりでもいいから進んでほしい。[堤恭介] いつか必ずたどり着けるから。[新藤景] ■It begins to move again(再び動き始める) 悲しいことがあっても大丈夫 手を伸ばせば、そこには誰かがいて。[麻生 すみれ] ぬくもりを分け合うことができるから。[泉 絵美???] ■Person who spins time(時をつむぐ(持続させる)もの) ひとりでは辛い道のりも、つないだ手を離さなければきっと乗り越えられる。[麻生レンジ] だから、あきらめないで。長い長い道の先には、幸せが待っている。 幸せが重なり合い、さらに大きな幸せに。[新藤千尋] ■Person who walks to the future(未来へと歩むもの) そして、いつの日か気づいてほしい。 あなたが歩いてきた道の途中に、いくつもの幸せがあったこと。[久瀬修一] ■It is a story of the "Will"(それは「意志」の物語) 忘れないで。あなたは一人ぼっちじゃない。 確かな足跡を刻み、季節を越え、空を見上げて[広野 凪] 翼がなくても、きっと行ける[火村 夕] いつか夢見た、[雨宮 優子] 光あふれる明日へと――[雨宮 優子+羽山ミズキ???] ■Two becomes one,and it through all eternity. (ふたつ(音羽、過去と未来、景と千尋、優子と夕???)はひとつに、そして永遠に )
Aプロセスのプロセスハンドルが破棄された後 Bプロセスを起動するとAプロセスと同じプロセスハンドル値が 使用(再利用)される事ってありえますか? また、そういう場合何を持ってAプロセスを認識させればいいのでしょうか? 例:ウィンドウハンドル値とプロセスハンドル値を比較など・・。
カーネルハンドル値は簡単に再利用されるよ だから「もうこれ以上必要無い」という状況になるまで破棄しないこと
271 :
269 :2008/12/23(火) 20:38:00
プロセスの生き死にを判定する為に GetExitCodeProcessを使おうとしたんですが、 ふとハンドル値の再利用の事に思い立って質問をしました。 ウィンドウハンドルを用いてプロセスID(スレッドIDも条件としていれてもいいかも)と プロセスハンドルが全て一致すればAプロセスという判定にしようかと思ったんですが、 そこまで気にしすぎる必要はないですかね。
プロセスのハンドルをCloseHandleしなければいいだろが
>>271 プロセスの生成破棄をなんかで検知できたと思う。
駄目っぽかったらフックでも汁。面倒になったら止めてしまえw
274 :
269 :2008/12/23(火) 20:48:37
>>272 例えばCプロセスでOpenProcessして取得したプロセスハンドルと
DプロセスでOpenProcessして取得したプロセスハンドルは一意な値ではないが、
Cプロセス、Dプロセス共に同じプロセスIDに紐付くプロセスの内部識別値に
なるという認識でいいのでしょうか?
OpenProcessがどうやってもできない状況があるんで、やってらんね〜ってなるよ
>>274 ハンドルがどういう物なのか理解してない気がする
グリニッチ標準時(GMT)の1970年 1月 1日の00:00:00 から現在までの経過時間をミリ秒レベルで取得する関数ってあります?
UTCじゃ駄目とか言い出すとなると電話して聞くしか無いんじゃない?
世界標準時(UTC)ってグリニッチ標準時(GMT)と同じ意味でおk?
283 :
269 :2008/12/23(火) 22:44:15
定義は違うけどPCで扱う上では同じものとして認識して良いはず
違う。 GMT は太陽の運行を平均化した平均太陽の運行に基づいた時刻。 UTC は原子時計を基準とした時刻。 現在はより正確な UTC が基準になってる。
286 :
269 :2008/12/23(火) 22:50:27
>>276 ハンドルについて詳しく解説してあるサイトや書籍があれば
教えていただけませんか?
RtlTimeToSecondsSince1970
>>285 マジで?
関数によってちがいってあるの?
COleDateTime使ってるけど・・・
290 :
269 :2008/12/23(火) 23:04:18
>>289 4版も5版も持ってたので、100回ぐらい読み直してきます(´・ω・`)
MDI子ウィンドウを作ると、親ウインドウのタイトルが タイトル - [子ウィンドウ] になるんだけどこれを無効にするにはどうしたらいいですか?
AdvancedWindowsの5版って4版持ってる人でも買うべき?
ならないある
>>288 たぶんそこらへんは作った人間が用語を混同しているだけのはず。
関西弁と大阪弁は違うという主張と似ている、というと怒られるけど。
関西弁と大阪弁は違うだろ 関西弁=大阪弁、京都弁、神戸弁、・・・ 大阪弁∈関西弁
>>298 関西弁に京都弁は入らないと思う、一介の関西人
ごめん選び間違えた、地域としての関西と近畿だったらどうだ? あるいは関東と首都圏の混同とか。こっちははっきりとした定義があるけど。
三重県・・・
福井は兵庫
アイコンの縁が黒くなるんですが、これは回避できないんでしょうか?
305 :
デフォルトの名無しさん :2008/12/24(水) 10:02:21
すいません、途中で投稿ボタン押してしまいました。 表示はツリービューに行っています。
マウスカーソルが動いて、ウィンドウからはみ出た時に 来るメッセージがありましたら教えてください。 デスクトップがウィンドウと考えれば、デスクトップに WM_MOUSEMOVEが来るかもとも考えられますが、 ウィンドウハンドルが分からないですし。
WM_MOUSELEAVE
>>306 TrackMouseEventで設定するとWM_MOUSELEAVEが来るようになる。
309 :
306 :2008/12/24(水) 15:52:09
自分の子でないウィンドウを閉じる関数って何だっけ? DestroyWindow()は関連しないのには作用しないよな
>>310 DestroyWindow
ただし他スレッドのウィンドウは破棄できない
またhookか
Hook You!!
紙の味噌汁だけどな
まだWMSYSCOMMAND/SC_CLOSEの方が安全なような
PostMessage(WM_CLOSE) ↓ 数秒待つ ↓ 対象プロセスがまだ終了していなければ 「強制終了しますか?」を出してTerminateProcess タスクマネージャはこうなってる
ウインドウのタイトルバーに最小化ボタンを付けないと、タスクバー上に表示されるタスクボタンを左クリックしても最小化できないんだけど 最小化ボタンなしでタスクボタン左クリックで最小できる方法、誰か教えて (´・ω・`)
Spy++でメッセージ監視すれば分かるかも
>>319 う〜ん、タスクボタン右クリックみたいにメッセージが飛んでくる訳ではないんだよね。。。
ウインドウのアクティブ化/非アクティブ化を調べて最小化させてるんだろうか、よく分からんです...orz
>>321 ども。上手くいきましたです ノ
最小化ボタンの有無がタスクボタンでの最小化に影響を与えるわけではないようですね。
でも、タイトルバーが付いてないウインドウとかでは駄目ですね、
こちらはクリッピングリージョンで非表示にしてしまうくらいしかないのかな。。。
てか、最小化ボタンが無いのに最小化したいってどういう状況なんだ? いわゆるスキンとかそういうのか?
何らかの理由で最小化ボタンは付けたくないけど(タイトルバーも消したいっぽいし)、 最小化できないとユーザーがさすがに不便だろうからその方法は用意しておきたい、ってことだと予想してみる。
普通は通知領域にアイコン表示したうえでSW_HIDEじゃないか? 今時、中途半端に最小化とかされても、そのなんだ・・・困る
Delphi製アプリのように、メインウィンドウとタスクバー上のウィンドウを別々にするとか。 連携が面倒そうだけど。
>>326 最小化するときにアニメーションしないバグがあるけどな
いつの話よ?Delphi 2007で修正済。まぁ実装はいささかトリッキーだとは思うけど。
ホントだ、最近のDelphiだと直ってる 正直これ直すの無理だと思ってたから内部でどういう処理してるのか気になる
2007年まで放置してたってのもある意味凄いなw
/* 最前面へ */ ThreadID1 = GetWindowThreadProcessId(GetForegroundWindow(), NULL); ThreadID2 = GetCurrentThreadId(); AttachThreadInput(ThreadID2, ThreadID1, TRUE); SetForegroundWindow(hDlg); AttachThreadInput(ThreadID2, ThreadID1, FALSE); BringWindowToTop(hDlg); /* 最前面維持 */ SetWindowPos(hDlg, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE|SWP_NOSIZE); とあるダイアログを最前面に表示するために 上記のようにしているのですが、このダイアログが 表示されているときに「デスクトップの表示」をすると ダイアログ上に描画している文字列が消えてしまいます。 この文字列はWM_PAINTで処理しているのですが 「デスクトップの表示」をしたときはWM_PAINTが 来ないのでしょうか? 何か対処方法はありますでしょうか?
AttachThreadInput(ThreadID2, ThreadID1, TRUE); SetForegroundWindow(hDlg); AttachThreadInput(ThreadID2, ThreadID1, FALSE); 未だにこんな下手なコード書く人がいるんだね
ていうか強引に最前面表示させる行儀悪いソフト作る人ってまだいるのか
334 :
331 :2008/12/25(木) 14:23:50
>>333 お客さんのどうしてもという要望なので仕方なしに
まあそのコードでは運用してからクレームが来るのは時間の問題
「ダイアログを最前面に出せ」なんてアホな要望する客なら尚更
ご愁傷様
>>331
たんに最前面に表示させるだけなら、Zオーダーを TOPMOSTにする方がいいと思うが。 一瞬だけTOPMOSTにして、すぐにNOTOPMOSTに するという方法もある。 これなら、フォーカスを奪わずに最前面に表示される。
SetWaitableTimer()の開始時間の指定で絶対時刻はUTC時間を使えとありますが、 これはどういうことでしょう?1601/1/1 0:0:0.000からの経過時間かと思ったんですが・・・
FILETIMEにUTCで指定すりゃ良いだけだろ
ローカル時刻で指定すんなってことかと。
340 :
318 :2008/12/25(木) 18:25:03
>>326 >メインウィンドウとタスクバー上のウィンドウを別々にするとか。
取りあえずその方法でそれっぽい動作が可能になりました♪
(うむ〜、こんな手があったとは。。。
まだいくつか問題はありますがまあ調整できそうです。ありがとうございました ノシ
cecile, il offre sa confiance et son amour.
Owned windowに関する質問です。 通常はオーナーウインドウが破棄されると、Ownedウインドウも一緒に破棄されますが、 他プロセスが作成したウインドウをオーナーにしているとオーナーだけ閉じてしまいます。 これを一緒に閉じるようにしたいんだけど、オーナーウインドウに対してポーリングするのと フックを仕掛ける以外で、何かスマートな方法はないですか? オーナー側のプログラムはいじれません。 Spy++でメッセージログを見た感じでは、特に何もメッセージは来ていませんでした。
オーナーウインドウを破棄する時に、Ownedウインドウに適当なメッセージを投げる。
MSDNによると、GetFullPathNameの引数lpFilePartの型ってLPTSTRのポインタになってるけど、 これってどう解釈したらいいのかな? 変数から返ったとき、この変数にはlpBufferで渡したバッファ内のアドレスが 入ることになるわけだから、普通に考えると「LPTSTRのポインタ」ではなく LPTSTRそのものでないとおかしい気がするんだけど……
[訂正] 変数から返ったとき ⇒ 関数から返ったとき
LPTSTRは文字列の先頭ポインタだからポインタそのものは受け取れない
>>349 冷静に考えたらそうだねw
実に初歩的な考え違いってわけか。
レベルが低すぎる
最近のパスの最大長っていくつになってるの? 256じゃねーだろ絶対
>>352 unicodeでMAX_PATH(=260)
理論上はそれ以上も可能だがExplorerが扱えない
4バイト? 260x4=1040っすか?
やれやれ・・・ 冬休みになって小学生がやって来たみたいだね
>>357 マジでわからん
解説頼む
とりあえず調べた感じだとユニコードって4バイトまであることがわかった
だから
>>356 だと思ったんだけど違うの?
わからないなら4096とっとけよ
いやいや64KBくらいは確保しといたほうが安全だぞ
実際1040以上くるから俺は2048を勧める
全角のよくわからん文字を連打してためしたから間違いない
>>363 バイト数ぅぅううううううううううううううううううううううううう!でいくら?
365 :
デフォルトの名無しさん :2008/12/27(土) 03:13:49
>>364 MAX_PATHって文字だけでバイト数答えられるやつが居たらエスパー認定するね俺は。
自分で気が済むだけ確保しとけばいいじゃん?
具体的にはFileDialogで流れ込んでくる文字列
Unicode 1文字4バイトってサロゲートペアのこと言ってるなら、 あれは2文字にカウントする。 だからUTF-16は1文字2バイト。 UTF-8は最大6バイトだったり4バイトだったり…
結合文字もあるだろ
369 :
デフォルトの名無しさん :2008/12/27(土) 12:35:18
ツリービューにドラッグドロップした際、カーソルの下にあるノードを取得するにはどうしたらいいんでしょうか?
>>368 知らないならレスしないでください。ウザイだけです。
>>372 いや、MFC知らなくても読めばHitTest関数使うんだなってなんとなく分かるだろ
>>372 ここまで応用が効かないヤツってどうやったら日本の教育で排出されるの?
日本ノ教育関係ナイ
>>374 ?オレ別に質問した人間でもないし興味もないが、せっかく挙げるのならもうちょっと適切なサンプル上げてやったらどうかと思ってな
またゆとり世代プログラマのご乱心か。
>>376 適切なサンプルがあったらそうするだろ常考・・・
もうだめだこのスレ
レスしないで下さい。ウザイだけです。
GetTimeZoneInformationでサマータイムの開始時刻は取得できるのですが、終了時刻もしくはサマータイムである時間 を取得するにはどうすれば良いですか?日付でなく時刻が知りたいのですが・・・。 それともサマータイムって一日のうち何時間てのが決まってるんでしょうか?
はぁ?
俺が知ってるサマータイムじゃない
>>383 特定の日に1時間戻して特定の日に1時間進めて終わりとちがうんか?
つまり年2回時間をいじると
な、なんだってーーーーーーーーーーーーーー ありがとうございました。ちなみに 10月3日2:00に始まって、3月3日2:00に終るとしたら、 開始時刻 <= サマータイム < 終了時刻 でいいんでしょうか?
意味gワカリマセン
サマータイムを理解してないのに何をするつもりなんだろ
仕事での客からの依頼、じゃない?
時刻まわりはたしかに複雑だからわからんでもないけどな 新人で簡単だと思って取り組んではじめにやられる課題だろ>時刻 サマータイム時刻の12時と通常時刻の12時とで 重複カウントされて死ぬシステムに幸アレ!
仕事なら先輩か上司に訊けよ
仕事じゃないけど。
仕事じゃないなら自分で調べろハゲ
それにしたってサマータイムが1日ごとに設定しなおすものだという 思い込みの状態でプログラム組むとかこいつ馬鹿じゃねーのw
ま、仕事ならこんな常識外れの人は真っ先にリストラでしょ
うるう秒がきます。
きますね。
こいやぁー
うるう秒の間、息を止めてないと流星ガスで死ぬらしいよ
タイヤのチューブに空気入れておこう
流星ガスでタイヤのゴムが爆発するらしいよ
バスガス爆発
バスガスバスハツ 噛んだ
getPixelが遅いんですけどどうしたらいいですか
イメージを自分の確保したメモリ内で管理する
GetPixel/SetPixelは、色がどういうマッピングされるかの確認用とでも思っておいた方が良い。 実際の描画にはほぼ役に立たない。
メインのプログラムを走らす前に扱いたい画像データの全ピクセルについてgetPixelで得られる値を予め配列に格納しておいて、 メインのプログラムを走らせた時にはその配列データのみを参照するようにすればいいわけね。一つ別にプログラム書かないといけないな。
別のプログラムにする必要はないだろ・・・
CreateDIBSection
413 :
デフォルトの名無しさん :2008/12/29(月) 00:31:24
質問させていただきます. WM_CREATE が送られてきたときに、非常に時間のかかる処理(10秒~15秒くらい)をさせるのはやめたほうがいいでしょうか?
なんで止めた方が良いと思ったん?
別スレッドでやればいいやん
>>413 WM_CREATEに限らず、非常に時間のかかる処理はメインスレッドで
やらない方がいい。
メッセージに即座に応答できない状態だとOSから応答無しと判断されるし、
メッセージをブロードキャストするアプリケーションの動作にも影響する。
ウィンドウプロシージャは0.1秒以内に処理を終えなければいけないみたいな決まりがあるはず
>>417 詳細orサイトplz
それは意識してなかったorz
GetMenu()のようにポップアップメニューを取得できないでしょうか? リストアイテムを選択中に右クリックした場合に出るコンテキストメニュー (ポップアップメニュー)のハンドルやその要素一覧を取得したいのです。
> リストアイテムを選択中に右クリックした場合に出るコンテキストメニュー 出ねーよ
>>420 申し訳ありません、アイテムがメニューをもつわけではないですね。
その選択したアイテムを操作するようなメニュー(アイテムのコンテナが
もつメニュー)のことです。
ポップアップメニューって自分で表示しなきゃ出ないじゃん 少なくともAPIの範囲では 自分で明示的に表示してるものなのにハンドルが分からないって事は無いだろう
>>421 余計な言葉をつけずに
「メニューハンドルからメニューアイテム一覧を取得したい」
と言え。詳しく言ってるつもりが余計に分かりにくくなっている。
GetMenuItemCount/GetMenuItemInfo
>>423 いや欲しいのはメニューハンドルだろ?
「外部アプリのメニューを取得して何かしたい」んじゃねーの?
「外部からコンテキストメニューのメニューハンドルを取得する一般的な方法はない」がアンサーじゃね?
デスクトップの描画について質問があります。 以下のようにデスクトップのDCを取得して、描画するプログラムは作れるんですが、 描画した内容を消す方法がわかりません。 黒や白で塗りつぶすわけにはいかないし、どうしたらいいんでしょう。 終了ボタンを押したときでしか、描画が消えません。 // デバイスコンテキスト HDC hdc = GetDC(NULL); // 描画 Rectangle(hdc, 100, 100, 200, 200); // 解放 ReleaseDC(NULL, hdc);
元の色保存しといて塗り直せ
>>425 InvalidateRectで再描画してもらう
InvalidateRect(0,0,false)
PaintDesktop
SW_HIDEを送って非表示になったウィンドウのウィンドウハンドルはどのように取得すればよいでしょうか? そのウィンドウを持つプロセスIDはわかるのですが…
ずっと覚えとく
EnumWindows、GetWindowThreadProcessIdを組み合す
SW_HIDE を送るときに使う HWND は取得できるのに?
434 :
430 :2008/12/30(火) 03:54:53
>>431 ,433
SW_HIDEは自身が送るものではない環境ですので…
ご回答ありがとうございます。
>>432 プロセスIDを取得する際にEnumWindowsを使っておりましたので
改めて考えるとすでに取得できていたのですね。助かりました。
今までFindFirstFileで全てのファイルを列挙するとき "*.*"とやってたんですが、よく考えると"*.*"でディレクトリ や拡張子のないファイルが引っかかるのはおかしい 気がするんですが、なぜでしょうか?
IsDBCSLeadByteExを使用して2byte文字の 先頭1byte目かという判定をしていたんですが、 0x82 0xF0(ひらがなの「を」)の2byte文字の 0xF0を指定して上記のAPIで判定をしたところ FALSE以外。つまり2byte文字の先頭1byteという 判定が戻り値として戻ってきました。 これはIsDBCSLeadByteExのバグなのでしょうか? または私の使い方が間違っているのでしょうか。 /* 2byte文字の1byte目かを判定 */ if(IsDBCSLeadByteEx(CP_ACP, 指定文字値) != FALSE) { }
case WM_KEYDOWN: if(wp == VK_ESCAPE) 終了処理; というようにエスケープキーを押したら終了するようにしたのですが、 EDITにフォーカスがあっているとEscを押しても終了してくれません 解決策があれば教えてください
>>436 2byte文字の2byte目にはいろんな値が来るので
0x82を判定したあと1文字飛ばしましょう(0xF0は判定しない)
>>436 使い方が間違っている。
IsDBCSLeadByteExはマルチバイト文字の1バイト目の範囲内にあるかどうかという判定しかしない。
1バイト目にも2バイト目にもくる可能性のあるコードならそうなる。
文字列渡してないんだから厳密な判定ができないのはわかるべ?
>437 WM_GETDLGCODE
コンソールでdir *.*とかすらやったことないのか・・
443 :
435 :2008/12/30(火) 14:37:43
>>440 ありがとう、疑問が解決しました
今度から"*"にします。
444 :
435 :2008/12/30(火) 14:43:54
>>442 むしろPC98時代からPC使ってたから
今まで疑問にも思わなかった
445 :
436 :2008/12/30(火) 14:44:06
>>438-439 回答ありがとうございます。
私が本当にやりたい事はファイルからデータを読み込んで
エディットボックスに反映(処理ログみたいな)させていくというものなのですが、
一度に最大1023byteしか読み込ませないように(wsprintfの関係)制御しています。
しかし、この場合バイナリでReadしている為、文字化けが発生する可能性があり
それを回避する為、最大(1023byte)で読み込んだ場合、末尾のデータが
全角文字(2byte)の先頭1byte目かを判定して真の場合、読み込みポインタを
-1byteずらしているというやり方で回避させていたつもりなのですが、
>>436 の記載したAPIの使い方を私が勘違いしていた為うまくいきませんでした。
ベタ書きでの判定となると
if((チェック値 >= 0x81 && チェック値 <= 0x9F) || (チェック値 >= 0xE0 && チェック値 <= 0xEF))
という感じになると思うのですが、こういう判定をしてくれるAPIは
提供されていないのでしょうか?
>>445 先頭から調べるか、調べたい場所から1バイトずつさかのぼって
1バイト目じゃない文字の部分から順に判定すればいい。
あるウィンドウプロシージャでコントロールのメッセージはWM_COMMANDとして送られてきますが、 コントロール自身のウィンドウプロシージャではどういう形でメッセージが飛んでくるんでしょうか? たとえばリストボックスからのLBN_SETFOCUSはMSG = WM_COMMAND,WPARAM = (4 << 16) | 100ですが、 コントロール自身ではどう受け取ればいいのかが分かりません。もしかして頓珍漢なこと言ってますか?
コントロール自身がWM_SETFOCUSを受け取って、親に自分でLBN_SETFOCUSを投げてるんじゃないのか?
449 :
437 :2008/12/30(火) 15:14:21
>>440 >>441 回答ありがとうございます
case WM_GETDLGCODE:
return DLGC_WANTALLKEYS;
case WM_KEYDOWN:
if(wp == VK_ESCAPE) 終了処理;
このような感じにしたのですが終わってくれません
何か間違いがあれば、ご指摘お願いします
>>448 メルシー。じゃあ、LBN_SELCHANGEとかってのはコントロールの単純なサブクラス化じゃうまく捕らえられないのかな・・・
451 :
436 :2008/12/30(火) 15:30:43
>>446 やはりそれしかないですよね。
ありがとうございました。
>>450 LBN_***はコントロールのプロシージャがユーザーの操作に応じて親ウィンドウに投げてる奴だから
サブクラス化しようが何しようが捕まえられんよ
そもそもそうしないためにWM_COMMANDがある
MFCだとメッセージリフレクションで実装されている処理の話だな。 結局の所、親に投げられたメッセージを引っ張り出す必要があるので、 残念ながら、コントロール側だけで完結するようには書けないな。
>>453 今ライブラリを作ってて、イベントハンドラ関連の整備してたんですが、そこで詰まりまして・・・
でも、WM_COMMANDのLPARAMってどうやら、コントロールのハンドルらしいですね。
ハンドルからクラスを引っ張ってくる仕組みは既にあるので、何とかなりそうです。
たしか、WM_COMMANDってアクセラレータとコントロールとメニューのメッセージが飛んでくるんですよね。
何とか頑張って実装してみます。ありがとうございました。
>>449 case WM_COMMAND:
if ( LOWORD( wParam) == IDCANCEL) 終了処理;
456 :
437 :2008/12/30(火) 16:23:19
>>455 ありがとうございます
ですが、その通りにやっても動きませんでした
Escキーをおすとポーンと警告音みたいな音がするだけの状態です
>>445 そういう風にべた書きしても、436のように使えば全く同じ問題が起こる。
CP932でのIsDBCSLeadByteExだって同じことをやっているよ。
>>455 ダイアログリソースに ID = IDCANCEL のボタンを Visible = False で貼りつけてみ。
>>458 ありがとうございます
case WM_CREATE:
CreateWindow(
TEXT("EDIT") , NULL ,
WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP | ES_LEFT | ES_AUTOHSCROLL ,
0 , 24 , 100 , 24 , hWnd , (HMENU)1000 ,
g_hInst , NULL );
このようにEDITを作っていました
Win32APIをはじめたばかりでよくわからないのですがダイアログボックス(?)の勉強をしないと
話についていけそうにないので出直してきます。ありがとうございました
>>460 おやおや、ダイアログボックスじゃなくてウィンドウでの話だったのか?
だったら、メッセージループ while(GetMessage(&msg・・・){・・・} の中で WM_KEYDOWN を拾えばいいじゃん。
ここでメッセージを変換してウィンドウに送るコードを書いてるのは自分自身なんだぞ。
>>460 を見る限り、おそらくメインとなるウィンドウもCreateWindow(Ex)で作っているんだろう。
だったら、TranslateMessage/DispatchMessageのところをこうしろ。
if (!IsDialogMessage(メインウィンドウのハンドル, &msg))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
そうすれば、
>>458 をやらなくても、455の処理が可能になる。
これをやると、ダイアログの挙動を示すため、ほかにも副作用があるけど。
>>461 >>462 ありがとうございます
メッセージループ内でやったらうまくいきました
ところで、Win32APIを学ぶとき皆さんは何を参考にしましたか?
私はとりあえずテンプレートのサイトを見ているのですが、皆さんはやはり本などを1冊くらいはもっているのでしょうか?
先日まで、コンソールでプログラミングしていた私にとって、windosプログラミングはすごく難易度が上がって
戸惑っています
それから、見た目の部分(ウィンドウやリストボックス、メニューなど)はリソースエディターというもので
作るのが一般的なのでしょうか?参考程度に教えてください
クロスプラットフォームで動くGUIを作るとしたら やはりJavaですか?
>>466 知らないならレスしないでください。ウザイだけです。
468 :
デフォルトの名無しさん :2008/12/30(火) 23:53:27
>>463 俺はとりあえず MSU へ行ってみた
今言わせればひでえ講義(特に OLE 関係)だったが
何を自習すべきかの参考にはなった
>>464 このスレ的には、Wineを信じてWin32API使え。
>>463 >本などを1冊くらいはもっているのでしょうか?
Win16の時代からやってるから、1冊どころではないな。情報源はそれしかなかったんだ。
手始めは「APIの散歩道」つう本だったと思う。今ならアマゾンで1円(古本)+送料で手に入るが。(笑)
それに比べると今はラクだぞ、インターネットで何でも調べられるし。
もっとも、転がってるのは玉石混在ではあるがな。
自分は本を勧めたいが、自身が猫で覚えた身ゆえ、積極的に勧める気になれない。
俺は現場のソースで覚えた
>>474 四字熟語としては間違ってるけど、別におかしくはない。
476 :
デフォルトの名無しさん :2008/12/31(水) 01:34:31
あえて黙ってたのに 指摘する阿呆に 言い訳する阿呆 阿波踊りは他でやれ
あえて黙ってたのに 指摘する阿呆に 言い訳する阿呆 盆踊りは他でやれ
ウィンドウメッセージで392というのが飛んで来てはCallWindowProcが-1を返すんだが、 10進で392ってなんていうメッセージ?
392 == 0x188 winuser.hの中を調べる限りでは、LB_GETCURSELしか該当しなかった。
>>478 ,.-─ ─-、─-、
, イ)ィ -─ ──- 、ミヽ
ノ /,.-‐'"´ `ヾj ii / Λ
,イ// ^ヽj(二フ'"´ ̄`ヾ、ノイ{
ノ/,/ミ三ニヲ´ ゙、ノi!
{V /ミ三二,イ , -─ Yソ
レ'/三二彡イ .:ィこラ ;:こラ j{
V;;;::. ;ヲヾ!V ー '′ i ー ' ソ
Vニミ( 入 、 r j ,′
ヾミ、`ゝ ` ー--‐'ゞニ<‐-イ
ヽ ヽ -''ニニ‐ /
| `、 ⌒ ,/
| > ---- r‐'´
ヽ_ |
ヽ _ _ 」
ググレカス [ gugurecus ]
(西暦一世紀前半〜没年不明)
明日実家に帰省するぜ! ところでおまいら一年間振り返ってみるとやっぱおまいらの 技術力が一番参考になるわ 質問すると罵倒されるがちゃんと返してくれるしな 会社の連中は無関心すぎて役に立たないし第一話が通じなくてな だから来年も困ったときはお前らに怒られながら質問するわ! その時は罵倒しながらちゃんと答えてくれな じゃあまた来年。 良いお年を!!!
483 :
482 :2008/12/31(水) 01:55:02
486 :
デフォルトの名無しさん :2008/12/31(水) 05:58:40
うるせーばかどっかいけ
ほのぼのしてるなー 見てて和むわw
質問です
以下のようにShellExecute で URL を print したときに独自のアプリケーションを関連付けしたいのですが、どのレジストリにキーを追加すればいいでしょうか?
HINSTANCE hInst = ShellExecute(NULL, L"print", L"
http://www.google.co.jp/index.html ", NULL, NULL, SW_SHOWNORMAL);
※ShellExecute の第2引数に print、第3引数にURLを指定します
Expolorerのフォルダオプションのファイルの種類で、httpにprintを追加しましたが、ShellExecute の結果が SE_ERR_ACCESSDENIED (5) でエラーになりダメでした
htmlにも追加してみましたが、同様のエラー(SE_ERR_ACCESSDENIED)になりました
以下のレジストリへの登録は試したのですが、同様のエラー(SE_ERR_ACCESSDENIED)になりました
HKEY_CLASSES_ROOT\http\shell\print\command
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\HTTP\shell\print\command
わかる方がいましたら教えてください
SE_ERR_ACCESSDENIED? それだけを実行するシンプルなやつで試してみた?
TOPMOSTオプションをつけたウィンドウを作ったのですが タスクバーより手前に表示できません(タスクバーをクリックするとウィンドウが隠れてしまう) 何か良い方法があれば教えてください
>>491 ShellExecuteだけを実行するアプリを作成して試してみましたが、ShellExecute の結果が SE_ERR_ACCESSDENIED (5) でエラーになりました
第3引数をURLではなく、.htmlファイルにしすると print した場合は ShellExecute で.htmlに関連付けしたアプリ起動できました。第3引数をURLにするとやはりエラーになります。
ShellExecuteで URL の print は無理なんですかね
>>490 HKEY_CLASSES_ROOT\htmlfile\shell\Print\command
DDEを考慮してないからだろ
URLの場合、 HKEY_CLASSES_ROOT\MIME\Database\Content Type 辺りから手繰っていかないと駄目な気がする。 Content Typeでの判断がメインで、拡張子はあくまで補助的なものだし。
テンポラリフォルダを空にするプログラムなんだけど、 "GetTempPath"でテンポラリフォルダを取得してそのままファイルを削除すると危険っぽいんで助けてください ><;
>>497 なぜ危険か承知しているなら、やめときなよ。
どのタイミングで削除するつもりだ?
You! やっちゃいなよ!
>>497 GetTempPathで取得したフォルダ以下を削除するプログラム作ったら
何故かD:\みたいなパスが返ってきていてDドライブ以下が全部消えた事ならある
501 :
490 :2008/12/31(水) 18:03:10
>>494 残念ながら、そのレジストリをいじっても同様のエラーになりますた
>>495 ,496
DDEやらContent Typeとキーワードが出来てましたが、正直よくわからないので、
勉強してから挑戦してみます。d
環境変数見りゃわかんだろ
>>498 任意でいつでも削除できるのを、止めといたほうがよさそうですね・・・
>>499 やっちゃってるお掃除ソフト見つけたけど、下手するとOS再インストールする羽目になりそうです ><;
>>500 TEMPフォルダが見つからないとそうなるっぽい、でもエラーは返さない (´・ω・`)
WS_EX_TOOLWINDOWをもつウィンドウはタスクバーには入らない。
>>504 ユーザーが任意で削除できるようなサポートツールならいいが、自動で全部消しちゃうよーなツールなら
怖くて使えない。他のソフトの一時的なバックアップファイルを勝手に削除して、そのソフトが動かなくなったらどーするよ?
一定時間ごとに自動バックアップするソフトは結構ある。それらのソフトが、自身で作ったテンポラリファイルすべてをロック
しているとも限らない。
507 :
503 :2008/12/31(水) 18:34:59
>>505 Live Messengerを試しにTaskbar Containerに入れて
前後をWinSpectorで検証してみたのですが、
特にStyleやEXStyleは変化なしでした・・・うむむ
>>506 そうですよね、テンポラリフォルダはむやみに触ったらイケナイってことを理解しますた! (`・ω・´)
>>506 それって削除されると動かなくなるソフトの方が悪いんじゃまいか?
勝手に削除されて困るならロックしとくかApplication DataやLocal Settingsに置くべきだろ
>>509 ソフトが良くても悪くても動かなかったら困るだろ。
それは理解できるが、だからと言ってTemp全削除を行っていいわけにはいかない現実orz
昔、アンインストーラーがProgram Files以下を全消ししたエロゲを彷彿とさせられたw
>>503 それがどうやってるのか知らんけど、ITaskbarList を使えばできる
( ゚∀゚)アハハ八八ノヽノヽノヽノ \ / \/ \
>>509 その通りだよ。そのソフトが悪い。
でも、そういうところに手を抜いているソフトを、手を抜いていることを知らないで使っているユーザが
被害を被るよーなことは、避けたほうがいいと俺は思う。ニュアンス的には、未必の故意ってヤツだ。
>>515 Windows付属のツールでもTEMPフォルダのファイルを削除できるのだから
その程度でバグるようなソフトを考慮する必要なんてあるか?
exeと同じフォルダにファイル置くソフトがVistaでバグってるような物だろ。
>>516 >ユーザーが任意で削除できるようなサポートツールならいい
と最初に
>>506 最初に書いたんだがなあ・・・。
WindowsUpdateで再起動が必要なファイル更新だと、 新しいファイルが一旦TEMPに置かれていた気がするのだが。
519 :
デフォルトの名無しさん :2008/12/31(水) 20:26:18
/⌒) ム j ∧ f ヽ. | / ヽ | 「 ̄ヽ / i.ヘV| / -ニニ=- | L_ノ _/ ヽ.U| / ヽ、 | | \ へ ゝ|  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ヽ/_/|_/^ ̄ The days which are wrapped in the scene of summer and to pass gently An encounter with the girls repeated in the sunlight Summer continues to where as well She is waiting in the air
>>516 Windows付属のツールは一週間以上使用されていない一時ファイルのみ削除じゃなかった?
そりゃ一定期間経過後のファイル限定なのは常識だろw 数秒前に作成されたばかりのファイルを削除するなんてウィルスと変わらんからな
522 :
デフォルトの名無しさん :2008/12/31(水) 22:37:47
俺は全部削除するよ
俺も自分の作業場所と併せてバッチで全部削除 それで困った事なんてない
自己解凍型のインストーラ実行中だと困る ていうかそれ以外で困るとしたらソフトが悪い
自己責任で削除するなら、困ろうがどーしようが自分の勝手。困ったときはスキルのなさを呪えばいい。
自分の知らないうちに勝手に削除されるなら、そういう削除ツールは
>>521 の言う通りウィルスと変わらん。
GetTempPathって、TMPもTEMPも定義されてなかったらUSERPROFILE それもなかったらWindowsのディレクトリを返すんだな……ゴクリ SHGetFolderPathなら少しは安全かと思ったらCSIDLが定義されてなかったぜ
どこまでWin32APIに関連するかわからないのですが、お聞きします。 英語版のWindowsで ansi window(not UNICODE)に キャプションにSJISの日本語タイトルを表示した場合、 FindWindowで引数のタイトルに日本語を指定して見つけられるものでしょうか? もちろん日本語だとfindwindowで0以外が返ってきて見つけてくれるのですが、 外人さんが試した限りだと見つけられないようなのです(0が返ってくる) これは何か対処法がありますでしょうか?
>>527 クラス名で FindWindow() するとか。
文字コード環境を調べてタイトルを変化させるとか。
タイトルをBase64エンコードしとけばいいだろあけおめ
もうだめだ おしまいだ しぬしかない
>>528 対象ウインドウはJavaのフレームワークのようでかぶった時が怖いです(´・ω・`)
クラス名は "SunAwtFrame" でした。
タイトルが "ログイン" なんだけど、向こうさんの環境だと文字化けしているみたい
>>529 英語環境でCP932(SJIS)だとどうなるんだろ・・・
とりあえず、FindWindowW(FindWindowのUNICODE版)でも
日本語環境だとタイトルとクラス名でウインドウが発見できるようですので、
こちらの方法で試してもらうように先方に言ってみます。
FindWindowをUNICODE版にして換わる門だろうか?
なんか知らんがWindowsの内部文字コードは全部Unicode
>>530 ごめん、もう少しkwsk
見つけたいウインドウのタイトルを変えるのって、見つけてない状態で可能なんですかね?
外部のプログラムなんですが・・・
FindWindow() 以外にもいろんな方法あるし。 ウィンドウ列挙して GetWindowModuleFileName() とか、ついでにプロセスも列挙して、 GetWindowThreadProcessId() とか。
年越えで勉強とは真面目だな、おまいら あけおめ
このスレ見てると現実に引き戻されるから正月くらい閉じよう
>>535 GetWindowModuleFileNameは自分のプロセス以外は正常に機能しない
そんなの常識だろ 2009年になったのにまだ9x系しか使ってないのかよ
>>540 10年前からタイムスリップしてきた人ですね、わかります
HWNDを、API(Direct3D)に渡す為にクラスのメンバにして保持しようと思うんですが、 HWNDは単純にコピーしていいんですか? それともDuplicateHandle()で複製して、CloseHandle()で閉じるものなんでしょうか? ちなみに、やってみたら不明なエラーで失敗しました。 ※プログラムは単一プロセスです。
DuplicateHandleの説明読めよ・・・
>>544 読みました、複製できるハンドルの一覧にHWNDはありませんでした。
これは、HWNDの複製は単純コピーでかまわないってことですかね?
プロセス間で持ちまわるものじゃないから?
HWND はプロセス間で持ち回れるよ
547 :
デフォルトの名無しさん :2009/01/01(木) 01:24:27
出来ない、という選択肢は無いのか?
>HWNDは単純にコピーして HWNDの値はいくらでも「代入」できるが、「コピー」は不可能。
>>549 HWNDがファイルディスクリプションのような参照なら、
言い回しはコピーで違いなのでは?
HWNDってCOMのIFポインタみたいな、カウンタを持った参照だと
勝手に思ってたけど違うのかな?
そもそもHWNDなんてコピーできても意味ねーだろ
>>543 HWND CopyWindow(HWND hwnd);
指定されたウィンドウを、子ウィンドウを含め完全に複製します。
timeKillEventの成功したときの戻り値は、 timeSetEvent関数から返されるタイマーID、 TIMERR_NOERROR、MMSYSERR_INVALPARAM のどれでしょうか。 ググってもページが少ないですし、 いろんな説があって分かりません。 いつも返ってくるのはTIMERR_NOERRORで、 その後のtimeEndPeriodもTIMERR_NOERRORが返り、 これは成功という事なので、 timeKillEventも成功と言えるのかも知れませんが。
>>550 カウンタは持っていないし、カーネルハンドルではないので
DuplicateHandleもできないしする必要もない。
>>553 Returns TIMERR_NOERROR if successful or MMSYSERR_INVALPARAM if the specified timer event does not exist.
Return Values Returns TIMERR_NOERROR if successful ヘルプくらい見たら?
見ても訳せなかったりして(笑) 成功したら TIMERR_NOERROR を返し、(引数で)指定したタイマーイベントが存在しないなら MMSYSERR_INVALPARAM を返します。
>>551-552 ,554
複製の必要はないのですね、
理解しました、教えて頂きましてありがとうございました。
>複製の必要はない 複製したくてもできない、が正解。 もし仮に君のクローンができたとしても、それは君ではないのだよ。
そういえば今日 自分のクローンができる夢見た
俺は苦労する夢
みなさん、ありがとうございます。
>>557 その通りです・・
「うまくいくかMMSYSERR_INVALPARAMであり、
指定されたタイマイベントが存在していないなら、
TIMERR_NOERRORを返します。」
とか訳サイトで出ていたので。
他のtimeBeginPeriodとか他の3つは日本語の
MSDNがあるのに、これだけないのも不思議です。
英語勉強しろよ小学生
英語勉強したら負けかなと思ってる
と負け組が申しております。
俺は、アメリカで生まれて成長されたので、英語を勉強するは不要だ。 日本の人々は不運と思っている。
完全に同意にダ……あル……です。
フーン
569 :
デフォルトの名無しさん :2009/01/01(木) 09:51:56
Win95の頃は割と日本語でMSDN読めたのになあ 今やMSKB共に機械翻訳だらけ 和訳スタッフがリストラでもされたのか?w
あの頃だとVisual C++4.xか。 Win32APIの日本語訳なんて存在していた記憶が無いな。 和訳スタッフは.NET絡みの最前線行きだろ。 TechNet Magazine とかは割と早くに日本語訳されて助かってる。 流石に新ネタ絡みであの分量を英文で読むのはちと辛い。
API バイブル、なんてのもあったな・・・
萌文化も受け入れられてたのか
.NET関連は結構和訳されてるね GDI+のクラスをググると.NETの方ばかり上位に来るので見づらいが 個人的にはMSKBの日本語訳をもっと増やしてほしい気がする
STGM_TRANSACTEDの複合ファイルはTEMPを使うような気が
Windowプロジェクトとしてコンパイルする時にint main()を定義してるのは合法ですか? BCCはとりあえず問題なさそうなんですが
Win32API に関係ない話題はよそでお願いします。
>>576 合法も違法も無い。
正しくリンクできて実行できれば何の問題もない。
エントリポイントにmainとWinMain(あるいはその他)を選ぶことと、
サブシステムにコンソールを選ぶか否かは、互いと無関係に選べる。
(一般に、無指定のときmain - コンソール、WinMain - 窓アプリという暗黙の指定が働くけど)
分からないならレスしないでください。ウザイだけです。
580 :
デフォルトの名無しさん :2009/01/01(木) 17:18:17
>>576 合法
ホスト環境において実行開始点が main でない言語は C ではない
C から派生した M$ 定義の言語であり、そこで禁じていない行為にあたる
違法なプログラム、ってのを見てみたいもんだ。
>>580 Cではないとはまた過激思想な。
ホスト環境ですら処理系定義のエントリポイントを認めているぞ。
そろそろ死ね
このまま話を続けると、話についていけない人が泣いちゃうしな。
そっか、仕方ない・・・撤収撤収!
↓これでごみ箱を空にしたらごみ箱がぶっ壊れます、なにか間違ってますか? SHEmptyRecycleBin( NULL, NULL, SHERB_NOCONFIRMATION | SHERB_NOPROGRESSUI | SHERB_NOSOUND );
ごみ箱に足をつっこんでバトルなんかするから
Wiresharkのような感じでRS-232C通信をモニタするツールを作りたいのですが、 指定した COM ポートがデータを送信、あるいは受信したタイミングを知る方法、 およびそのときに送受信したデータを取得する方法を知りたいのですが、 どのようにおこなえば良いでしょうか? OS は WinXP SP3、環境は 2008EE です。
流れてしまいましたが
>>492 わかる方いたらお願いします
一応
case WM_KILLFOCUS:
SetWindowPos( hWnd, HWND_TOPMOST, 0, 0, 0, 0, (SWP_SHOWWINDOW|SWP_NOMOVE|SWP_NOSIZE) );
こういうことをしてみたのですがだめでした
>>587 ウチでは正常に動作する。
>>492 ,590
ウチでは正常に動作する。
タスクバーの「常に手前に表示」オプションを有効にしていても、さらにその手前に常駐している。
>>589 Wiresharkがパケットのキャプチャにドライバを使っているように、
通信をキャプチャするドライバを書けばいいと思うよ。
>>590 タスクバーより手前に表示できないのと、
タスクバーをクリックしてウィンドウが隠れるのでは意味が違う。
後者については無理。
最前面表示ウィンドウ間では、通常ウィンドウと同様前後関係が常に存在する。
WindowsのRS-232Cはファイルだからフック監視も有りだな。
ユニコード対応の為に文字列を扱うAPIにはA/Wがついてますが 内部ではANSI版はすべてユニコード文字列に置き換えてユニコード版を呼び出してると聞きました。 この置き換えってMultiByteToWideCharで変換してるんでしょうか? お詳しい方教えてください。
>>596 例えばDLLを作るときってこういうの考慮しないとダメですよね?
他の人が色んな環境で使う場合
>>597 なんで? Windows の内部動作は気にする必要ないと思うけど?
DLLの仕様書というか説明書にマルチバイトですユニコードですって書いときゃいい
>>598 すみません自作関数を作ったときのことです。
というのが、C++で文字列を扱うDLL関数を作っていて、ユニコード対応させようと思って
関数のオーバーロードと、APIと同じ#defineの方法両方使ってて2つの方法がチャンポンになってます。
オーバーロードは引数が違わないと使えないのでこうなっちゃってるんですが・・・。
みなさんどうしてます?変なこと聞いてたらすみません。
>>599 その手もありますね。確かに。
俺は面倒なんで、TCHAR を使ってバイナリをふたつ作ってる。 で、Unicode 版、ANSI 版、使い分けてもらう、って感じ。
>>600 FunctionA() と FunctionW() を作って、FunctionA()が呼ばれた場合は内部で FunctionW() を呼ぶようにすれば?
>>595 に君が書いたとおりに。
みなさんありがとうございます。
>>602 そうします!
わざわざ全部UNICODEにもってく必要ない気がするんだが。 俺のDLLはこう FuncA(); FuncW(); #ifdef UNICODE #define Func FuncW #else #define Func FuncA #endif こうしときゃ開発者は好きに使える。 あと、内部的にUNICODEといってもkernelだけの話でASCIIの処理系しか持たない Windowsモジュールだってあるでしょ
>>605 そうですね。全部全部はやめて、
数行の関数は完全に分けて書こうと思います。
数十行の関数は保守の面から統一したいと思います。
あとオーバーロードはやめて全部#defineにしようと思います。
ありがとうございました。
LoadStringでリソース内の文字列を取得する前に その文字列のサイズを取得する方法ってありませんか?
自分で作ったりソースの長さなら事前に知ってないとおかしい
>>607 はLoadStringの話をしてるのに、突然ソースの長さの話をした
>>608 が
おかしいのを指摘されたら逆ギレしただけでしょ
まあ全部俺の自演なんだけどね
すんげー悔しいw これでいい?
だめ。
>>607 多分無い
MFC/ATLでもFindResource使って自前でロードしてる
多分じゃだめだ
リソースの“リ”って文章中に書くと文脈でひらがなの“り”になりやすいなw
絶対無いよ ソースは俺
LoadString(hinst,id,NULL,0) でバッファ長を返せばいいのに、失敗するだけなんだよな GetPrivateProfile〜も同様に失敗するだけ 設計悪いなー
このお馬鹿なLoadStringは他言語対応ソフト作ってると困るよな 例えば"設定"なんて日本語だとnull含めてUnicodeで3文字で十分だけど 英語だと"Preferences"だから12文字必要になってくる(4倍) 逆のパターンも結構あって、ANSIだと日本語の方が長くなりやすいから 海外のソフトで日本語が途中で切れてるのもよく見かける
俺は面倒くさかったから、切捨てられず読み込めるまでバッファ拡張・LoadStringを繰り返す方法で妥協した記憶がある。
LoadStringExを使えば解決。 、、、え?まだ無いの?
627 :
607 :2009/01/02(金) 12:03:33
回答ありがとうございます 確実に格納しきれる一時的なバッファを使う方向でいってみます
>>626 自分で作ればいいじゃん
StringTableリソースの構造はこんな感じ
struct StringEntry {
WORD size;
WCHAR buffer[size]; // 注: nullターミネートではない
};
struct StringTable {
StringEntry entry[16];
};
(StringTableのリソースID) = (LoadStringに渡すID) ÷ 16 + 1
で求めたリソースIDをFindResource(RT_STRING)で読めばおk
int LoadStringEx( UINT nID, LPTSTR& lpsz) {
return ::LoadString(GetModuleHandle(0), nID, lpsz, INT_MAX); }
>>629 HINSTANCEがねーよ
C++のくせにLPTSTRとかw
だせぇwww
>>624 あと、リソースファイルにはUNICODEで入っているのに
LoadStringWを実装していない9xには殺意を覚えた。
殺っちゃってください
今思うと95ってよく動いてたなーと
>>632 それを言うならVFATだってUnicodeだろ
>>624 日本語コメント全然入力できない de.licio.us 思い出した
ダイアログの背景の灰色にビットマップを描写したいのですが、 どのメッセージで描写すればいいですか? (WM_PAINT、WM_DRAWITEM、WM_ERASEBKGNDのどれかと思うんですが・・・)
638 :
デフォルトの名無しさん :2009/01/03(土) 09:58:24
WM_ERASEBKGNDでBitBltなりなんなり
>>593 >>594 ヒントありがとうございました。
少し勉強してみます。
フック監視というのはいろいろ流用できそうですね。
「ファイルだからとフック監視も有り」ということですが、
これは、裏の「ファイルでないならばフック監視できない」が成立するのでしょうか?
あるいは逆の「フック監視できるのはファイルだけ」となりますか?
641 :
デフォルトの名無しさん :2009/01/04(日) 02:51:28
HTMLテキストデータから数値(浮動小数点)のみを順に抽出して いきたいのですが、どういう風にすればよろしいでしょうか? ご教授ください。 Windows APIに依存しない方法でお願いします。
>Win32API質問箱 Build74 >Windows APIに依存しない方法でお願いします。 ・・・
神の姿が見えた
きっと書き込むスレを間違えた御茶目さんなのさ
プリントアウトしてバイト雇ってそいつにやらせろ Windows APIには依存しないぞ
647 :
デフォルトの名無しさん :2009/01/04(日) 10:27:04
雇用創出はええこっちゃ
バイトが100,000を1,000,000にミスって正月早々大騒ぎ
>>641 スレ違いワロタ
Rubyでnokogiriと正規表現でも使えば楽勝
俺649じゃないから知らんがjsでtextContentに (0|[1-9][0-9]*)\.([0-9]*[1-9]|0) とか当てれば良いんじゃないかと これでこの件は終了な 続きは他に行ってくれ
>>650 >>641 か?うざいから他でやれ。
第一、元のHTMLも出さない、切り出しの仕様も出さない。
エスパーでもやれるのかw?
むしろエスパーだからこそ殺っちゃって欲しい
654 :
641 :2009/01/04(日) 17:59:01
エスパーの方からテレパシーで回答が得られました。ありがとうございます。 650は私ではありません。
それ、電波
いいえ、電磁波です
MakeSureDirectoryPathExists() って、なんでANSI 版しか実装されていなんだろ? おかげでこれを使うときだけ CStringA( CStringW) しなきゃならんのだが・・・。
既に別のものに置き換わっている古いAPIについて愚痴られても、 頭が悪いとしか言いようがない。
置き換わってるという API を教えてあげればいいだけじゃん。
ということで、MakeSureDirectoryPathExists() のリファレンスを見たら、 Unicode 版は SHCreateDirectoryEx() を使え、って書いてあるね。
imagehlp系はUNICODE化されていません!
ShellAPIはMAX260文字制限がな。 .NETも同じだし32767文字対応させようとするとアホらしくなってくる。
今確保してるMAX_PATHのスタックを全部32000にしたらオーバーフローで落っこちるお どうすればいいんだお
リンカのオプションでスタックサイズ設定できるだろ。
260文字で足りるだろ どんだけ長いファイル名付けるんだよアホ
666 :
デフォルトの名無しさん :2009/01/04(日) 23:23:10
意図的な異常に長いファイル名に対応したいんだろ
OSのファイルシステムと一部のAPIは昔に対応してるのに OSのシェルが対応してないのてどうよ。 ていうか長いファイルパス使えるファイラ教えて。
260文字を超えるファイル名を付けなければいいだろ馬鹿
>>668 ファイル名260文字は滅多にないだろうけど、
ファイルパス260文字はそれに比べたら可能性あるんじゃね?
>>667 NTFSってまだまだ使っていない機能が出てくる気がする。
シンボリックリンクだってVistaで出てきたし。
どうでもいいが、QuickTimeのプレイヤーは長いフルパスのファイルを再生できんよな
>>669 ねーよ
お前260文字がどれほど長いか分かって言ってるのか?
それよりもCD/DVDが普通だと260文字より短くて苦労した覚えがある。
DOSの頃は64バイトだっけ あれに一度引っかかってから深いフォルダはあまり作らなくなったな
ルート512個制限も地味に痛い
Documents And Settings以下とかに深い階層掘られてることはたまにある が、俺のPCには260文字越えはどうやらないらしい 200越えならあった
C:\Program Files\Common Files\Microsoft Shared\日本国憲法\日本国民は、正当に 選挙された国会における代表者を通じて行動し、われらとわれらの子孫のために、 諸国民との協和による成果と、わが国全土にわたつて自由のもたらす恵沢を確保し、 政府の行為によつて再び戦争の惨禍が起ることのないやうにすることを決意し、ここに 主権が国民に存することを宣言し、この憲法を確定する。そもそも国政は、国民の厳粛な 信託によるものてあつて、その権威は国民に由来し、その権力は国民の代表者がこれを.txt これで260文字だ。こんなの普通に使ってて超えねーよ
IEで保存するとやたら長いファイル名で作られて、 次にそれを開こうとするとエクスプローラが死んだな
マイドキュメントの中に日本語フォルダとか作ってるとながーくなる
日本語の方がむしろ短いだろ
結構普通にあるのが 年_月_日_時_分_秒_フォルダ・ファイルの多重攻撃 これに長い文章的ファイル名をつけられて500とか結構普通に使ってる環境あった しかも絶対パスで扱うとフォルダが深い
そんなもんデスクトップに解凍するなよ
>>681 マルチバイトのアプリだと日本語フォルダがあるとあっという間だぞ
140文字くらいで260バイトだからな
まぁ最近はUNICODEがデフォだからマシになったが
日本語で140文字も付けるかっての ウイルス並みの嫌がらせだろ
32000でも65000でも勝手にやっとけ オレは260以上はlstrcpynで切り捨てるぜ ( ゚д゚)、ペッ
StringCch使えよ
万単位のクライアントPCを管理していたが ユーザごとにフォルダをマウントして利用する方式 だったため、MAX_PATHを軽く超えるファイルは 腐るほどあったな。 別権限のプロセスでファイルを処理するのに 絶対パスでやる必要があったんだが、処理できない ユーザがそれなりにいた。 あとPCに詳しくないオッサンオバサンってのは俺たちが 想像も付かないようなファイル名フォルダ名を付けたり するんだよ。あれにはほんと驚いた。 ここの人たちは「知るかボケ」で切り捨てるのは趣味なら いいけど業務ならちゃんと考えて作ってくれよな。
あ、ちなみにフォルダをsubstとかでマウントすれば マウントしたドライブ名からMAX_PATHまでは エクスプローラでも普通に作れてしまうってのが 原因の一つでもあったよ。
アンチウイルスソフトみたいに260超えだろうがADSだろうが残さずスキャンしなきゃいけないアプリだってある。
>>689 「知るかボケ」でいいよ
そもそもMAX_PATHを超えるとシェル系APIやPath〜系APIが使えないだろ
それに中途半端に対応してもバグの元になるだけ
あなたはそれでいいよw
普通はそれでいいだろw
>>692 の作るアプリは
・仕様です
・できません
・使えません
がたくさんありそうだ
シェルAPIにはできるだけ頼らない作りにするのが普通だと思ってた
対応する、しないでしか話ができないアホはプログラマ辞めろよ
ほんとだよな クズしかいねぇ
シェル系APIに頼らざるを得ないアプリだってあるんだよ エクスプローラが最たる例じゃないか
もうだめだこのスレ
ここの人たちはいつも32000とか65000とかでファイル名扱ってるの?
んなわけねぇだろ
>>692 さんの言うとおり長いのなんて無視だ無視
何が起ころうが知るかボケだ
俺はそんな長いファイルつくんねーもん
もう答えるのやめよう アホらしくなってきた
てか長いの扱えるのってCreateFileぐらいしか無くね?
MAX_PATH超えは知るかとかゆとり丸出しだろ・・・ ゆとりは.NET使ってろよ
糞長いファイル名を必要としてるのは共有厨だな あいつらタグ情報を↓こんな感じでファイル名に埋め込んで使うから無駄に長くなる (ジャンル名)[作家名]タイトル名(出典)
キンタマ厨だろw (アニメ) ○○ .exe
260文字いくんかw
MAX_PATH超えたらウイルスとかw なにこの人たち、本当にWindowsプログラマ?
>>710 知らないならレスしないでください。ウザイだけです。
>>711 知らないならレスしないでください。ウザイだけです。
>>712 オウム返ししかできないならレスしないでください。かわいそうになるだけです。
>>707 >>708 日本のPGはここまでレベル下がったのか・・・
ほんと恥ずかしいからリアルでは発言すんなよ。
たぶん何が恥ずかしいのかも理解できてないだろうけども。
>>713 オウム返ししかできないならレスしないでください。かわいそうになるだけです。
MAX_PATHを超えるファイルを扱えません。仕様です。 by エクスプローラ
>>716 ファイル名だけなら仕様で理解できるが
パスだと腹立つわw
いたいた、そんな後輩 「エクスプローラだってこうじゃないですかぁ!」 とかよく聞いたなぁ
短いけど深いパスで結局駄目じゃない?
フルパスはMAX_PATHまでって 円周率は3 と同じ匂いがするぜ
仕様だから仕方ない。
仕様だからしょうがない 使用者側でなんとかしよう
ああだこうだ騒いでるのに7でも修正しないつもりだろ 何年引きずる気だよ全く
知らないならレスしないでください。ウザイだけです。
長いパスに対応したはいいが、エクスプローラでアクセスできないファイルを作るアプリだと苦情を受ける。
結局、利用者はファイルシステムの最大値ではなく、 日常利用しているアプリの最大値を基準だと考える。 ファイルシステムの最大値を基準に考えるのはプログラマだけ。 ファイルシステムの最大値を強硬に主張するのは、 利用者視点でモノが考えられない頭の固いプログラマなんだよね。
なにこの2000年問題の元凶みたいな詭弁
>なにこの2000年問題の元凶みたいな詭弁 詭弁の特徴のガイドライン ・一見関係ありそうで関係ない話を始める
頭の固いおっさんが多いスレだな
データファイルだけならともかく実行ファイルだと DLL読んでくれないしカレントパスも設定できないよね? コモンダイアログも呼べないし実装としてどうしようもない部分も出てこないか? ドライブ名割り当てるのも他プログラムとの間に問題ありそうだし。
例年この時期になるとリア厨が大挙してくるけど、 今年はオッサンが多いのを見ると不況だなぁって実感するよ
>>641 方法は3つ。
・HTML文字列解析
正規表現など。
厳密にとか汎用的にとか考えだすと、非常にメンドイ。
・htmlパーサ
MSHTMLに食わせるとか。
MSHTMLはサーバ使用を想定したコンポーネントじゃないので、
サーバサイドだと嫌だなあというのがMSの見解。
・XMLパーサ
XHTMLならXMLパーサにかけられる。
じゃあどうやってXHTMLに変換するんだよみたいな話は知らん。
>>641 の要求がちとよくわからんのだが
attributeのwidth="600px"みたいなのは取り出すのか取り出さないのか
scriptやstyleタグの中身はどうか
本文だけ取り出したいのか
その辺が分からんとニンとも
場所は問わず数値だけ取り出したいのなら
HTMLの構文解析などいらんだろ
まあスレ違いだしどうでもいいがな
よく知らんけど、Javaのソースとかclassファイルって 簡単にMAX_PATH超えない?
知らないならレスしないでください。ウザイだけです。
737 :
デフォルトの名無しさん :2009/01/05(月) 15:26:50
charをWCHARに変換するapiを教えてください
738 :
デフォルトの名無しさん :2009/01/05(月) 15:28:53
MultiByteToWideCharでいいのかな? さっさと教えて役立たず共よ
>>737 char a = 'a';
WCHAR b = (WCHAR)a;
APIなんていらない。C言語を勉強しろ
740 :
デフォルトの名無しさん :2009/01/05(月) 15:45:01
>>739 あ、ごめん文字列なんですよ。
ちゃんと説明しないとわからない方なんですね。
>>740 char* a = "abcde";
WCHAR* b = (WCHAR*)a;
だからC言語を勉強しろよ。冬休みで暇だろ?
気違いの相手するなよ
743 :
デフォルトの名無しさん :2009/01/05(月) 15:56:45
>>741 いやいや、えっとですね。
ポインタじゃなくてちゃんと実体を取ってあれしてくださいよ?
>>743 char* a = "abcde";
WCHAR b[10000];
memcpy(b,a,sizeof(a));
C言語を勉強するまで二度と来るなクズ
745 :
デフォルトの名無しさん :2009/01/05(月) 16:05:59
>>744 なんだかんだ言って教えてくれるこのツンデレめっ!
つーかそれでいいの?
ねえ、
あのねあのね、
なんでもなーい
透明あぼ〜んでスッキリ
747 :
デフォルトの名無しさん :2009/01/05(月) 16:09:19
m9(^Д^)プギャーーーッ
ワラタ
親ウィンドウのクライアントエリアにある子ウィンドウがクリックされた時に 親ウィンドウでも処理をしたいんですが、どうしたらいいんでしょう? フォーカスを無理やり親に渡してしまうと子ウィンドウ側での処理ができなくなってしまいますし。。。
子ウィンドウがクリックされた時に親にメッセージでも投げろ
投げ方を教えてください。。。
( ゚Д゚)ノ≡ω
冬休みですね。わかります。
>>751 は俺じゃないんだけど、MFCの方で聞こうと思ってごばっくてた。
ごめん・・・
許さん
ようこそ許さん
ほら滑った
?
??
顔真っ赤ですよw
顔真っ白ですよw
紅白とはこりゃメデタイ
そこの紅白!
?
もうだめだこのスレ
透明あぼ〜んでスッキリ
ダイアログってのは予め定義されたウィンドウクラスで、ダイアログ用のウィンドウプロシージャが既に定義されている。 ダイアログプロシージャは、そのウィンドウプロシージャ内からある程度変換されてメッセージが飛んでくるところ。 これであってますか? ちなみにダイアログプロシージャ内にしか飛んでこないメッセージ、ダイアログプロシージャに飛ばされないメッセージには どんな物がありますか?WM_CREATEがWM_INITDIALOGになったりしてますよね? これは多分CREATESTRUCTを触れないようにするためとかあると思うんですが・・・
WM_CREATEとWM_INITDIALOGは別のメッセージだよ。 WM_CREATEはウインドウが作成されたときに来るメッセージ。 この時点ではウインドウができただけ。 WM_INITDIALOGはコントロールが全て作成されてから送られてくるメッセージ。
>>727 違うんだな
PGは「そんなパスあるかよw」って思ってると
土素人のおばちゃんとかが超長いファイルとか作ってたりするんだ
エクスプローラでもMAX_PATH超えるのは普通にある
後から親フォルダをリネームしてみろ。あっさり超える。
うるせーばかどっかいけ
おっさんキモイよ
しねよクズ
775 :
デフォルトの名無しさん :2009/01/05(月) 21:21:12
つーか、不定長文字列の処理で何でそんなに騒ぐわけ? いちいちスクラッチで書くのが面倒だって言いたいわけ? アフォなの? 死ぬの?
しね
MAX_PATH論争終わった?
778 :
デフォルトの名無しさん :2009/01/05(月) 21:22:51
ばーかばーか うんこー いまどきプログラムとか底辺の仕事して楽しいのー?
MAXって書いてあんだろうが!それ以上なんてねぇんだよボケ!
VistaとかC:\UsersにC:\Documents〜がシンボリックリンクしてるよね。 あれとかすげーヤバそう。 なんであんなOS作るんだか・・・
ここはオッサンの憩いの場だ ゆとりはレスするな消えろ
MAX_PATHより長いパスに対応してるソフトなど見たことないねぇ〜 長いパス渡したらオーバーフローとかはよくあるけどw
ゆとりはレスしないでください。レスしていいのはおっさんだけです。
オーバーフローしてもいいじゃない にんげんだもの みつを 圖
困ります><
誰も「32000文字に対応しろ」なんて言ってないよ。 長いのに遭遇しても大丈夫なように「ちゃんと作ったほうがいい」って事で。 もちろん「ちゃんと作る」の内容はそのときどき変わるだろうし、それをどう処理するかに ついて「絶対にこれが正解」とは言えないと思う。 ただファイル検索とかで長いのに遭遇したときバッファがMAX_PATHしか無かったが為に オーバーフロー起こしたり、勝手に切り詰めて切り詰めたパスに対応する別のファイル やフォルダを処理対象にしてしまったりとか、いろんな可能性をちゃんと考慮して欲しい。 みたいな話。
別プロセス間DLLでウィンドウハンドルを格納した動的配列の共有をしたいのですが何か方法はありませんでしょうか? メモリマップドファイルを使ってstd::vectorを共有しようとも思ったのですがクラス内部のメモリ確保の仕様の関係で向いていないようですし、 #pragma data_segでstd::vector・・も静的に初期化しないといけないので無理そうで
プログラム見直したほうが早そう
>>768 なるほど、リソースでダイアログボックス作ってないからそこ気づきませんでした。
ダイアログプロシージャだけ見とけば値を返す系以外のどのメッセージもキャッチできるんでしょうか?
>>788 スレ違いだけどboost.interprocessが使えるかも
>>789 知らないならレスしないでください。ウザイだけです。
>>788 要素数が決まってるなら、普通の配列に入れて data_seg でいいんじゃね?
知らないから質問しないでください。
CreateProcessを実行すると実行元の子プロセスになるようなのですが、実行元と関連の無いプロセスを生成するのはどうすればいいのでしょうか?
796 :
788 :2009/01/05(月) 22:15:44
アドバイスありがとうございます
>>793 最小化したウィンドウのハンドルを記憶させる入れ物として使いたいので
数の制限がなくどうしても動的な配列が必要になってしまいまして
>>791 boost.interprocessググってみたらとても便利そうですね
boostという名前は聞いたことあったんですがドキュメントが英語しか見つからないので
英語の成績が悪いなんてレベルじゃなかった自分はなかなか手を出せずにいました
これを機に翻訳かまして勉強してみます
>>795 CREATE_NEW_PROCESS_GROUP
MAX_PATHを信じて決めうちした糞餓鬼が爆死したんですね わかります
罵り合いはやめようぜ
エクスプローラに合わせるみたいなこと言ってた人も、 ドットで始まるファイルは処理しようなっ!たのむぜっ!
>>788 スレ違いだが、一応補足しておく。
STLのコンテナはアロケータでメモリ確保に関してはコントロールできる。
共有メモリのポインタを返すアロケータを用意すればvectorも使える。
ただ、アロケータでコントロールできるのはコンテナの中身だけなので、
コンテナそのものはplacement newを使う必要があるが。
しかし、STLのコンテナは異なるプロセス間での排他処理には
対応してないから、その部分は自分で処理する必要がある。
エクスプローラで扱えないファイルなんて無視でいいよ MS様の基準に反したファイル名をつける馬鹿が悪い
>>802 爆死した糞餓鬼が必死のいいわけですね
わかります
>>803 爆死した糞餓鬼はあなたですよ
おやおや、自分の事も分からなくなったのかな?
MAX_PATHのネタ引っ張ってるのってお前ら二人だけだぞ?
だってこんなに釣れるんですもの
まあまあ 失業してストレス溜まってるオッサンの相手してあげようよ
派遣契約切られて派遣村からカキコしています。 今の時代、Windowsプログラマなんていらないそうです。うるうる
>>808 お、MFCプログラマっすか?
俺も派遣先なくて困ってるw
すぐに切られるんだよなぁ・・・w
MFCかよ・・・
MFC(核爆)
>>808 おまいの「うるうる」が何かかわいかった
頑張れなw
MFC(笑)
まあ、大して変わらないけど みんなwin32直叩きしてんの? トラッカークラス自慢しちゃうぞっていっても派遣先ないんだけどねw
俺はしてる 他は知らんがここの住人は比較的そういう奴が多そうだけど
>>815 知らないならレスしないでください。ウザイだけです。
>>814 ところでなんで正社員で雇ってくれるところ探さなかったの今まで
>>817 面倒臭いからw
ってのと基本的に会社組織になじまない
半年たったら職場変えてもらわないと病気になる
なれてきたときのなれなれしい仕事の押し付けが我慢ならない
PGって基本的に損じゃね?
>>818 そりゃ、そういうデメリットはあるけど、どんな職種も楽ってわけじゃないからな。
派遣のデメリットとのトレードオフで自分で選んだなら文句は言えないな。
甘ったれんな、としか言えんな。 あとマ板でやれ。
派遣や常駐が好きなんて人いるんだね。 正社員様にコキ使われる奴隷みたいな身分ですんごい嫌なんですけど。
>>819 別に文句なんて言ってないのにおかしな人だね
まあ、いままであったPGで正常な人なんていなかったけどw
士農工商の下に穢多を作ったのは大正解だったという事が良く解るスレですね。
ひにんのくせに
もともとは罪人とかだっんだけどな。
一番下はヒッキー
ヒッキーの中にも階層があってだな
日妊
もうだめだこのスレ
買いかぶらないで下さい。前から駄目です。
test
832 :
831 :2009/01/06(火) 18:11:24
うおっ!! 3ヶ月のアク禁が解除された! 感動した。
ここでテストすんなやハゲ
>>833 知らないならレスしないでください。ウザイだけです。
そんなことより野球しようぜ
>>832 どうせだめだと思って適当に書いたら書けちゃうことってあるよな
余裕っすよ
841 :
デフォルトの名無しさん :2009/01/06(火) 19:32:32
もう Win32API でプログラムするのも終わりかな。 こんなにあれるほどネタがないんじゃ・・・
そんなことはない。
SDK付属のドキュメントさえ読めば質問するようなネタはほとんど無いからな
不良セクタを作ってハードディスクを壊すためのAPIを教えてください 今すぐお願いします
test
test
何のテストをしてるのか気になる
test
俺様ようしおり
>>801 以降、スレ違いレスだけ
tor串とか
852 :
デフォルトの名無しさん :2009/01/06(火) 21:33:54
ChooseColor関数が使えないのですがどうしたら使えるようになるのでしょうか 環境:Windows Vista,VC++ 2008 EE,Win32Project 状況:ChooseColor関数をIDEが認識しないです、CHOOSECOLOR構造体は未定義としてエラーになります 誰かわかる方がおられたらよろしくお願いします
関数のプロトタイプはIDEが認識するものじゃない。 ヘッダに書いてある物。
実行時の挙動の問題ならともかく、 コンパイル段階でエラーが表示されているのに対処出来ないって、 どれだけ無能なんだろう?
>>854 さっそく答えてくれてありがとうございます
という事はChooseColor関数のプロトタイプ宣言が書いてあるヘッダを
インクルードしてないからと言う事でしょうか?
ChooseColor関数は何ヘッダにプロトタイプ宣言が書いてあるのでしょうか?
>>857 書いてあるのでしょうか?ってそれぐらいMSDN見ろよ
>>857 ,-,,,,、 ,-,,,,_
,,,,,,,、 ,,,,,,_゙'-,. "'i、 .,,,,,,,、 ,,,,,,,゙'-、^'i、 .i,¬ー-、
゙''i、`\ \.`''-\,,l゙ `'i、 `''i、 ‘'-,`''-\,,l゙ ^'i、 ,)
丿 ,l,_,,,,,,,― |i、 } 丿 Z_,,,,,,-ヘヽ、゙l | .| __
,/ ,,-----=@,,,7゙"` ,/ ,,-----=@,,,)゙″ | | .,,-'",,,,,,、`'i、
,/`./ / 丿 / .,/` ,l゙ 丿 |゙ヽ,,,―" `゙'ュ‐゙_,/゛ | |
.,/.,,/` /` 丿 ,/ ,/ ,/ 丿 \,,,,-‐,! '`,/ .| l゙
,,-",,/ 丿 ,i´ ,/_,/ 丿 ,i´ 丿 ,,,i´ ,! |
i彡‐" ,/` ,/` ィ,ン'" / ./ ,/ .| | |
,,i´ ./ ,,‐`./ ,/`.,┤ | | | ./゙|
.,/ .,/ ,/ .,/ / 丿 | .| { { .,/ ,l゙
,,/ ,/` ,,/ ,/` / ,、゙'-,| l゙ | }, ._/.ノ
_,/゙,,/゛ _,/゙,,/゛ l゙ .,/`\ | ヽ,_ ゙"゛,,/
(ン'"゛ (ン'"゛ `″ ゙l 丿 `゙゙゙゙゛
゙'"`
一瞬で調べられることすら他人に頼る これが考えさせずに詰め込む日本の教育の成果
戦前はどうだったのよ
さっさと教えてくれませんかね?
お断りします お断りします ハ,,ハ ハ,,ハ ( ゚ω゚ )゚ω゚ ) お断りします / \ \ お断りします ((⊂ ) ノ\つノ\つ)) (_⌒ヽ ⌒ヽ ヽ ヘ } ヘ } ε≡Ξ ノノ `Jノ `J
無駄に酸素を消費するだけのゴミクズ以下の人たちでしょ? せめて俺の役に立って社会に貢献してくださいな
>>852 WIN32_LEAN_AND_MEANを#defineしているなら、それを消せ。
いつも思うんだが、性格悪い住人が多すぎだろ 早く答えを教えてあげればいいものを、無駄なやり取りで無駄にスレを消費するだけ
>>866 _,,..r'''""~~`''ー-.、
,,.r,:-‐'''"""~~`ヽ、:;:;:\
r"r ゝ、:;:ヽ
r‐-、 ,...,, |;;;;| ,,.-‐-:、 ヾ;:;ゝ
:i! i! |: : i! ヾ| r'"~~` :;: ::;",,-‐‐- `r'^!
! i!. | ;| l| ''"~~ 、 i' |
i! ヽ | | | ,.:'" 、ヽ、 !,ノ
ゝ `-! :| i! .:;: '~~ー~~'" ゙ヾ : : ::|
r'"~`ヾ、 i! i! ,,-ェェI二エフフ : : :::ノ~|`T <本人さんチース
,.ゝ、 r'""`ヽ、i! `:、 ー - '" :: : :/ ,/
!、 `ヽ、ー、 ヽ‐''"`ヾ、.....,,,,_,,,,.-‐'",..-'"
| \ i:" ) | ~`'''ー---―''"~
ヽ `'" ノ
868 :
デフォルトの名無しさん :2009/01/06(火) 22:10:05
もうだめだこのスレ
まだだ。まだ終わらんよ
870 :
852 :2009/01/06(火) 22:13:35
>>865 ありがとうございます!!!、おかげで使えるようになりました!!!
最近C++とWin32APIを勉強し始めたので、ど素人丸出しの質問すいませんでした
API関連なら、普通の人間は必要に応じてヘルプを確認して解決するし、 わざわざここで質問を書き込むのはAPI云々以前の奴だけだからな。
この世に無駄なものなどないんじゃ きっと誰かのやくにたっておる
874 :
デフォルトの名無しさん :2009/01/06(火) 22:16:42
透明あぼ〜んの圧縮率が異様に高いスレ
ここはネタスレですよ?
ヘッダが足りなくて使えないってWin32API以前の質問じゃん ネタレス返されても仕方ない
スレが伸びて良いことよ
MSDN読んでると、関数やCOMインターフェイスについて 「この関数はVistaまでは使えるよ。だけど、そのあとは知らないよm9(^Д^)」 みたいなことが書いてありますが、本当にWindows7でなくなってしまうのでしょうか。
Windows7ではWin32APIが廃止されますので今のうちに.NETに移行しましょう
そうそうだからもうこのスレにも来なくていいよ
止まらない、憎しみの連鎖。
了解です
Win64APIとかできるの?
お気に入りのCOMインターフェイスがDeprecatedの烙印を押されたこの悲しみをどうたらいいの
>>884 できるもなにもとっくにあるが?
お前はいったいいつの時代の人間だよ?
>>885 かわいそうに・・・せめてあなたにもDeprecatedしてあげる・・・。
64ビット環境専用のAPIってあるのか? Itanium専用ならあるが、今時あれをWin64APIと呼んで良いかどうか。 Windows2008R2で追加され、なおかつWindows7で実装されなければ、 真のWin64APIの誕生かもしれんね。
>>889 専用も何もコードレベルの互換性のために使い方を同じにしているだけで、
64bitでコンパイルすればWin64APIが利用されるだけ。
呼んでいいも何も無い。
>>878 まだWindows 7が出ていないから何も書いていないだけでは?
たしかに特定のバージョンでしか使えないと明確に記してあるものも稀にあるが、
そういうのは大体があるなど大抵無くて困らない存在。
どうせ互換モードで動くだろ Vistaで古い非公開APIの大部分が廃止されたが それが原因で動かないソフトはXP互換モードにすると動く
でも、フォルダ内に設定ファイルをつくるとシボンヌ
フォルダ操作時のカチカチ音はどのAPIでならしてる?
PlayKachiKachiSound
> The PlayKachiKachiSound function just plays a "Kachi-Kachi" sound. > Requirements > Minimum operating systems Windows X
>>894 書き込み可能なアクセス権を設定すれば動くだろ
それですべて解決 とは限らないのが
急増する「ネットいじめ」で意見交換
滋賀県教委の「いじめ対策チーム委員会議」が6日、大津市の県庁であった。新たな
社会問題として急浮上した「ネットいじめ」の実態について、小中高生や保護者、教員ら
16人が話した。
対策チームは、現場の声を生かし、いじめ対策を探ろうと2006年秋に発足した。
県教委は会議を通じて意見を集約し、「ストップいじめアクションプラン」を作った。
教員からは「『キモイ』『ウザイ』などの言葉で気持ちを表現することで、相手の反応を
止めてしまう側面がメールにはある」という指摘があった。
土山中3年井原慎さん(15)は「他校の状況が分かり、自分の学校の取り組みも発表
できたことがよかった」と話した。
http://www.kyoto-np.co.jp/article.php?mid=P2009010600177&genre=C4&area=S00 このスレみたいw
ここの連中は小学生並w
どっちかっていうと馴れ合いのキモイ集団に見える
windowsでマルチコアなりSMP環境において複数のスレッドを起動した場合、起動した(スケジューラが割り振った)CPUで必ず実行されるんでしょうか? 誰か知ってる?
GetProcessAffinityMaskの説明を読む
さいきんWin32APIを始めたど素人の素朴な疑問なんですが、 どうして、メッセージループの中でDispatchMessageせずに そこのWndProcの中身を書かずに わざわざWinMainとWndProcに分けるのでしょうか? すいませんアホな質問ですが手取り腰取りお手柔らかにおしえてください。
はい滑った
>>904 わざわざGetProcess〜を挙げられたって事は、
プロセス単位でしかできないんだろうな〜とぐらい察するべき。
すいません、変な日本語でした(汗 WinMainのメッセージループの中で、わざわざDispatchMessageせずに 直接メッセージ処理のコードを書けばいいと思うのですが どうしてわざわざWinMainとWndProcに分けるのでしょうか?
sendされるメッセージは無視ですか
>>909 お前か!5000行のメインルーチンなんか書いて俺にメンテさせてる奴は!
うんこしてください
>>909 ボタンみたいなコントロールのコードも自分で書くんか?
レスありがとうございます。
やっぱり基本的に一緒に書いてもいいんだけど
それだとコード管理が大変だ、という要因だけなんでしょうか?
そのためにコールバックさせてるんでしょうか?
>>910 sendされるめっせーじですか・・
ヒントありがとうございます。調べてみます。
>>909 そもそも間接的にプロシージャーを呼び出すルールがあるから、
他人の作ったコントロールのカスタマイズが出来るのに、
お前は、もろに狭い視点でしか物を考えられないよな。
日常でも目先のことしか考えないとか、視野が狭いと周りからいわれているだろ。
>>907 ,908
thx
つー事は、意図的に指定し無い限り、複数の重く長いスレッドが特定のCPUを独占して、使ってない方のCPUはガラガラって事はあり得ないって事ですかね?
この辺りの、カーネルが起動中のスレッドを実行するCPUを切り替えるルールみたいな物って公開されてますかね?
917 :
909 :2009/01/07(水) 13:27:57
>>915 >他人の作ったコントロールのカスタマイズが出来るのに、
なるほどそういう利点があるんですか。
すいません
>間接的にプロシージャーを呼び出すルール
というのをもうちょっと教えてもらえないですか?
>>917 プログラムを作るときに、派生出来ないようにして全機能を一つのクラスにベタ書きするのか?
さっきから吸いませんって何を吸わないんだお前等は
921 :
909 :2009/01/07(水) 13:42:42
>>919 ということは、汎用性を高めるために
WinMainとWndProcを分けDispatchMessageを使ってコールバックする
仕組みにした、というのが正解ということですかね?
それなら理解できました^^
ありがとうです。
そもそも同じプロシージャでいくつもウィンドウが作れるだろう
そもそろ知らないならレスしないでください。
>>923 知らないならレスしないでください。ウザイだけです。
>>918 知らないならレスしないでください。ウザイだけです。
LBN_SELCHANGEでメッセージをキャッチすると、一回のクリック選択で4回もメッセージが飛んでくるんですが、 それで正しいんでしょうか?
一回クリックしてるつもりが実は四回クリックしてる
とりあえずspy++で様子を見る
>>929 知らないならレスしないでください。ウザイだけです。
知らん
俺も知らない。
>>928 ,929
すいません。どうやら原因は僕のおっぱいでした。考えてくれてありがチョリース!
>>933 何処に?
該当部分を数文で良いからコピペして貰えると助かる
>>933 いつもの口だけ野郎ですね。わかります。
DefWindowProc(NULL, 0, 0, 0); を実行するのは何か意味あるんですか
あるスレッドがEnterCriticalSectionしたのを別のスレッドがLeaveCriticalSectionできるけど、こんなもんなの?
お前がそれでいいならそんなもんだよ
クリティカルセクションは速度重視なのと、他プロセスと共有できないから 自分の責任で使えって事だろうな。 その辺厳密にやりたければミューテックス使えばいい。
946 :
943 :2009/01/07(水) 20:02:39
クリティカルセクションはEnterとLeaveをペアで使う物だろ EnterしてないスレッドでLeaveした場合の動作は不定じゃなかったか?
MeteordSection
まだいけるなこのスレ
>>943 Win9xではできなかった気がする。
さらに言えば、将来にわたって使える保証もないし。
950Get!!!!
libファイルに_tWinMainを定義したのを作って、ほかのプロジェクトでlibをリンクしてプログラムを動かそうと思うと、 リンク時に_WinMain@16が未解決となってビルドが失敗してしまいます。 libプロジェクトも、アプリプロジェクトもUNICODE文字が設定されていることも確認済みですが、 他に考えられる原因はどういったものがあるのでしょうか
>>943 LONG RtlLeaveCriticalSection(LPCRITICAL_SECTION lpcs)
{
if(--lpcs->RecursionCount == 0){
return InterlockedDecrement(&lpcs->LockCount);
}
lpcs->OwningThread = 0;
LONG ret = InterlockedDecrement(&lpcs->LockCount);
if(ret < 0){
return ret;
}
RtlpUnWaitCriticalSection(lpcs);
return 0;
}
EnterしないでLeaveを呼ぶとRecursionCountが正しい値では無い為に一応「できてしまう」という事か
まあAPIの使い方が間違ってるからそれ以前の話だけどな
>>952 UNICODEだけ定義して_UNICODEを定義してないってオチだろ
BITMAP構造体のbmBitsPixelが表すのは1ピクセルあたりに使われる情報量ということは分かるんですが、 任意のビットマップがARGBそれぞれに何ビット使ってるかを知るAPIとかってありますか? パレットを使う場合は、そのパレットのARGBについて知りたいんですが、
後出しですいません。DIB限定です。
そもそもDIBにAは無い
>>957 知らないならレスしないでください。ウザイだけです。
>>955 BITMAPV4HEADERのbV4RedMask, bV4GreenMask, bV4BlueMask, bV4AlphaMask
パレットは各色8bit固定
>>960 それの取得ってGetDIBitsとかですか?
>>961 学生さんだね。
社会に出ればわかるけど冤罪も罪のうち、疑わしきは罰するってのは法治国家の不文律だよ。
>>963 年率だとペンゲーが神過ぎて無理っぽいが、トータルなら超えた筈
ペンゲーは所詮ヨーロッパのそれなりの国の通貨。
アフリカンクオリティの敵ではない!
きめええ
966 :
デフォルトの名無しさん :2009/01/08(木) 11:41:24
>>954 両方のプロジェクトでどちらも定義されていることを確認しました。
(プロジェクトのプロパティのところでunicode文字セットを選ぶと両方定義されているようです。)
両方のプロジェクトでマルチバイト文字セットを選ぶと、ビルドできました。
2>MSVCRTD.lib(crtexew.obj) : error LNK2019: 未解決の外部シンボル _WinMain@16 が関数 ___tmainCRTStartup で参照されました。
2>\UseLib.exe : fatal error LNK1120: 外部参照 1 が未解決です。
MSVCRTD.libが_wWinMain@16を探してくれればリンクできる気がするのですが・・・
URLDownloadToFileの使い方教えて
>>968 ,-,,,,、 ,-,,,,_
,,,,,,,、 ,,,,,,_゙'-,. "'i、 .,,,,,,,、 ,,,,,,,゙'-、^'i、 .i,¬ー-、
゙''i、`\ \.`''-\,,l゙ `'i、 `''i、 ‘'-,`''-\,,l゙ ^'i、 ,)
丿 ,l,_,,,,,,,― |i、 } 丿 Z_,,,,,,-ヘヽ、゙l | .| __
,/ ,,-----=@,,,7゙"` ,/ ,,-----=@,,,)゙″ | | .,,-'",,,,,,、`'i、
,/`./ / 丿 / .,/` ,l゙ 丿 |゙ヽ,,,―" `゙'ュ‐゙_,/゛ | |
.,/.,,/` /` 丿 ,/ ,/ ,/ 丿 \,,,,-‐,! '`,/ .| l゙
,,-",,/ 丿 ,i´ ,/_,/ 丿 ,i´ 丿 ,,,i´ ,! |
i彡‐" ,/` ,/` ィ,ン'" / ./ ,/ .| | |
,,i´ ./ ,,‐`./ ,/`.,┤ | | | ./゙|
.,/ .,/ ,/ .,/ / 丿 | .| { { .,/ ,l゙
,,/ ,/` ,,/ ,/` / ,、゙'-,| l゙ | }, ._/.ノ
_,/゙,,/゛ _,/゙,,/゛ l゙ .,/`\ | ヽ,_ ゙"゛,,/
(ン'"゛ (ン'"゛ `″ ゙l 丿 `゙゙゙゙゛
゙'"`
ググりましたけど、参考になるモノがまったくありませんでした
コールバック使わないならこれだけで済むのに URLDownloadToFile(NULL,"url","path",0,NULL);
>>967 俺も同じことやろうとしたことがある。
無理みたいなので、諦めてlibファイルのWinMainの名前を変えて、
プロジェクトにlib内のそれを呼ぶだけのコードを追加した。
___tmainCRTStartupでググれば山ほど解決策が出て来るんだが ググれないゆとりだからこんな所で質問するのだろうけどね
ググって何でしょうか? 最近インターネットをはじめたのですが、差し支えなければ教えてください。
>>975 差し支えあるので
お断りします
お断りします
ハ,,ハ ハ,,ハ
( ゚ω゚ )゚ω゚ ) お断りします
/ \ \ お断りします
((⊂ ) ノ\つノ\つ))
(_⌒ヽ ⌒ヽ
ヽ ヘ } ヘ }
ε≡Ξ ノノ `Jノ `J
>>974 そうか?
LIB内でWinMainを定義する事例は全然見かけないけど俺の探し方が悪かったか。
♪ △ ♪ (゚ω゚)ノ ググ〜 ~└( (♪ ( ヽ ♪ △♪ ヽ(゚ω゚) ググ〜 ♪) )┘♪ ノ > ♪
次スレは必要ですか?
い・り・ま・せ・ん
>>977 LIB云々でなくても出るエラーなんだから関係ありそうなのを当たってみればいいだろが
ゆとり世代に応用力というものは無いのかね
質問を変えます。 ソースコード内でwWinMain関数を定義した場合には、明示的にエントリポイントを指定しなくてもリンクされるのに、 libファイル内のwWinMain関数を用いる場合には、どうしてWinMainの方から検索されて、しかもエラーになるのですか。
>>984 ,-,,,,、 ,-,,,,_
,,,,,,,、 ,,,,,,_゙'-,. "'i、 .,,,,,,,、 ,,,,,,,゙'-、^'i、 .i,¬ー-、
゙''i、`\ \.`''-\,,l゙ `'i、 `''i、 ‘'-,`''-\,,l゙ ^'i、 ,)
丿 ,l,_,,,,,,,― |i、 } 丿 Z_,,,,,,-ヘヽ、゙l | .| __
,/ ,,-----=@,,,7゙"` ,/ ,,-----=@,,,)゙″ | | .,,-'",,,,,,、`'i、
,/`./ / 丿 / .,/` ,l゙ 丿 |゙ヽ,,,―" `゙'ュ‐゙_,/゛ | |
.,/.,,/` /` 丿 ,/ ,/ ,/ 丿 \,,,,-‐,! '`,/ .| l゙
,,-",,/ 丿 ,i´ ,/_,/ 丿 ,i´ 丿 ,,,i´ ,! |
i彡‐" ,/` ,/` ィ,ン'" / ./ ,/ .| | |
,,i´ ./ ,,‐`./ ,/`.,┤ | | | ./゙|
.,/ .,/ ,/ .,/ / 丿 | .| { { .,/ ,l゙
,,/ ,/` ,,/ ,/` / ,、゙'-,| l゙ | }, ._/.ノ
_,/゙,,/゛ _,/゙,,/゛ l゙ .,/`\ | ヽ,_ ゙"゛,,/
(ン'"゛ (ン'"゛ `″ ゙l 丿 `゙゙゙゙゛
゙'"`
応用の効かない奴だな そういう奴はマウス操作でらくらく開発な.NET使ってろよ
>>984 プロジェクトのプロパティのエントリポイントのところでwWinMainCRTStartupを明示的に指定してみたらどう?
コマンドラインで似たようなことやってみたら/entryでうまくいったんで。
明示的に指定したらできるのはわかってるんだよう・゜・(つД`)・゜・
MFCのリンクするライブラリがANSIとUnicodeで違う理由を考えてみよう
WinMainなんて使うからだろ エントリポイントから自分で書けよ
EnumProcesses OpenProcess でプロセスIDとハンドルを取得後に EnumProcessModulesを実行するとアクセス拒否エラー(5)に なってしまいました。 何が原因がわかりません・・・。
権限が足りてない
>>988 VC++のリンカはobjの中からしか(w)main/WinMainの類を探さないらしいということで納得するしかないと思う。
あと、気づいていないかもしれないけどスレ違い、VC++のスレで聞いて。どうせちょうどもうすぐ1000だし。
もうだめだこのスレ
379 名前:デフォルトの名無しさん[sage] 投稿日:2008/12/27(土) 17:11:27 もうだめだこのスレ 699 名前:デフォルトの名無しさん[sage] 投稿日:2009/01/05(月) 02:24:55 もうだめだこのスレ 765 名前:デフォルトの名無しさん[sage] 投稿日:2009/01/05(月) 19:48:30 もうだめだこのスレ 829 名前:デフォルトの名無しさん[sage] 投稿日:2009/01/06(火) 18:03:41 もうだめだこのスレ 868 名前:デフォルトの名無しさん[] 投稿日:2009/01/06(火) 22:10:05 もうだめだこのスレ 995 名前:デフォルトの名無しさん[sage] 投稿日:2009/01/08(木) 23:13:10 もうだめだこのスレ
やったー1000Getやー
999なら長門は俺の嫁
/ヾ_/ヽ
. '´v' ⌒ヾ. / ̄ ̄ ̄ ̄ ̄
、卯!filリリ!゙l i | [葉山 小十乃(黒ロリ)]
.ノi!゙(!|゚ ヮ゚ノリ' <
.ノ ⊂)本iつi{》二二二> | 我ら!
´(((. ノ/_iヾ, ノ \_____
.`~じ'フ~
__ _
f ミv'´{ごづヾ彡 / ̄ ̄ ̄ ̄ ̄
゙i´!(((从 从リ`! | [白藤 菜月(白ロリ)]
! i゙ (l!゚ ヮ゚ノ!| i <
ノノ .⊂)本iつ ヾ, | ゴスロリ探偵団が!
ζ´ ノ/_iヾ ζ \_____
. `~じ'フ~
旦
'´ ̄`ヽ / ̄ ̄ ̄ ̄ ̄
i´ノノノヽ))) | [聖 三咲(赤ロリ)]
Wリ゚ -゚ノリ <
←⊂)_介」つ|〕 |
>>1000 ゲット!
く/_|_|〉 \_____
〈_ハ_〉
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。