4

ATL COM プロジェクトを VC6 から VS 2008 に移行しました。VS2008 で PS DLL をビルドするにはどうすればよいですか?

VS 2008 の新しい ATL プロジェクトには、PS DLL をビルドする別の PS プロジェクトがあります。しかし、VC6 からの移行では、このプロジェクトは作成されませんでした。

PS mk ファイルで nmake を呼び出そうとしましたが、ソース ファイルと自動的に含まれる Windows ヘッダー ファイルの両方に存在する列挙型の再定義エラーが発生します。WIN32_LEAN_AND_MEANソリューションでは、不要なヘッダー ファイルを除外するプリプロセッサを定義することで、これを修正しました。nmake を使用しているときに同じことができますか?

PS DLL を作成する他の方法はありますか?

4

2 に答える 2

3

エランの提案は論理的に思えますが、彼が話している項目のいくつかを見つけることができませんでした。そこで、別のアプローチを試しました。

VS 2008で空のATL(サーバー)プロジェクトを作成しました。これにより、通常のatlプロジェクトとともにpsプロジェクトが自動的に作成されます。

psプロジェクトのvcprojファイルをプロジェクトフォルダーにコピーし、名前をmyprojectnameps.vcprojに変更しました。

次に、ソリューションを開き、新しくコピーしたプロジェクトを追加しました。プロジェクトの名前を(VS 2008で)myprojectname psに変更し、すでに含まれているすべてのファイルを削除しました。

次に、_i.c、_p.c、dlldata.c、および.defファイルをプロジェクトに含めました。[リンカー]>[入力]>[モジュール定義ファイル]の設定で、defファイル名を追加しました。

それでおしまい!チャームのように働いた。

于 2009-06-26T13:20:00.923 に答える