6

私はこのような警告をたくさん受けましたが、それらが何を意味するのかわかりません。

誰かがこれが何であるか知っていますか?

「'IOleWindow.GetWindow'の引数の少なくとも1つは、ランタイムマーシャラーによってマーシャリングできません。したがって、そのような引数はポインターとして渡され、操作するために安全でないコードが必要になる場合があります。」

また、「c:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319\Microsoft.Common.targets」に関連していることも指摘しておく必要があります。

4

3 に答える 3

2

Type Library Importer (tblimp)を使用して Visual Studio の外部で DLL をインポートし、Visual Studio に作成させる代わりに生成された参照を使用して、警告を削除することができます。

于 2012-05-23T11:18:44.677 に答える
1

状況の良い説明はここで見つけることができます

これらの警告は無視してかまいません。この問題の詳細については、次のページを参照してください:http: //msdn.microsoft.com/en-us/library/aa289520%28v=vs.71%29.aspx

「In/OutC-StyleArrays」セクションは特に関連性があります。結論:警告で指定されたメソッドの返されたバッファーが「in」値を受け入れていた場合は、記事の変更を適用する必要があります。ただし、リストされているすべてのメソッドはバッファーのみを処理するため、警告はユーザーにもフレームワークにも影響しません。

ただし、警告を完全に取り除きたい場合(たとえば、「すべて再構築」を実行する場合)、記事で説明されているように続行することはできません。相互運用ラッパーを(ildasmを使用して)分解し、ILを編集して、(ilasmを使用して)再アセンブルする必要があります。このプロセスは「クリエイティブラウンドトリップ」とも呼ばれます。

于 2012-05-23T11:24:08.490 に答える
0

警告メッセージの主な問題は、問題の COM ではなくプロジェクトのみを示しているため、これを追跡する唯一の方法は削除プロセスであるように思われることです。

于 2012-05-23T11:33:46.320 に答える