0

C タイプの DLL をインポートして使用する MFC プロジェクトがあります。私のプロジェクトが V 6.0 のとき、このコードは正常に機能しましたが、コードを v2010 に転送し、(\clr を使用して) プロジェクトに .NET コードを追加した後、私のコードのそのセクションで、")" と " が見つからないというコンパイラ エラーが発生し始めました。 ;". 私は午前中ずっと研究してきましたが、解決策を思いつくことができませんでした。誰でも私を助けてもらえますか?

以下は、コンパイラ エラーをスローするコードの行セクションです。

 #ifdef __cplusplus
  extern "C" __declspec(dllimport) void _stdcall KILLIT();
  extern "C" __declspec(dllimport) void _stdcall MAINDLL(char *PATH,int PATHLEN,char      *SUBDIR,int SUBDIRLEN, char *NAME,
int NAMELEN,char *HOMEDIR,int HOMEDIRLEN,char *ARCHDIR,int ARCHDIRLEN, int *FUN,int   *VERSION,int *BUS,int *PJMPV,
int *NFLAG,int *RETERROR);

#endif

これらは私が得るコンパイラエラーです:

DSAANA.cpp(32): error C2143: syntax error : missing ')' before 'constant'
>DSAANA.cpp(32): error C2143: syntax error : missing ';' before 'constant'
>DSAANA.cpp(34): error C2059: syntax error : ')'

私が得ることができるどんな助けにも感謝します

ありがとうロビー

4

1 に答える 1

1

何が何であるかがわかるように、各行に行番号を追加していただけると助かります。ヘッダーの 1 つで名前がマクロと競合している可能性があります。関数宣言では、変数名を削除して、変数の型だけを使用できます。これでエラーの 1 つが修正された場合は、エラーが再度発生するまで古い変数名をゆっくりと追加し直して、競合が見つかるようにします。

于 2012-08-01T21:41:58.570 に答える