VC++ 2008 EXPRESS _T識別子がみつかりません

このQ&Aのポイント
  • VC++2008 Express SP1でC++にふれた初心者の質問です。_T識別子が見つからないエラーが発生しています。
  • WindowsXP ProVer2002 SP2の環境でVC++2008ExpressSP1を使用してWin32アプリケーションを作成しようとしていますが、ビルドエラーが発生しています。
  • _TとLの違いや_Tでもビルドできる方法について教えていただけないでしょうか。基礎知識が不足しているため、分かりやすいサイトなども教えていただければ幸いです。
回答を見る
  • ベストアンサー

VC++ 2008 EXPRESS "_T"識別子がみつかりません

VC++2008 Express SP1で初めてC++にふれたものです。 素人ですので質問の意味も通じにくいかもしれませんが よろしくお願いします。 環境: WindowsXP ProVer2002 SP2 VC++2008ExpressSP1 Win32アプリケーション MSDN(http://msdn.microsoft.com/ja-jp/library/bb384843.aspx) にあるWin32アプリケーション作成(C++)にそって 作成してみましたが、ビルドで下記エラーとなります。 "_T"識別子がありません。 ネットで検索して調べておりましたら_TをLに 替えれば良いという風な記載がありました。 この_TとLの違いと、私の環境でも_Tでもビルドできるような 方法をご教授いただければと思います。 基本的なC++を知らないまま、こういう質問は失礼かもしれませんが 何か、分かりやすいサイトなどありましたら合わせて ご教授願えればと思います。 以上、よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

_Tマクロはtchar.hに#defineされています。 #include <tchar.h> を入れればいけるでしょう。 ちなみにwindows.hにあるのはTEXTマクロです。 _T → TEXT に変えればうまくいくかもしれません。

tkhr1109
質問者

お礼

回答ありがとうございます。 #include <tchar.h> を入れてOKになりました。 Hello,World!が無事表示できました。 ありがとうございました。

関連するQ&A

  • VC++6.0のプロジェクトをVC++2005Expressで動かしたいがエラーが出まくってしまいます。

    VC++6.0のプロジェクトをVC++2005Expressで動かしたいのですが エラーが出まくってしまいます。 VC++6.0では正常にコンパイル終了するものがexpressだと、 ・・・string.h(135) : warning C4003: マクロ '__DEFINE_CPP_OVERLOAD_STANDARD_FUNC_0_1_EX' に指定された実引数の数が少なすぎます。 とか、 ・・・string.h(135) : error C2065: '_string' : 定義されていない識別子です。 とか、 ・・・string.h(135) : error C2275: '_locale_t' : この型は演算子として使用できません とかです。string.hなど、触ったこともないのですが、 express用に編集が必要なのでしょうか? ちなみに PlatformSDK などはインストールして、include,exectable,library ディレクトリなどのパスも通しています。 何か良い方法を教えてください。お願いします。

  • VC#2005で従来のWinアプリを作成するには?

    Windows2000pro-sp4,VC#2005 Express Edtionを使用しています。 VS6の頃のような従来のWindowsアプリを作成するにはどうすればよいのでしょうか? メニューから、ビルド→...の発行、とたどり、 アプリの発行場所にデスクトップを選んで完了しても、 従来のように.exeファイルが作成されのではなく、 setup.exeや*.exe.manifest,.exe.deploy,.application などが作成されます。 古い記憶では、.NETな環境では、VC++のみが従来のようなWinアプリが作れる、 とあるのですが、そうなのでしょうか?

  • VC2005 ビルドオプションについて

    VC2005で質問です。 [やりたいこと] VC2005でビルドを行い、意図したライブラリができるとします。 そのライブラリファイルを、予め準備していたExeファイルへ 入力/実行を自動的にする方法(設定)とかってあるのでしょうか? この時、作業はVC2005でビルドするだけです。 すみません、分かりにくいですね。 もう少し詳しく。。 [作業] 1. VC2005でビルドを実行 (1)Lib fileが作成される (2)予め準備していたexeファイル (3)予め準備していたexeファイルが出力したファイル 通常はビルドするだけだと、Libファイルが出来て((1)で)終了です。 今回やりたいのは、そのLibファイルを自動的に予め準備していた exeファイルへ入力/実行し、そのexeファイルから出力されたファイル を自動的に作成したいというものです。 言ってる事同じですね^^; ご存知の方がいらっしゃいましたら、ご教授ください。

  • VC++で静的リンクしたアプリを作りたい

    Microsoft のVisual Studio 2012 を使用しています。VC++2012 を使用して静的リンクしたアプリケーションを作りたいのですが、静的リンクを行う設定方法がわかりません。言い換えると .Net FrameWork がない環境でも動くアプリケーションを作りたいのです。 詳細は、MSN 相談箱 QNo.8057365(投稿日時 - 2013-04-24 12:53:43)を参照ください。 現在は、次のMSDNの技術資料「Deployment in Visual C++」 http://msdn.microsoft.com/ja-jp/library/dd293574.aspx に記載されている2番目の方法Local Deployment(ローカル配置)に記載されている必要な DLL ファイルをコピーする方法で実現していますが、Microsoft に相談したところ、次のように言われています。 『VC++ 2012 のLocal Deployment を使ってアプリケーション プログラムの開発を行うのは良いが、一旦開発が成功した後はLocal Deployment の使用を禁止する。』 以上の経緯から、静的リンクした VC++ 2012 アプリケーション プログラムを作る必要があります。具体的な形態は、Windows PE 3 で起動したPC でVC++ 2012 で開発したアプリケーション プログラムを動かします。 Visual Studio 2012 でプロジェクトを定義するとき、「静的リンク アプリケーション」指定の必要があると考えるのですが、その方法がわかりません。どうかご教示をお願いします。

  • VC++ 2005 Express Edition 設定のエラー

    こんにちは。 おそらく設定のエラーでしょうが、解決策がまったく見つからないので質問してみました。 Visual C++ 2005 Express Edition(VCEE) を使ってみようと思ったので、 VCEEをダウンロードして、インストールしました。 その後、Win32アプリケーションを作成しようと思い、 PSDK-x86をダウンロードしてインストールしました。 そして、VCEEで、 「ツール」から「オプション」、「プロジェクトおよびソリューション」の「VC++ ディレクトリ」で 実行可能ファイル・インクルードファイル・ライブラリファイルで設定をし、corewin_express.vspropsファイルも変更して、これでできる、と思ったのですが、 新規作成でWin32アプリケーションが作れませんし、 昔作っていたものをコンパイルしようと思ったら「コンピューターの競合」のエラーがでます。 いろいろネットを探したのですが、見つかりませんでした。 だれか知っているでしょうか。 長文失礼いたします。

  • VC#とVC++の両方を使いたいんですが・・・

    今まではMicrosoft Visual C# 2008 Express Edition(以下VC#)だけである程度の開発を進めてきましたが、今後はOpenCVをC#で使いたいと考えています。 OpenCVに関する本やWebページを見ても、Microsoft Visual C++ 2008 Express Edition(以下VC++)を例にするものしかありませんでした。 Webページで、VC++を使って、ビルドしたあとdllファイル(?)をC#に読み込むことで、C#でOpenCVを使えるという記述を見つけたため、VC++もインストールしました。 しかしVC++をインストールする際、以下のようなコメントが出てきました。 --- コンポーネントが既に別の場所に保存されているか、別の場所に保存されたファイルに依存しているため、このコンポーネントまたはサブコンポーネントの場所を変更できません。 以下のプログラムが原因でファイルが統合されようとしています: Microsoft Visual C# 2008 Express Edition with SP1 - JPN ファイル パスを変更するには、上の一覧にあるプログラムをアンインストールしてから、Visual Studio と共有しているファイルを格納する場所に再インストールしてください。 --- もしかしたらSP1はインストールしなかったのかもしれません(チョット記憶が曖昧ですみません)。 実際、VC++でOpenCVを使ったプログラムを書いた際、ビルドは出来るものの、デバッグすると以下のようなコメントが出てしまいます。 アプリケーションを正しく初期化できませんでした(0xc0150002)。[OK]をクリックしてアプリケーションを終了してください。 これはSP1が使える状態になっていない(インストールされていない)ということなのでしょうか? 先ほども書いたとおり、VC#である程度の開発が進んでいるため、アンインストールをしてプログラムが使用不可能になってしまうことを恐れ、アンインストールをためらっています。 アンインストールと再インストールをしたとして、どこの設定を変えれば再度使えるようになるのかを教えていただけますか? あまりパソコンやVC++、VC#を詳しく知らないので、詳しく教えていただけると嬉しいです。

  • VC++ Windows2000 でリソースが開けない

    環境:Windows2000SP2 Visual C++ 6.0 SP5 VC++ 超初心者です。 MFCアプリウィザード(EXE)でSDIアプリケーションのスケルトンを作成し、手を加えずにビルドしましたが、エラー 「F:\…test5\test5.rc(11) : fatal error RC1015: cannot open include file 'afxres.h'.」 rc.exe の実行エラー が出て実行できません。 また、リソースウィンドウを開いてみると、リソースが一つも表示されずにその代わりに、 「ロードに失敗しました」と表示されています。 VC++をWindows2000で使用する場合には、何かしなければいけないのでしょうか?

  • VC++ のエラーについて。

    何度もすみません。 今ビルドしたらエラーが。。 環境を教えてくれる人が今日いないのでどうしたらいいのか(T-T) ○○.sqxにSQL文INSERTを追加したのですが、 'EXEC' : 定義されていない識別子です。 error C2146: 構文エラー : ';' が、識別子 'SQL' の前に必要です。 error C2065: 'SQL' : 定義されていない識別子です。 error C2146: 構文エラー : ';' が、識別子 'INSERT' の前に必要です。 error C2065: 'INSERT' : 定義されていない識別子です。 error C2146: 構文エラー : ';' が、識別子 'INTO' の前に必要です。 error C2065: 'INTO' : 定義されていない識別子です。 error C2146: 構文エラー : ';' が、識別子 'TRSS_SM' の前に必要です。 error C2065: 'TRSS_SM' : 定義されていない識別子です。 error C2228: '.FAXSENDINF' : 左側がクラス、構造体、共用体ではありません。 error C2146: 構文エラー : ';' が、識別子 'VALUES' の前に必要です。 error C2065: 'VALUES' : 定義されていない識別子です。 error C2143: 構文エラー : ')' が ':' の前に必要です。 error C2059: 構文エラー : ')' だって、怒られました。 何のことだか?さっぱり? ほかのどこかの影響でしょうか? 何か知っている人お願いします。 Visual Studio 6.0 VC++ Windows2000

  • なぜマクロ「_WIN64」が未定義になるの?(Visual C++)

    下記環境で、32bitアプリケーションの64bit化をしようとしました。   OS    :Windows XP Professional x64 Edition   開発環境:Visual Studio 2008 Professional Edition   言語   :Visual C/C++ その際のビルドは、構成マネージャのアクティブソリューションプラットフォームを「x64」に設定してから行いました。 ところが、64bitアプリケーションなら定義されるはずの「_WIN64」というマクロが未定義になってしまいます。 なぜなのか、教えて欲しいです。 ちなみに、マクロが未定義かどうかは、   #if defined(_WIN64)     #define test   #endif の2行目がビルド後、灰色表示になるかどうかで確かめました。 その結果、灰色になりました。 さらに、補足ですが 64bitアプリケーションになっているかを確かめるため、 sizeof(int*)の値を確認したところ、 その値は「8」でした。 参考:   [MSDN Visual C++ デベロッパー センター]    http://msdn.microsoft.com/ja-jp/library/b0084kay.aspx    http://msdn.microsoft.com/ja-jp/library/9yb4317s(VS.80).aspx

  • VC++6.0ビルド後の処理で黙り込み

    VC++6.0でDLLを作ったのですが、 プロジェクトの設定でビルド後の処理に copy debug\dll.dll c:\usedll\debug\dll.dll のようにしてリビルドたところ ----------------------------------------------- ................. コードを生成中... リンク中... ライブラリ Debug/MfcDll.lib とオブジェクト Debug/MfcDll.exp を作成中 ビルド後の処理 ----------------------------------------------- ここでビルドが固まってしまいます。 ビルドの中止を押しても復帰せず、VC++を閉じようとしてもビルド中はダメとおこられます。 Ctrl+Cでもダメです。 何度やっても再起動しても確実に止まります。 copy じゃなくてdirとかでも止まります。 ビルド後の処理を外せばちゃんとビルドできます。 なにか心当たりのある方いらっしゃいましたらアドバイスお願いいたします。

専門家に質問してみよう