2011-12-04 5 views
2

VS2010にCOMオブジェクトを含むDLLを生成するC#プロジェクトがあります。CSCコマンドラインにフラグを追加する

登録無料でCOMを動作させるために、マニフェストをWin32リソースとして埋め込みたいと思います。 DLLをビルドするために使用されるcscコマンドラインに/win32res:blah.resを渡す必要があります。私は.resファイルを事前ビルドイベントで生成することができます。

しかし、私はそれをすることはできません。私は全く気が狂っているようですが、カスタムフラグをcscに渡す簡単な方法はないようです。私は.csprojファイルがMSBuildファイルであることを認識しています。シンプル私のニーズに合わせて変更する方法があると思いますが、関連するものは何も見つかりません。

+0

ここからWin32Resourceを試しましたか:http://msdn.microsoft.com/en-us/library/s5c8athz.aspx? –

+0

@MarcGravell:intellisense(およびMsBuildプロジェクトのDTD)は、Win32ResourceFileを使用する必要がありますが、これはうまくいきません。私はWin32Resourceで確認します。 –

+0

@MarcGravell:奇妙なことに、IntelliSenseがすべて揺れていても、Win32Resourceで動作します。あなたは私がupvoteに喜んで答えとしてこれを置くことができます。 –

答えて

2

このオプションはIDEで公開されています。 [プロジェクト+プロパティ]、[アプリケーション]タブ、[リソースファイル]オプション。

しかし、このようにしないと、プログラムに埋め込まれた通常のマニフェストに問題が発生します。プロジェクト+新しい項目の追加、アプリケーションマニフェストファイルを使用します。ファイルを編集してregfree COMエントリを追加します。

+0

これにはファイルがWin32リソースまたは.NETリソースとして含まれていますか? (または違いがありますか?) –

+0

"/ win32res"というWin32リソースが強く示唆しています。はい、大きな違いがあります。ファイル内の形式と場所が大きく異なります。 Windowsはwin32リソースのみを読み取ることができます。あなたはFile + Open + Fileでそれらを見ることができ、.exeを選ぶことができます –

関連する問題