1 名前:デフォルトの名無しさん mailto:sage [03/10/09 00:41.net] とにかくdat落ち必死なこの話題をどうかひとつ。 関連スレ: 【GUIライブラリ】wxWindowsでのひょーん pc2.2ch.net/test/read.cgi/tech/1052186697/
377 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 11:56:22 .net] スタティックリンクにしてもEXEのサイズ小さくて OSのルック&フィール(特にWindows)で ってある? wxWidgetsとかgtkmmとかはランタイムが巨大だしなー マルチプラットフォームとか気にせずにWTLとかを素直に使った方が良いのかな?
378 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 12:33:59 .net] 誰かWTLとwxWidgetsを統合化して、超軽量のwxWidgetsを作ってくれないかなぁ。 ライセンス的にどうなるのか分かんないけど。
379 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 12:44:38 .net] >>377 >マルチプラットフォームとか気にせずにWTLとかを素直に使った方が良いのかな? Yes, that's right!! But, 一番賢いのはサイズなんてもう気にしない事。
380 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 13:15:37 .net] >>377 Java + SWTでがんばってください。 というのは冗談にしても、実行ファイルのサイズが数十kb以内なんてのはプログラム開発者の グルーコード以外全部プラットフォームのAPIに丸投げしてなせる技だろうし、 少なくともマルチプラットフォームでってのはあきらめたほうがいいんじゃない?
381 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 13:30:05 .net] > マルチプラットフォームとか気にせずにWTLとかを素直に使った方が良いのかな? どうでもいいが、 一昔前って、 マルチプラットフォーム対応のUIライブラリで、ダサイのしかなかったよな・・・ なんで、Windowsに持ってくるとあんなにダサイんだ?というものしか。 今は、SWTなんかは、まだましだけど
382 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 19:35:46 .net] Tkがダサいと申したか
383 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 21:03:33 .net] Tkは普通じゃん?
384 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 16:42:33 .net] >>378 つ wxForms WTLは入ってないけど、ポトペタできてクロスコンパイルできるらしい。
385 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 19:57:14 .net] Turbo C++ Explorerじゃ無理か。
386 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 11:25:03 .net] 保守したほうがいい?
387 名前:デフォルトの名無しさん mailto:sage [2007/12/12(水) 23:03:56 .net] 頼んだ
388 名前:デフォルトの名無しさん mailto:sage [2007/12/13(木) 01:26:15 .net] お前らの連携のよさと言ったら!
389 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 12:44:24 .net] めも ttp://www.thefreecountry.com/sourcecode/gui.shtml
390 名前:デフォルトの名無しさん mailto:sage [2008/01/20(日) 23:06:16 .net] どなたかOMGUIのサイトの行方を知りませんか? ttp://www.omgui.org/ (参考:ttp://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl?BoostGUI) 昨年夏頃までは見れてたように思うのに、今はドメイン売り出し中って…。
391 名前:デフォルトの名無しさん mailto:sage [2008/01/22(火) 02:21:04 .net] >>390 ttp://cia.vc/stats/project/omgui
392 名前:390 mailto:sage [2008/01/22(火) 07:31:59 .net] >>391 ありがとうございます。プロジェクトそのものは消えてないようで助かりました。
393 名前:デフォルトの名無しさん [2008/02/04(月) 20:09:28 .net] ttp://dclib.sourceforge.net/api.html#gui_widgets
394 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 23:33:39 .net] こんな感じかあ ttp://www.geocities.jp/mocchi_2003/soft_readme/dlib_patch/dlib_patch_sample1.png
395 名前:デフォルトの名無しさん [2008/02/27(水) 23:42:49 .net] マイナーじゃないけど ttp://www.tcl.tk のtk見た目がだいぶましになったな tclに依存してなければいいのに
396 名前:デフォルトの名無しさん mailto:sage [2008/02/28(木) 05:14:11 .net] スクリーンショットにたどり着きにくい ttp://wiki.tcl.tk/13636 これか
397 名前:デフォルトの名無しさん [2008/03/26(水) 21:10:53 .net] FOX-Toolkitって使っている方いらっしゃいますか?
398 名前:デフォルトの名無しさん [2008/03/27(木) 11:17:17 .net] 使ってますよ。OpenGLも使ってます。
399 名前:デフォルトの名無しさん [2008/03/27(木) 22:39:58 .net] このスレの住人なら知っていますね、あの糞開発ツールのことを ・自分のプログラムのバグなのかコンパイラのバグなのかわからない ・他の仕事に応用できない糞開発ツールの独自世界を必死に学習している ・テキストエディタで書いたほうが効率的なのに糞UIツールを懸命に使っている ・糞開発ツールを批判すると「性格が悪いから糞ツールを批判するんだ」と言われる 糞だけど、政治的な理由で無理やり使わされているんですよね。 もう、あんな厨の作った糞ツールを我慢して使うのはやめましょう。 ・糞開発ツールを部下に押し付ける上司の命令は無視しましょう。 上司は糞開発ツールが使われる実績を作ることであの会社のごきげんをとっているのです。 ・糞開発ツールを使わせる上司の下では働けません、と上司の上司に直訴しましょう。 ・あの糞開発ツール提供会社には「おたくの糞開発ツールは話にならない」と突き放しましょう。 バグレポートなどしてはいけません。改善要求などもってのほかです。 あの会社はあなたたちのことをテスター/モルモットとしか思っていません。 ・あの会議で「糞開発ツールを使ったら生産性がxx%アップしました」 なんて話が出たら力強く机を叩き、会議室を出ましょう。 あの人たちは糞開発ツールをマンセーすることで立場を確保しているのです。 糞な開発ツールを糞だと言える、そんな当たり前の環境をみんなの力で取り戻しましょう。
400 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 17:40:10 .net] trixul ttp://trixul.com/ 使ったことはないけど、本屋で少し立ち読みしたら結構面白そうだったので。
401 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 22:31:26 .net] >>400 書名キボンヌ
402 名前:デフォルトの名無しさん mailto:sage [2008/05/11(日) 22:31:46 .net] XUL と違うんだね
403 名前:400 mailto:sage [2008/05/12(月) 01:56:52 .net] 書名は「Cross-Platform Development in C++」 ttp://www.amazon.co.jp/Cross-Platform-Development-C%2B%2B-Building-Applications/dp/032124642X/ref=sr_1_1?ie=UTF8&s=english-books&qid=1210522918&sr=1-1 XULと.NETのWindowsForms(XAML?)の概念を組み合わせてJavaScript(SpiderMonkey)でイベントハンドリングできるようなことが書いてあったような気がする。 でもSourceForge(ttp://sourceforge.net/projects/trixul/)の方を見た感じではまだまだ発展途上なのかな。
404 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 08:19:51 .net] Fox-ToolkitってIME制御ってできない? コピペで漢字入力はできるんだけどね。
405 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 12:20:00 .net] FoxToolkitの1.7の最新でIMEの制御もできて漢字入力もできるっぽい。
406 名前:本田 [2008/05/25(日) 06:20:45 .net] >>312 >C++/Tcl cpptcl.sourceforge.net/ >A C++ library for interoperability between C++ and Tcl >C++/Tk cpptk.sourceforge.net/ >A complete C++ interface to the Tk GUI toolkit
407 名前:デフォルトの名無しさん mailto:sage [2008/06/14(土) 21:46:52 .net] GUIまったくわからないC++初心者が手を出しやすいGUIってありますか?
408 名前:デフォルトの名無しさん [2008/06/15(日) 00:03:43 .net] とにかく標準のGUIツールを使え マイナーなものは糞だからマイナーなんだ
409 名前:デフォルトの名無しさん mailto:sage [2008/06/15(日) 00:22:48 .net] 標準=Qt/wxWidgets?
410 名前:デフォルトの名無しさん mailto:sage [2008/06/15(日) 14:04:34 .net] >>409 そのOSの標準GUIからってことじゃない? いきなりクロスプラットフォームなんて欲張りだと思う
411 名前:デフォルトの名無しさん mailto:sage [2008/06/16(月) 09:26:28 .net] MFCみたいなこれって何語っていうようなカスもあるお。
412 名前:デフォルトの名無しさん mailto:sage [2008/06/16(月) 09:58:39 .net] Windowsで初心者なら.NET一択じゃね ウンコウンコ言われながらも、情報量が圧倒的過ぎる
413 名前:デフォルトの名無しさん mailto:sage [2008/06/16(月) 10:06:46 .net] 情報量は圧倒だが、アウトプットのアプリは皆無。
414 名前:デフォルトの名無しさん [2008/06/16(月) 13:28:18 .net] >>413 俺もそれ不思議。 「delphiで作った有名ソフトって何があるの?」に対抗して 「.NETで作った有名ソフトって何がある?」スレないのかな?
415 名前:デフォルトの名無しさん [2008/06/16(月) 13:32:49 .net] .NET(C#,C♯,C#)で作られた有名なアプリって何? pc11.2ch.net/test/read.cgi/tech/1213590713/ 立てました
416 名前:デフォルトの名無しさん mailto:sage [2008/06/16(月) 13:37:21 .net] 一番好きなプログラミング言語は? itpro.nikkeibp.co.jp/article/OPINION/20080528/304478/ プログラマに対象を絞って聞いた「一番好きなプログラミング言語」は,「C/C++」(24%)が最も多く, 「Visual Basic(VB)」(20%),「COBOL」(13%)と続いた(図2)。企業の基幹システムに浸透しつつあるJavaや, Webアプリケーション関連で使われることの多いスクリプト言語は,上位3位までに食い込むことができなかった。 C/C++ 24% VB6.0 20% COBOL 13% Java 9% Perl/PHP 7% C# 2% ← m9(^Д^)プギャー 一番好きな言語と対比する格好で「最もよく使っているプログラミング言語」も聞いてみたが, ここでは「C/C++」と「VB」の順位が逆転,「VB」が一位だった。
417 名前:デフォルトの名無しさん mailto:sage [2008/06/16(月) 21:56:13 .net] C#はいい言語だと思うんだがなぁ… .NETじゃくネイティブコードコンパイラなければもっと使ってるのに… COBOL(13%)ってのはITPro(というか日経)の読者層を反映しすぎてる気がする
418 名前:デフォルトの名無しさん [2008/06/19(木) 23:55:15 .net] ここにも貼っておく ttp://torjo.com/egui/
419 名前:デフォルトの名無しさん mailto:sage [2008/08/10(日) 00:45:15 .net] VB6.0にCOBOLが2〜3位って、時代に取り残されたおっさん確定だろ そんな奴らにC#の良さが分かるとは思えないw
420 名前:デフォルトの名無しさん [2008/08/10(日) 06:46:14 .net] >>419 4番目にJavaはともかく、5番目にPerl/PHPだもんなw
421 名前:デフォルトの名無しさん mailto:sage [2008/08/10(日) 08:56:54 .net] GC.AddMemoryPressureが追加されるまでのC#は実用にならないゴミだったから仕方が無い
422 名前:デフォルトの名無しさん [2008/08/11(月) 04:31:35 .net] >>417 海外だとC#で書いたものが多くなってますよね 日本じゃまだ目新しすぎてついて行けないだけじゃないかなぁ C/C++が一番多いのは納得だけど、VB6が20%なのは厨房SE/PGが多い日本ならでわかと。
423 名前:デフォルトの名無しさん mailto:sage [2008/08/11(月) 07:57:16 .net] Delphiがその他のどのくらいの割合なのかが気になる上に VB6.0て分けるぐらいならC/C++も分けるべきだったろに。
424 名前:デフォルトの名無しさん mailto:sage [2008/08/11(月) 20:01:01 .net] >>422 厨房がVB6なんて知ってるわけねえだろ。
425 名前:デフォルトの名無しさん mailto:sage [2008/08/12(火) 08:25:15 .net] >>424 はぁ?リアル池沼乙。
426 名前:デフォルトの名無しさん mailto:sage [2008/08/12(火) 10:38:25 .net] >>422 の言葉が悪いな 厨房じゃなくてオッサンなだけなんだよ >>416 の調査のメインの対象が >回答者の年齢構成は,40才代が最も多くて39.4%,続いて30才代が34.8%, >50才以上が19.3%,20才代が6.2%だった という年齢層分布で察しる
427 名前:デフォルトの名無しさん mailto:sage [2008/08/24(日) 00:05:28 .net] gtkmm
428 名前:デフォルトの名無しさん mailto:sage [2008/08/25(月) 00:03:40 .net] だれか、使いやすいのを作ってくれ
429 名前:デフォルトの名無しさん mailto:sage [2008/09/05(金) 22:59:18 .net] >>426 でも20代なんてカネ稼いでない層だろ。 仕事でも無いのにプログラムを書くような人間が多い時代でもないだろ。 今の20代が10年後に何を好むのかは気になるけどな。
430 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 00:25:07 .net] >>429 > でも20代なんてカネ稼いでない層だろ。 え? 現役で「プログラマ」をやってるのは圧倒的に20〜30代が多い、でしょ? 少なくとも日本では。 業界にもよるが、基本的にプログラマは下っ端の兵隊で、高級なデベロッパが ほとんど存在しないという文化だからね。
431 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 02:22:15 .net] >>430 20代。 いわゆるプログラマではほとんどカネが稼げない現実もあるだろうなぁ。 稼げないと好きになんてならないだろうに。
432 名前:デフォルトの名無しさん [2008/09/06(土) 02:59:58 .net] 脱しようと今起業しているがなかなかプログラムだと稼げないね 今年入った収入は1万8千円 受注仕事やるといいんだろうが、起業している意味ないしなあ
433 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 03:16:16 .net] 1万8千円って俺の月収より低いな
434 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 10:49:21 .net] 携帯ゲームあたりだろうか
435 名前:デフォルトの名無しさん mailto:sage [2008/09/06(土) 23:25:16 .net] WTL
436 名前:デフォルトの名無しさん [2008/11/07(金) 23:19:54 .net] 自作してみたいんだが、どうすればいい? 環境は WindowsXP で VC2008EE
437 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 01:28:14 .net] 既存APIのラッパーを作ることから始めてはどうか
438 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 01:31:14 .net] 質問する段階なら、APIの薄いラップのみでいいんじゃない 物足りなくなったら、他のツールキットがどういうアーキテクチャになってるか 調べて取り入れるとか あと、オレオレライブラリの類は、演習と割り切って作らないと前に進むのが遅くなるよ 結局、既存のツールキットを使ったほうが便利な場面も多いし ってこのスレで言うことじゃないなw
439 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 01:33:29 .net] ボタンもリストも基本はWindow。その辺はググれば出てくる。 多くの人間が通る道として、それらをC++でラップしたコントロールを作る。 そしてメソッドで対応するのが面倒になり、GetHwnd()とか作ってごまかして終了する。 VC2008EEで生産性を追及してGUIを自作したいなら、個人的には ResEditとかフリーのリソース作成ツールが吐き出したソースを サポートする形にするのが良いかと。
440 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 17:29:15 .net] ふむ、アドバイスdクス まず、ラッパからやってみるよ。 できたら晒しにくるよ。
441 名前:デフォルトの名無しさん [2008/11/08(土) 22:08:18 .net] ラッパやってみたけど、うまくいかない。。orz アドバイスくれorz www.geocities.jp/hoge12make/ 置き場を↑にする
442 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 22:30:22 .net] メンバ関数名にまでWindowは付けなくていい。 あとメッセージループもメンバ関数にしたらどうだろう。 エラーの原因はポインタの扱いだから、 その辺復習しながら作るといいよ。
443 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 23:43:45 .net] 久しぶりにネット繋いだらVC++6.0に怒濤のごとく更新入った
444 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 23:53:16 .net] >>442 アドバイス有難う。 うまく表示できた。 さて、ウィンドウの表示はできた。 次は、 LRESULT CALLBACK WindowProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) の中でしているのをどうするかだ。。。 ここで、メッセージループをしているのをどうにかしたい。 じゃないと、ラッパを作る意味がないきがする。
445 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 00:13:01 .net] >>444 WindowインスタンスごとにVirtualAllocで確保した領域に ECXにthisを入れてメンバのWndProcに飛ぶコードを動的生成して それをRegisterClassExでコールバックとして渡しておく。 そうすればWindowsが直接メンバ関数を呼んでくれるようになる。 あとはそれをOnXXXとかのvirtualなハンドラに飛ばして、 必要に応じて外部に委譲させておけばおk。
446 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 01:47:00 .net] >>445 ググって、VirtualAllocこれが何かはわかった。 (呼び出し側プロセスの仮想アドレス空間に領域を確保) が、そのほかの部分がわからない。 もうちょっと噛み砕いてお願いしたい。
447 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 02:04:48 .net] とりあえず他でやって欲しい。
448 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 02:05:45 .net] マイナーGUI(ラッパか・・・)作ってるからいいんじゃね?
449 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 02:27:18 .net] >>446 君がどういうレベルかわからないと説明は難しい。 stdcallとcdeclは知っている? clのABIはthiscallでECXにthisが入るのは知っている?
450 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 02:41:11 .net] 私のレベルは、簡単なものならAPIをガリガリでモノを作れる。 MFCは使ったことなし。 >stdcallとcdeclは知っている? これは名前は知っている。 >clのABIはthiscallでECXにthisが入るのは知っている? これは、知らない。 cl・・・コンパイラ? ABI・・・アプリケーション・バイナリー・インターフェイス? thiscall ≒ cdecl? ECX・・・アセンブリは全く知らない つまり、アセンブリを知らないとできないってこと?orz
451 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 03:14:18 .net] >>450 アセンブリと言っても別に難しい知識は必要ない。 C言語が使えるんなら、レジスタとスタックの操作、 つまりmovとpushくらいは3分でわかるはず。 そして引数がスタックに積まれることが理解できれば良い。 そのスタックをどこで戻すかの違いがstdcallとcdecl。 インスタンスメソッドに対してはインスタンスが引数として扱われる。 それがcl(VC++のコンパイラ)ではECXで渡されるということ。 ちなみにgccだと第一引数としてスタックに積まれる。 こういう呼び出し規約のことをABIと呼ぶ。 なぜこんな知識が必要か? それはインスタンスメソッドに対してコールバックさせるため。 実際にATLではこの方法が使われている。 ハッシュで済ませるんなら必要ないんだけど、 外部に委譲させるときに悩むことになる。
452 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 03:23:19 .net] ふと疑問に思って昔作ったGUIクラスをひっぱりだして覗いてみたら SetWindowLong( hWnd, GWL_USERDATA, (int)this ); みたいな感じのを使ってた。ハンドルと32bitデータを関連付けられるらしい。 で、Windowプロシージャで GetWindowLong( hWnd, GWL_USERDATA ); を使って、ハンドルから対応クラスのポインタをひっぱってきて Window別のイベントを処理してた。なつかすぃ。
453 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 03:33:48 .net] >>452 その方法だとたとえばウィンドウ上でIMEの入力をしているときに 候補の上でホイール回したりしてIMEが作ったhWndが飛んでくると 不正なポインタに飛ばすことになって落ちるよ。 結局、登録されたhWndかどうかチェックするとハッシュになってしまう。
454 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 07:15:09 .net] >>445 ウィンドウインスタンスごとにRegisterClassExって何か違うと思う。 ATLでやってるのは、StartWindowProcってのを登録しといて、 StartWindowProcの中でサンクつくって、次回以降はそれが呼ばれるようにする、っていう方法だったと思う。 >>453 俺はIME触ったこと無いから実際はどうなのか知らないんだけど、 そんなことがあったらそれIMEのバグじゃねーの?
455 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 09:30:36 .net] 同じくで、サンク作る方法は自分でも書いたことあったけども>>454 の意味はちまちまわからんとこが。 ATLのソースか、エディタのGreenPadがそんな方法使ってたから見てみてもいいかも。 わかりにくい上に機械語直接埋め込むから試しに自分でラッパ書いてみる、って段階ではどうかと思うが、早いし。 ウィンドウハンドルとthisを関連づける方法はGWL_USERDATAの他にSetProp/GetPropAPIもある。 ttp://hp.vector.co.jp/authors/VA022575/c/msgmap.html ttp://hilbert.elcom.nitech.ac.jp/~taki/program.html 一応この辺がその辺の話。
456 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 10:50:11 .net] 454だけど、実際にATLがどうやってるのかは>>455 のリンク先が詳しいのでそっち見てね。 あと、WndProcからthisを手に入れる方法を適当にまとめてみた。他にも方法あるかも。 どこにHWND↔thisの対応を入れておくか ・Set/GetWindowLongPtrを使う(GWLP_USERDATAを使うのか、cbWndExtraで確保しとくのか) ・Set/GetPropを使う(キーは文字列かATOMか) ・ハッシュテーブルを使う(排他制御はどうすんのか) ・サンクを使う(CPUのアーキテクチャごとにry) どのタイミングでHWND↔thisを関連づけるか ・WM_CREATEで(thisはCreateWindowの最後の引数か、グローバル変数から) ・最初にWndProcが呼ばれた段階で(thisはグローバル変数から) ・WH_CBTとかWH_CALLWNDPROCフックで(thisはグローバル変数から) ・そもそもWM_CREATEイラネ、CreateWindowを呼んだ後で ただしグローバル変数にはTLSも含む
457 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 12:24:53 .net] いくつか意見がでてるけど、個人的にはハッシュが一番楽じゃない?と思う。 std::map<HWND,[基底クラスのポインタ]> g_controlList; LRESULT CALLBACK WindowProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) { 基底クラス *p基底クラス = g_controlList[ hWnd ]; // コントロール別イベント処理 p基底クラス->OnEvent(msg, wParam, lParam); } 最近C++書いてないんで色々間違ってそうだけど、キモはこんな感じかと。 ここは、より良い方法がでてきたら差し替えることにして 次へ進んだ方が本人の為になるし、スレ的にも面白いw
458 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 13:50:14 .net] >>454 インスタンスごとにクラスを登録しているのはWindows Formsだね。
459 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 18:40:07 .net] この流れを見てるとこのスレの住人はやっぱり結構自分ラッパを書いてしまっているんだなあと感じて親近感がw しかし>>450 は付いてきているのか。周りが凄い盛り上がってしまってるけど。
460 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 21:38:28 .net] >>450 は単語一個一個調べたり、根が真面目そうなんで、 今、大量の情報がドカドカ出てきたので知らん部分をググってる最中じゃない? 期待がプレッシャーにならない程度にマターリ待つのが良いかと。 俺もラッパ作ちゃった1人なんだが、結局デザイナーツールの作成が面倒で 活用には至らなかった。 その辺までしっかり作った人っているの?
461 名前:デフォルトの名無しさん [2008/11/10(月) 00:28:53 .net] なぁ、>445 の方法って、ネットで探しても情報ないのな。 ATLのソース読んでみようと思ったけど、どこから読んだらいいのかわかんねw >450 は初心者っぽいしきつい気がするのは俺だけか? そういや、昔、CマガでGUIライブラリを作るってのがあったが あれは参考にならないか? もう、手に入らないけど。
462 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 02:05:47 .net] >>460 > その辺までしっかり作った人っているの? WideStudioってきもいけど凄いよね
463 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 06:11:25 .net] >>461 ATLについては>>455 >>445 の言ってるのはATLじゃなくてWindows Formsのことらしい
464 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 07:58:51 .net] 『組み込みGUI(ウィンドウ・システム)環境の設計と実装』って本 読んだことある人います? おもしろい?
465 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 08:11:08 .net] >>463 >455は手軽にthunk作るやり方。 ATLはCDynamicStdCallThunkが__AllocStdCallThunkの確保した領域に機械語つっこんでるぞ。
466 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 13:35:58 .net] >>450 適当にサンクを実装してみた。良かったら参考にしてみて。 ttp://www.yourfilehost.com/media.php?cat=other&file=KYSDK20081110.zip >>451 stdcallとthiscallの変換があるから単純にECXに代入するだけじゃダメだぞ? まあそれでも動くけどさ、ちょっと気持ち悪いよね。
467 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 15:47:24 .net] >>464 フレームバッファ直描きでウィンドウシステムを作る本だよ。 OSを作ったりとか、LinuxでXを使わないGUIを作ったりとか、 そういうことに興味がある人には面白いと思う。 Windowsアプリを作るのにはほとんど参考にならない。
468 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 21:28:35 .net] 一つずつ >>451 >つまりmovとpushくらいは3分でわかるはず。 mov・・・ジスタやメモリに、データの転送を行う push・・・スタックにデータを積む >そのスタックをどこで戻すかの違いがstdcallとcdecl。 このことでいいのかな? ttp://www.ne.jp/asahi/nagoya/ahomaro/builder/cpb-055.html >ECX レジストリと こんな場所がある、程度でいいのかな?
469 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 21:32:35 .net] >>452 >>453 >>454 調べたらこんな頁を発見 ttp://qwerty.s2.xrea.com/XC2CCCAB82FBBB2B9CDA4CBA4B7A4C6A4CFA4A4A4B1A4CAA4A4XWindowsSDKXA5ECA5B7A5D42FX2.xhtml サンク(thunk)って、調べても情報がないな。
470 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 21:34:28 .net] >>455 いま、ここまで 参照先のリンクの内容を理解するのに苦労している。 正直、難しい。
471 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 22:41:30 .net] >>469 wikipediaにあったぞ en.wikipedia.org/wiki/Thunk
472 名前:デフォルトの名無しさん mailto:sage [2008/11/11(火) 17:08:05 .net] WindowsXP SP2のDEPでATLのThunkが問題になってたような気がするんだけど、 あれは何でなんだろ?
473 名前:デフォルトの名無しさん mailto:sage [2008/11/11(火) 17:22:32 .net] >>472 ウィルス等がバッファオーバーフローでヒープに不正コードを埋め込むことの対策として ヒープのコードを実行できなくしたのがDEP。 ATLではサンクをHeapAlloc領域でやっていたため引っ掛かることになった。 今のATLはVirtualAllocでPAGE_EXECUTE_READWRITEで確保するため問題ない。
474 名前:472 mailto:sage [2008/11/11(火) 20:27:35 .net] >>473 なるほど、わかりやすい説明サンクスです。
475 名前:デフォルトの名無しさん mailto:sage [2008/11/13(木) 03:52:36 .net] おまえら! 言いたいのをガマンしてるなら、代わり俺が言ってやるよ! あくまでもおまえらの代弁だからな!俺が言いたいワケじゃないんだからな! なるほど、わかりやすい説明Thunkです。
476 名前:デフォルトの名無しさん mailto:sage [2008/11/13(木) 07:05:21 .net] さみぃw
477 名前:デフォルトの名無しさん mailto:sage [2008/11/17(月) 23:11:46 .net] こんな方法どうやって勉強しました?