- PR -

Visual C++ 2005 Express Edition で MFC の Windows Application を作成したい

投票結果総投票数:14
簡単に可能 5 35.71%
コツはいるが可能 2 14.29%
相当頑張れば可能 2 14.29%
やろうと思えば不可能というものはない 5 35.71%
  • 投票は恣意的に行われます。統計的な調査と異なり、投票データの正確性や標本の代表性は保証されません。
  • 投票結果の正当性や公平性について、@ITは一切保証も関与もいたしません。
投稿者投稿内容
とっちゃん
大ベテラン
会議室デビュー日: 2005/07/19
投稿数: 203
投稿日時: 2007-05-21 19:27
引用:

unibonさんの書き込み (2007-05-21 16:04) より:

少なくとも MFC のヘッダーファイルはあるから、それさえあれば lib ファイル(mfc42.lib)に相当するものは、自分で構築できるはずですよね?呼ばれる先の実体のコードは mfc42.dll にあり、その dll ファイルは、普通、Windows の環境があれば存在していますよね?
それとも、これらのことだけでは足りないのでしたっけ?最近、C/C++ を触ったことがないので、忘れてしまいました。
ん?やはり、これだけでは足りないのでしょうか?序数が分からないかも?



手元にあるPlatformSDKを見てみました。ソースついてますね。ま、やる気になれば...ということでw

引用:

目的としては、C# からチョコチョコっとなんらかの API を呼びたいのですが、API の使い方が良く分からないので、ネットで検索してサンプルプログラムをダウンロードして来ます。そのサンプルプログラムで、目的とする API をデバッガー上で呼べて動きが見られればそれで良いので、MFC の新旧の互換性やセキュリティーの脆弱性などは気にしません。が、それらの多くは Window を作るためだけぐらいなのに MFC を使っているので、わざわざ MFC を使わないようにコードを手直ししないといけないのが面倒なのです。Standard Edition を使えばいいのでしょうが、Express Edition でできるのならばそれで済ませたいのです。



たしかにそのまま動かせないというのは不利な点ではあるかもですが、仮に Standard 以上を持っていたとしてもそのMFCサンプルがビルドできる保証はないですよ。
他のフレームワークに移植することに比べれば、ソースの互換性は高いですが、CRTがかなり変わっているので、良くてワーニングの嵐、悪ければエラーの嵐に見舞われます。

これが、VC6のとなると、それはそれは...w
あと、数は少ないですが、逆のパターン(VC7以降のMFCで作られているなど)となると、今度は未定義エラーの嵐となります。

フレームワークに依存したソースというのはそういうものです。

なので、目的とするAPIを呼び出している関数だけをきりだしてきて、それを適当なプログラムから呼び出してみるという方が、よっぽど現実的ではないかと。
_________________
// とっちゃん(高萩 俊行)@わんくま同盟
// とっちゃん’Blog
// MS-MVP for Developer Tools - Visual C++
// WindowsInstallerの話題はhttp://www.freeml.com/msiまで
gu ru
会議室デビュー日: 2008/05/17
投稿数: 1
投稿日時: 2008-05-17 17:35
WDK使ったら?#MFC4.2入



[ メッセージ編集済み 編集者: gu ru 編集日時 2008-05-18 10:08 ]

スキルアップ/キャリアアップ(JOB@IT)