Dev-C++(バージョン4.9.9.2)とそれに付属の標準コンパイラを使って、誰かの古いC++プロジェクトを再構築しようとしています(MinGW )Windows XP Pro SP3 32ビットの下で。ファイルstrsafe.hの一つに含まれており、私がコンパイルしようとすると、私はこのエラーを取得しますstrsafe.hの '、'トークンの前に期待される一次式
expected primary-expression before ',' token
コードの行のエラーポイントがstrsafe.hしているしていること(マイクロソフト()ライブラリ?ヘッダーファイル)は、次のようになります。
これらの各行に2つの「期待される一次式」エラーがあります。私はthis forum threadを見つけました。これは、NULL値が正しく認識されておらず、strsafe.hの前に<cstddef>
を含めることを示唆しています。私はそれをし、それは動作しません。また、NULLが実際に定義されているように見えます。なぜなら、strsafe.hをインクルードする前に '#define NULL 0'を実行すると、そこに定義し直すというエラーが表示されるからです。
ご迷惑をおかけしますが、詳細を提供することはできませんが、このエラーを再現するコードは単に '#include <strsafe.h>
'なので、他に何を言いたいのか分かりません。誰に何が起こっているかもしれないと私はこれを修正することができますどのようなアイデアを持っていますか?
ありがとうございます!
(私はすでにので、私はstrsafe.hの最新バージョンを使用しているMicrosoftプラットフォームSDKの最新バージョンをダウンロードしようとしました)
使用されているSDKのバージョンは何ですか(strsafe.hのフルパスは何ですか)。私のVista SDKのコピーにはStringGetsExWorkerA()の言及はありません。 –
別のフォーラムでも同様の問題が発生しているようです:http://forums1.avsim.net/index.php?s = 6bf19a616003413c15cf25212fde2352&showtopic = 244719&pid = 1617949&st = 0&#entry1617949。フォーラムでは特にstrsafe.hとMinGWについて述べています。あなたはおそらく彼らが問題を解決するためにしたことを試すことができますか? – reuben
ここからPSDK-x86バージョンをダウンロードしました。http://www.microsoft.com/downloads/details.aspx?FamilyId=A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en#filelist(Windows®Server 2003 SP1 Platform SDK )。 strsafe.hへのパスは「C:¥Program Files¥Microsoft Platform SDK¥Include¥strsafe.h」です。 @Rueben: "ソリューション"は別の環境/コンパイラを使用するようですか?私はMSVC++を試してみましたが、プロジェクトには他の問題がありましたが、ここで尋ねていた問題はありません。 – Jordi