afx.hのエラー – プログラミング – Home

通知
すべてクリア

[解決済] afx.hのエラー


Fixed
 Fixed
(@Fixed)
ゲスト
結合: 23年前
投稿: 1
Topic starter  

はじめまして。Fixedと言います。

現在、VC++6.0、Windows2000を使用して作業しています。
質問なんですが、afx.hをインクルードすると、以下のような
エラーが出ます。

c:\program files\microsoft visual studio\vc98\mfc\include\afxv_w32.h(14) : fatal error C1189: #error : WINDOWS.H already included. MFC apps must not #include <windows.h>

なぜこのエラーが出るのか分かりません。

CStringを使用と思い、afx.hをインクルードしたところ出ました。

すみませんが、ご教授お願い致します。


引用未解決
トピックタグ
CdS
 CdS
(@CdS)
ゲスト
結合: 24年前
投稿: 176
 

windows.hのインクルードをコメントアウトすればいいかと思いますが。
エラーメッセージに書いてある通りです。


返信引用
Fixed
 Fixed
(@Fixed)
ゲスト
結合: 23年前
投稿: 4
 

CdSさん、早速のレスありがとうございます。

windows.hのインクルードははずしてあるのですが、
やっぱりエラーが出ます。

うーん・・・・
やっぱり、MFCのAppWizardじゃないと駄目なんでしょうか?


返信引用
sugar
 sugar
(@sugar)
ゲスト
結合: 24年前
投稿: 448
 

> CStringを使用と思い、afx.hをインクルードしたところ出ました。
>
...??
ってことは、SDKでプログラミングしてるって事でしょうか?
CStringを使いたいのなら、最初から素直にMFCを使われたほうがよいのでは。
また、初めからMFCを使われてるのなら、わざわざafx.hをインクルードしなくてもCStringは使えるはずです。

SDKだけどCStringが便利だから使いたいということであれば、
STLのstring型というのが近い機能を提供してくれるようです。
これに関しては私は使ったことがないので、紹介くらいしかできませぬ。


返信引用
CdS
 CdS
(@CdS)
ゲスト
結合: 24年前
投稿: 176
 

とりあえず、Hello Worldアプリケーションを作成し、stdafx.hのwindows.hをコメントアウトしてafx.hを
インクルードしたら大丈夫なんですが。

どこかでwindows.hをインクルードしてません?
それしか考えられないんですけど。


返信引用
CdS
 CdS
(@CdS)
ゲスト
結合: 24年前
投稿: 176
 

windows.hをインクルードしているヘッダをインクルードしているというのも考えられますね。
winsock.hとか使うとそうなります。


返信引用
Fixed
 Fixed
(@Fixed)
ゲスト
結合: 23年前
投稿: 4
 

sugarさん、CdSさんレスありがとうございます。

SDKで作成しています。
まだ、MFCで作成は慣れていないもので・・・
申し訳ないです。

ちょっと、色々やってみます。
MFCも、もうちょっと勉強しなきゃ駄目ですね。

お忙しいところありがとうございました。


返信引用
Fixed
 Fixed
(@Fixed)
ゲスト
結合: 23年前
投稿: 4
 

お世話になっています。

afx.hのエラーの件解決しました。
結果として、afx.h内にある、windows.hを全てコメント
アウトし、うまく動きましたが・・・・

こう言う事行ってよいものなのでしょうか・・・

一応報告までに。
皆さんありがとうございました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました