MFC相談室 mfc23d.dll [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2016/09/21(水) 00:20:48.44ID:OfO+mYkd
Microsoft Foundation Classライブラリ専用スレです。

■MFC相談室 mfc21d.dll■
http://hibari.2ch.net/test/read.cgi/tech/1250919279/l50
■MFC リファレンス■
http://msdn.microsoft.com/ja-jp/library/d06h2x6e(v=VS.100).aspx
2020/06/10(水) 21:31:05.00ID:zGKCrjfQ
>>455
なるほど。C++/CLIだと、C++言語の高速性が活かせなかったのかな?
2020/06/10(水) 22:36:21.96ID:AiHbZWJh
最近MSが出したTerminalのソースみたらゴリゴリのモダンなC++の中でWindows API使ってて震えたね
何とかしてくれよ本当
2020/06/11(木) 10:03:27.11ID:Th6rh/3U
>>457
なんで?、Win32 API 使っても別に問題ないじゃない。
459デフォルトの名無しさん
垢版 |
2020/06/11(木) 11:41:53.07ID:DcPEy/qZ
MFCはゴミ
当時のMSの過学習の成果物
2020/06/11(木) 15:06:27.47ID:OAAeiR/0
>>459
と言ってもC++のクラスライブラリがこれしかない現実
2020/06/12(金) 05:06:01.94ID:mUcvmKZk
APIの極薄ラッパーなところが有り難いんだよ
余計なことを押しつけずAPIを使いやすくすることに徹してくれていて
2020/06/12(金) 08:17:50.58ID:70FlsBsC
MFCもFeature Packの後 更にBCGSoft買収して全部無料にするとか、
WPFもどっかのライブラリ買収して無料にするとかカッコいいアプリ作れるようにすれば開発者の意欲も沸くのにな
xamarinとか糞は買収するくせに
463デフォルトの名無しさん
垢版 |
2020/06/12(金) 09:43:15.85ID:F8A7CVPb
使い安くなってるか?
余計な手間が増えてるだけだろ?
2020/06/12(金) 15:34:56.34ID:bpI5hVyH
>>458
GUIを作るにはあまりに低レベルなAPIしかなくて
今の時代にそこから書くのは辛すぎる
もう一段上の抽象化レイヤーなりMFCみたいなクラスライブラリが欲しいところ
2020/06/12(金) 15:41:17.48ID:6Yfh5mGy
ココはMFCの相談室ではないのか・・
466デフォルトの名無しさん
垢版 |
2020/06/12(金) 15:48:58.95ID:1pXOSbLZ
Win32APIに対してのMFCは一段上に行ってない
抽象レイヤですらない
2020/06/16(火) 01:13:30.22ID:0JLXIDEj
>>466
薄いラッパーみたいなものかねえ
2020/07/06(月) 15:47:04.85ID:Sr9djJNI
「東京版CDC」設立準備と小池都知事
https://this.kiji.is/652740458292626529
2020/7/6 14:16 (JST)
2020/07/09(木) 02:40:38.41ID:DFLe4YjA
MFCの勉強する前にWindows SDKの勉強した方がいいってまじ?
2020/07/09(木) 02:48:49.25ID:sSml3bMj
物理を学ぶ前に数学を学んだ方がいい、という程度には。
2020/07/09(木) 06:41:13.42ID:jzluGOwX
MFCとAPIは同時に憶えられるよ
MFCはAPIの極薄ラッパーだかんね

MFC独自の概念、シリアル化とかドキュメントビューとか
APIあんまり関係ないのもあるけどね
2020/07/09(木) 07:45:04.33ID:dSC6yVgi
Win32 APIという超レガシーを今更勉強する気が起きるかどうか
昔はこれしかなかったからみんな頑張って勉強したけど
2020/07/09(木) 08:04:06.42ID:jzluGOwX
昔からあるというだけ
それで済む用事をわざわざ難しくする必要はない
2020/07/09(木) 08:40:17.74ID:sSml3bMj
勉強って言ったって、一々全部覚える必要はない
昔はgoogleとかないから名前覚えないと探せない問題はあったけど
今はよく使うものはなんとなく名前を覚えてしまう程度で充分だ
どうせエラーが発生したら調べることになるんだし
頑張るような要素はないと思うが
475デフォルトの名無しさん
垢版 |
2020/07/09(木) 09:37:01.56ID:vrNDocOm
>>469
むしろMFCの勉強はしない方が良い
というかMFCの勉強はしてはいけない
2020/07/09(木) 09:44:03.82ID:jzluGOwX
大きなお世話ってやつ
2020/07/09(木) 11:43:28.91ID:x9sAwct8
MFCやWin32APIの勉強なんてさほど必要ないよ。
英単語の暗記のようなものだから。
電話帳を勉強する必要ないのと同じ。
公式ドキュメントに書かれていない問題点や誤解しやすい点など、
先人の労苦をネットで調べるのは意味がある。
2020/07/09(木) 11:48:46.31ID:TlzlBxT2
MFCに関わることで起きる問題は
MFCと関わらなければ回避可能
2020/07/09(木) 12:42:41.81ID:jzluGOwX
女に関わることで起きる問題は
女と関わらなければ回避可能
だろ? おまえの人生は
480デフォルトの名無しさん
垢版 |
2020/07/09(木) 13:02:23.02ID:vrNDocOm
その発想は無かった
2020/07/09(木) 13:40:50.75ID:g4bG+/bQ
言い当て妙
2020/07/09(木) 18:36:04.35ID:DFLe4YjA
>>475
それを言ったら終わりだよー
2020/07/09(木) 18:59:07.47ID:jzluGOwX
本当にそう思ってるやつがこんなとこに来るのは荒らし目的
2020/07/22(水) 22:44:03.42ID:HWpUtmNc
うちの会社新人に研修でMFCやらせるんだけど大丈夫かな……多分創業当初から同じ課題渡してるんじゃないかな……
485デフォルトの名無しさん
垢版 |
2020/07/23(木) 00:35:10.40ID:4rdlbzE6
本番で使ってたらおぞましいが
研修なら反面教師に最適
486デフォルトの名無しさん
垢版 |
2020/07/23(木) 01:36:12.34ID:5yzO6ql9
C++使いがMFC使いたくないのは理解できるが、JavaとかPythonのようなモダン言語使ってる層ならわかりやすくて良いんじゃないの。
2020/07/23(木) 03:32:15.19ID:5ehZlcbf
>>485みたいなのはMFCすら使いこなせなかった人だし、
>>484の会社は潰れてないんだから問題ないのでは?
2020/08/06(木) 01:38:43.65ID:FpfultlR
ほかのC++のGUIライブラリ、例えばATL/WTLが
MFCに比べてそこまで使い勝手いいわけでもないけどな
些細なレベルで文句言ってただけ
2020/08/06(木) 04:10:33.67ID:yO4VBBsb
OWLは良かったんだけどな
490デフォルトの名無しさん
垢版 |
2020/08/06(木) 10:59:01.65ID:6QU45l4b
OWL>>>越えられない壁>>>MFC
だったよな
どうしてこうなった
491デフォルトの名無しさん
垢版 |
2020/08/07(金) 12:50:43.79ID:vhK9mMAk
これからはWinUI 3が標準になっていきそうだな
2020/08/31(月) 00:12:50.36ID:FOGtRXGJ
C++/CLIとC++/MFCのどちらがいいのだろうか?
C++/CLIはあまりメンテナンスされていないと聞くが
2020/08/31(月) 07:16:24.51ID:tHgQtCtq
その2つは比べるようなものでもないが?C++/CLIはFormsとMFCどちらも使える。
ただしC++/CLIでGUIアプリケーション作るのはもう推奨されなくなった。
494492
垢版 |
2020/08/31(月) 14:05:28.74ID:FOGtRXGJ
>>493
Σ( ̄ロ ̄lll) ガビーン
C++/CLIでMFCも使えるのですか!?

>ただしC++/CLIでGUIアプリケーション作るのはもう推奨されなくなった。

これってMSが推奨していないのですか?
2020/09/01(火) 14:19:37.57ID:/FoUQJki
今からMFCを勉強する方法ってありますか?
古い情報で学習しようとしても今と違いすぎていて無理ゲー
http://www.kumei.ne.jp/c_lang/indexmfc.html
496デフォルトの名無しさん
垢版 |
2020/09/01(火) 15:20:10.83ID:fuWow3G5
無駄
tcl/tk とか Qt とか wxWidgets やれ
2020/09/01(火) 15:55:24.00ID:226bbKWF
>>495
そんなに違うか?
俺、win95時代にmsuセミナーで憶えたけど
大筋は変わってないぞ
2020/09/01(火) 16:08:34.04ID:/FoUQJki
>>496
そ・・・そんな・・・
C++で書いたコマンドラインツールをGUIにしたいので、MFCがいいと思ったんですけど
tcl/tkはC++で使えないみたいなので、Qt とか wxWidgets がいいのですか?
しかし、長生きするのはMFCってことはないでしょうか
2020/09/01(火) 16:09:14.58ID:/FoUQJki
>>497
最初のサンプルからしてVS2019で全然ビルドできないのですけど
2020/09/01(火) 16:11:59.40ID:/FoUQJki
>>497
つーかWindows95の時代って何年前ですか?
今の話をしているのですよ?
501デフォルトの名無しさん
垢版 |
2020/09/01(火) 17:04:32.66ID:fuWow3G5
>tcl/tkはC++で使えないみたい

誰がそんな事言ったの?
使えるよ

MFC は無駄
2020/09/01(火) 17:08:44.94ID:/FoUQJki
>>501
そうだとしても何を使えばいいのかわからないよ
2020/09/01(火) 17:20:12.54ID:ABFUDvdT
このサイトの「Win32 Application」でMFCを使うという例はいくらなんでも古すぎるのでは。
Unicodeも一切想定されていないから、標準設定ではコンパイルエラーになりそうだし。
2020/09/01(火) 17:25:26.19ID:vLz2GEqc
普通に今でも MFC 使ってるぞ。
2020/09/01(火) 18:12:23.98ID:/FoUQJki
>>503
他に良いMFCの教材があればいいのですが
2020/09/01(火) 18:33:46.17ID:vLz2GEqc
>>505
まず、VS2019で、MFCのHello World的なものはビルドできる。
そっかっら後は、MSDN の英語版を読むといい。
日本語版は駄目。
2020/09/01(火) 18:48:11.66ID:/FoUQJki
>>506
そうだとすると学習コストが尋常じゃなくなりそうですね
Windows SDKで作るのは大変だし、MFCは学習が辛いし、どうしたものか
2020/09/01(火) 18:48:53.85ID:vLz2GEqc
>>503
MFCがWin32のラッパなのだから、別に不適切ではない。
afxwin.h
などのヘッダファイルが、新しいMFCでは名称変更になっているが。
2020/09/01(火) 18:49:44.51ID:vLz2GEqc
>>507
Windowsプログラムとはそういうもの。
結構大変なんだぞ。
2020/09/01(火) 19:26:13.61ID:x63jWwwu
MFC は、unmanaged だろ。
まだ、存在するのか

VC++ か何かで、managed(.NET)から、unmanaged(.NET以外)を呼び出す機構があったような。
.NETのunmanaged拡張(C++/CLI)
511510
垢版 |
2020/09/01(火) 19:30:28.41ID:x63jWwwu
C++/CLI は、非推奨か

最近のWindows では、C/C++ を、どうやってプログラミングするのだろう?
2020/09/01(火) 20:33:34.93ID:i5n1f2G3
>>511
コマンドラインならいくらでもC++を使える。
C++のGUIは選択肢が少なくなっている。
MFCも将来性なさそうだからWindows SDKしか残らなくなるかもね。
あるいは上の方に書かれているサードパーティのGUIを使うか。

Windowsの主要言語はC#やVBになってしまった。
2020/09/01(火) 20:50:25.12ID:z4ASdXsC
>>510
それ用のDLLが用意されていて、MFCのアプリケーションがほんの少しの変更で
C++/CLIでビルドできたよ。
2020/09/01(火) 21:27:13.55ID:vLz2GEqc
C++/CLI は非推奨でも、本物の C++ は非推奨な訳ではないだろう。
515デフォルトの名無しさん
垢版 |
2020/09/01(火) 21:27:53.58ID:vLz2GEqc
>>511
C++ は、普通に
2020/09/01(火) 21:28:30.81ID:vLz2GEqc
>>511
C++は普通にMFCをVS2019と共に使ってプログラミングすればよい。
2020/09/01(火) 22:08:28.50ID:bSJmfpdA
.NET のアプリで定番のものって何があるかな
よく使うアプリはネイティブなのばかり
MFC 使ってるのか Win32 直叩きかは知らんけど
2020/09/02(水) 10:34:38.82ID:1e/YSh87
WindowsでC++アプリの定番はWin32ではなくMFC。
日本ではMFCが普及すべき時期に無料のVS Expressが出てきて、
それがWin32のみでMFCには対応してなかった状態で、後から
無料のVS Communityが出てきて、今度は、C++よりC#が
前面に押し出されてしまったため、C++使いがMFCでプログラム
する機会を逃してしまっただけ。
2020/09/02(水) 10:37:42.15ID:1e/YSh87
なお、C++の場合、VSの力が最大に生かせるのはMFCであって、Win32ではない。
メニューを処理する関数の作成なども、MFCだとVSによって自動化されているが、
Win32だとされていない。
ダイアログで文字列や数値を扱うDDEも、MFCではVSのサポートを得られるが、
Win32では得られない。
WM_CREATE, WM_SIZE, WM_LBUTTONDOWNなどのメッセージのハンドラ作成も、
MFCだとVSのサポートを得られるが、Win32だと得られない。
2020/09/02(水) 11:33:30.85ID:hzf0dQWg
オートマとマニュアルみたいなもん
2020/09/02(水) 12:19:41.42ID:kh3zUZ72
Win32だと手間がかかりすぎる
2020/09/02(水) 13:08:08.39ID:YtNHOpgs
>>507
VSで、MFCのプロジェクトを新規作成すれば、HelloWorld的な
アプリは出来ているのだから、>>495で入門することも可能なはず。
今のMFCと違いがあるなら、それをGoogle検索で調べる。
たとえば、#includeされているヘッダファイルの名前が違っていると思ったら、
二つのファイル名とMFCというキーワードを半角スペースで区切って入れて、
英語モードのGoogleで検索すれば出てくる。
英語モードで検索して出てきたページを、Chromeの右クリックメニューで
出てくる日本語翻訳機能で日本語にして読み、意味が分かりにくければ、
URL欄の右隣に有るボタンから英語に戻して、辞書を引きながら読めばよい。
2020/09/02(水) 14:16:19.49ID:+vFHXeZw
MFCでツイッタークライアントアプリ作ります
2020/09/02(水) 15:26:47.53ID:2IzEXmVe
>>522
VS2019のウィザードを使うとかなり大層なアプリが生成されるぞ
Hello world的なアプリってどうやって生成するんだ?
2020/09/02(水) 16:27:22.64ID:Wngy4TOD
>>524
「新しいプロジェクトの作製」で 「MFC アプリ」を選ぶと、「新しいプロジェクトを構成します」が出てくるので、右下の「作製」ボタンを押すと「MFC アプリケーション - アプリケーションの種類のオプション」
のダイアログが出てくるので、

プロジェクト形式: の場所が、デフォルトでは、「Visual Studio」になっているので
「MFC standard」に直す。こうすると、昔ながらの MFC の Hello World アプリになり、
入門サイトなどは大体これが基本になっている。デフォルトのままだと、入門には適さない。

アプリケーションの種類: は、デフォルトのままでも良いが、昔から作りたいものによって、
よく変更されていたものだから、変えて試して見るといい :
・単一のドキュメント : SDI アプリケーション
・複数のドキュメント : MDI アプリケーション (default)
・ダイアログベース : ダイアログベースアプリケーション
2020/09/02(水) 16:37:24.58ID:kh3zUZ72
>>525
MDIって推奨されてなかったのでは?
それが今でもデフォルトなのか?
2020/09/02(水) 16:44:32.58ID:nYKoGcM/
推奨されてないね、太古の昔から
俺が参加したmsuセミナーで既にそう言ってた
528デフォルトの名無しさん
垢版 |
2020/09/02(水) 17:04:58.98ID:PicHUi2j
いまさらMDI
いまさらMFC
2020/09/02(水) 17:22:46.76ID:4SrpfbWk
タブのアプリだって、やってることはMDIなのでは?
2020/09/02(水) 17:45:32.54ID:2IzEXmVe
>>525
VS2019でそれをやってもさほど変わらないのだが?
Hello worldと比べると比較にならないくらい複雑なプログラムが生成される
2020/09/02(水) 17:46:20.46ID:kh3zUZ72
>>528
それを言ったらこのスレッドが不要ってことになるw
2020/09/02(水) 17:52:02.17ID:Wngy4TOD
>>530
最初にソースを見ると複雑に見えるが、慣れてくるとそんなに複雑ではなく、
>>495 のような解説サイトは、それで理解できるはず。
2020/09/02(水) 18:16:21.96ID:nYKoGcM/
>>529
MDIの悪いところを学んで改善したのがタブ
2020/09/02(水) 18:53:59.86ID:nd/1idBj
>>533
MFCのMDIにもタブ機能はあるぞ
535デフォルトの名無しさん
垢版 |
2020/09/03(木) 00:15:47.29ID:fIWixQ3j
>>511
最近だとC++ WinUIに持っていきたい感じはするね
そのためかMSの中でC++の地位が上がってるような気がする
MFCはこのまま廃れていくんじゃないか
2020/09/03(木) 00:27:42.71ID:u9Xqc0gc
>>535
C++/WinRTのことかな?
これってまだ普及していないのはなぜ?
2020/09/03(木) 00:38:52.17ID:Fm+qdV+I
>>536
別物だけど...
2020/09/03(木) 01:12:37.27ID:u9Xqc0gc
>>537
別物かよwww
Windows上のC++開発環境っていくつあるんだ?
2020/09/03(木) 01:14:14.89ID:u9Xqc0gc
C++/WinRTもオワコンってことなのか?
2020/09/03(木) 05:52:40.39ID:yk4FSoXe
UWPはオワコンだろうがWinRT自体は普通のデスクトップアプリでも使えるはずだしな。
2020/09/03(木) 11:40:53.69ID:u9Xqc0gc
>>540
Win/UIが登場したらWin/RTがオワコンにならないの?
よーわからん
2020/09/03(木) 13:04:18.42ID:Ai/K3M0v
今後はWinUI一択だろうね
流行るかどうか次第だと思うけど
C++をまともにサポートしてるのは大きい
2020/09/03(木) 13:25:24.02ID:sVY42MJD
fzf をコマンドプロンプトにネイティブ対応したほうがはるかに幸せになれる。
544デフォルトの名無しさん
垢版 |
2020/09/03(木) 15:54:33.68ID:fIWixQ3j
>541
完全にUWPの時代になるよ
.NET Frameworkが始まった時ってC++がおまけの扱いされてけど、
今回はWindows上にC++のアプリ作ってもらおうとしてる感じがする
乗り遅れるなよ
2020/09/03(木) 20:15:13.46ID:yk4FSoXe
UWPが全然人気ないから方向転換したんだろうが
https://ascii.jp/elem/000/004/014/4014034/
546デフォルトの名無しさん
垢版 |
2020/09/03(木) 20:29:01.39ID:fIWixQ3j
方向転換したことに気付かないままMFCを使い続ける人も多いだろう
情報を拡散する人がいないのかな
2020/09/03(木) 21:02:21.05ID:uE1ENArI
>>545
その方向転換がされたらMFCとWinRTと別の環境ができるのかな?
2020/09/03(木) 21:24:49.19ID:sVY42MJD
トグルボタンよりもチェックボックス、という猛者はいないのか
549デフォルトの名無しさん
垢版 |
2020/09/09(水) 16:47:17.22ID:MbQfEtJP
WindowsのC++開発環境

Win32 : 情報はそこそこあるけど扱いが面倒
MFC : 今から勉強すると時間をドブに捨てる可能性あり
C++/CLI : 死亡
C++/CX : 死亡
WRL : 死亡
C++/WinRT : MSはこれを推奨しているが、UWPの開発環境なので人気なし
2020/09/09(水) 17:12:57.59ID:mnONwWHj
C++ で、GUI は作れない

DLL しか作れない
2020/09/09(水) 19:56:59.87ID:eJCpqUcY
いくらMFCの設計がいまいちだからといってもさすがに素のwin32でGUIやる方がよっぽど時間の無駄だわ。
けっきょくC++だと消去法でMFCになるんだよな。
2020/09/09(水) 20:05:21.71ID:RLRFnFcj
>>551
しかし、今からMFCを勉強するのも現実的なのか?
相当な時間がかかるのではないか?
2020/09/09(水) 20:21:09.51ID:XZ4eRuJ2
今ならより軽量なWTLって手もある。MFCはC++コンパイラのtemplate対応が不十分だった時代の遺産だから。
2020/09/09(水) 20:40:15.31ID:eJCpqUcY
>>552
だから消去法だよ。いまさらwin32でやろうとする方がもっと非現実的。
2020/09/09(水) 20:48:18.25ID:p4Sr79GR
まあ、知っておいて損は無いけどな。
じゃないと議論が出来ないからな。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況