2

最近、クラウドプリントモジュールにいくつかの大きなアーキテクチャの変更(つまり、マルチスレッドのサポート)を行いました。ここでPreFastチェックを実行する必要がありますが、使用しているVisual Studio 2008の現在のエディションにはPreFastチェックのサポートが統合されていないため、WindowsDDKを使用して実行する必要があります。

WDKを使用してソースをビルドしようとしていますが、このエラーが発生します。

エラーLNK2005: "void _cdecl operator delete(void *)"(?3 @ YAXPAX @ Z)はすでにlibcmt.lib(delete.obj)で定​​義されています

リンカーlibcpmt.libは前の段階で使用されていて、deleteメソッドの定義も同じだったと思います。ソースには、異なるモジュールレベルで混合されたcファイルとcppファイルもあります。libcmp.libこれが、そもそも両方を使用している本当の理由libcpmt.libでしょうか?

とにかくこれを修正できますか?私は本当に「正しい」方法を必要としません。私が欲しいのはソースを構築することだけです。そうすれば、PreFastチェックを実行できます(リンク関連の警告については実際には心配していません)。これに関してPreFast警告が表示された場合は、当面スキップできます。

4

0 に答える 0