これらのエラーは大した問題ではありません。これは、COM タイプ ライブラリの一部の型を自動的にインポートできないことを意味します。Visual Studio ビルド プロセス (またはバックエンドで使用される MSBuild タスク) からは、これらのエラーを削除できないと思います。それらは、渡すことができるフラグなしで .NET 内部タイプ ライブラリ インポーターによって生成されます。
ただし、他のビルド アクションの前にTlbimp.exe (タイプ ライブラリ インポーター)ツールを使用して必要な相互運用機能アセンブリを作成し、IDE にジョブを実行させる代わりにそれらを参照することができます。ツールの最新バージョンはsilence
スイッチを認識します。
スイッチなし:
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\x64]tlbimp C:\Windows\system32\stdole32.tlb
Microsoft (R) .NET Framework Type Library to Assembly Converter 4.0.30319.17929
Copyright (C) Microsoft Corporation. All rights reserved.
TlbImp : warning TI3001 : Primary interop assembly 'stdole, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' is already registered for type library 'C:\Windows\system32\stdole32.tlb'.
TlbImp : warning TI3002 : Importing a type library into a platform agnostic assembly. This can cause errors if the type library is not truly platform agnostic.
TlbImp : warning TI3016 : The type library importer could not convert the signature for the member 'stdole.DISPPARAMS.rgvarg'.
TlbImp : warning TI3016 : The type library importer could not convert the signature for the member 'stdole.DISPPARAMS.rgdispidNamedArgs'.
TlbImp : warning TI3015 : At least one of the arguments for 'stdole.IDispatch.GetIDsOfNames' cannot be marshaled by the runtime marshaler. Such arguments will therefore be passed as a pointer and may require unsafe code
to manipulate.
TlbImp : Type library imported to stdole.dll
サイレンス スイッチ (複数回) を使用する場合:
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\x64]tlbimp C:\Windows\system32\stdole32.tlb /silence:3016 /silence:3015 /silence:3001 /silence:3002
Microsoft (R) .NET Framework Type Library to Assembly Converter 4.0.30319.17929
Copyright (C) Microsoft Corporation. All rights reserved.
TlbImp : Type library imported to stdole.dll