トップページ > 記事閲覧
エラーの原因が分からない
名前:にこよん 日時: 2018/01/08 11:44

新しくく作っていたゲームのプロジェクトでビルドすると唐突にこのようなエラーが出るようになってしまいました... 重大度レベル コード 説明 プロジェクト ファイル 行 抑制状態 エラー C2760 構文エラー: トークン '識別子' は予期されておらず、'型指定子' が予期されています test c:\program files (x86)\microsoft sdks\windows\v7.1a\include\objbase.h 239 原因が分からず新規プロジェクトを作成し、 #include "DxLib.h" int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { if( DxLib_Init() == -1 ) // DXライブラリ初期化処理 { return -1; // エラーが起きたら直ちに終了 } DxLib_End() ; // DXライブラリ使用の終了処理 return 0 ; // ソフトの終了 } 上のコードだけでビルドしても同じエラーをはかれてしまいます エラー原因は下の部分らしいのですが、これだけで何を間違えているのかはわかりませんでした... ググっても同じような症状は確認できず... extern "C++" { template<typename T> void** IID_PPV_ARGS_Helper(T** pp) { static_cast<IUnknown*>(*pp); // make sure everyone derives from IUnknown return reinterpret_cast<void**>(pp); } } 推測できる原因などをご教授ください...
メンテ

Page: 1 |

Re: エラーの原因が分からない ( No.1 )
名前:管理人 日時:2018/01/08 22:07

うーん、何でしょう・・・ 本当に推測ですが、原因となりそうな候補は・・・   1.作成したプロジェクトの種類を間違えた   2.プロジェクトの設定で正しく行えていない項目がある   3.インストールされている Visual Studio のファイルがおかしくなってしまっている などでしょうか・・・ 仮に原因が3だったりしますと Visual Studio を再インストールしても直らなかったりして太刀が悪いのですが・・・ お使いの Visual Studio のバージョンはいくつでしょうか?
メンテ
Re: エラーの原因が分からない ( No.2 )
名前:にこよん 日時:2018/01/08 22:39

ご回答ありがとうございます 1,2に関してはプロジェクトを新規作成するところからこのサイトの「Dxライブラリの使い方」 を見ながら再度行ってみたのですが昔と方法(仕様)が変わっていなかったため変化はなかったです(間違えてもいませんでした) Visual Studio 2017のバージョンは 15.5.2のようです いつも通知が来たらすぐアップデーツするため、最新に近いバージョンだと思われます Microsoft Visual Studio Community 2017 Version 15.5.2 VisualStudio.15.Release/15.5.2+27130.2010 Microsoft .NET Framework Version 4.7.02556 インストールされているバージョン:Community
メンテ
Re: エラーの原因が分からない ( No.3 )
名前:にこよん 日時:2018/01/08 22:44

追加で分かったことがあるのですが、DXライブラリをインクルードしている過去に作成したプロジェクト(2,3か月前以前)のものは 全て問題なくビルドできました 1,2のあたりが当たってそうな気がしてきたのですが... 分からぬ
メンテ
Re: エラーの原因が分からない ( No.4 )
名前:管理人 日時:2018/01/08 23:32

ご返答ありがとうございます Visual Studio 2017 でしたら変更が激しいので3の可能性も、と思ったのですが以前のプロジェクトは正常にビルドできますか・・・ 雑談形式掲示板の方で Naohiro19さんがご紹介されている『Windowsデスクトップウィザード』を使用する方法( 書き込み番号 4740 )で プロジェクトを作成したら正常にビルドできたりしますでしょうか?
メンテ
Re: エラーの原因が分からない ( No.5 )
名前:にこよん 日時:2018/01/10 18:47

こちらの方法でやってみても結果は同じでした... それで設定の方をいろいろいじったりしてみたのですがWinDows SDKバージョンというのを7.0から10.xxにしてみたら動くようになりました もともと入っていたものではなかったので追加インストールしたものなのですが... ただ問題なくビルドできる古いプロジェクトは相変わらず7.0のままで動きますし訳が分からないです もちろんそれ以外の設定は何もいじってません... そもそもWinDows SDKバージョンって何かわかってないのですが、これはいじっていいものだったのでしょうか...?
メンテ
Re: エラーの原因が分からない ( No.6 )
名前:管理人 日時:2018/01/11 01:14

> そもそもWinDows SDKバージョンって何かわかってないのですが、これはいじっていいものだったのでしょうか...? Windows SDK は Windows用のソフトの開発に必要なものです Windows の新バージョンが出るたびに Windows SDK も新しいバージョンがリリースされます ビルドが成功して、作成された実行ファイルが正常に動作するのでしたら問題ないと思います
メンテ
Re: エラーの原因が分からない ( No.7 )
名前:にこよん (解決) 日時:2018/01/11 17:39

> ビルドが成功して、作成された実行ファイルが正常に動作するのでしたら問題ないと思います 良かったです 2番が原因だった感じでしょか? 昔のは7.0でも動く、、、というか8.0までしか選べないのに新しいのは10.xxでしか動かないのは不思議ですが とりあえずまた動くようになったので気にしないでおきます ありがとうございましたm(__)m
メンテ
Re: エラーの原因が分からない ( No.8 )
名前:ヒデさん 日時:2018/08/13 15:04

まったく同じことが起こって半日くらい悩みました。 最終的にわかったのは、うちの環境ではコンパイルできるプロジェクトとできないプロジェクトの違いは「構成プロパティ > C/C++ > 言語 > 準拠モード」で、これを「いいえ」にしたらコンパイルが通って動作も問題ありませんでした。 このオプションが何を意味するかが理解できていませんがご参考までに。
メンテ
Re: エラーの原因が分からない ( No.9 )
名前:yumetodo 日時:2018/08/13 18:25

古いSDKがC++標準に準拠していないということですね・・・ >ttps://blogs.msdn.microsoft.com/vcblog/2017/11/15/msvc-conformance-improvements-in-visual-studio-2017-version-15-5/ >We’ve enabled the /permissive- conformance mode by default with new projects created in Visual C++, >enabling you to write code that is much closer to C++ standards conformance. >This mode disables non-conforming C++ constructs that have existed in MSVC for years. >You can learn more about our conformance mode and the /permissive- switch that controls it in this blog post or on docs.microsoft.com. ref: - ttps://docs.microsoft.com/ja-JP/cpp/build/reference/permissive-standards-conformance - ttps://blogs.msdn.microsoft.com/vcblog/2016/11/16/permissive-switch/ (相変わらずdocs.microsoft.comの翻訳ガバガバである・・・先日も大炎上してたけど。)
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存