

お世話になります。表題についてネットで検索をしてみたのですが、どうしても解決が出来ずお尋ねさせて頂きます。

以下の環境で開発をしております。

  * Visual Studio 2017のVB.net
  * Windows 7 (32 bit)

プロジェクトをビルドすると次の警告が出てしまいます。

> COM 参照 "MSXML2" をパス "C:\Windows\System32\msxml3.dll"
> から処理しています。'SAXXMLReader60.getSecureBaseURL' の引数のうち少なくとも 1 つをランタイム
> マーシャラーでマーシャリングできません。 したがってこのような引数はポインターとして渡され、アンセーフ コードの使用が必要になります。

「参照の追加」で「Microsoft XML, v6.0」に変更等などしてみたのですが、一向に警告は消えません。

MSXML2を以下の処理で使用しております。

[code]

    Imports MSXML2
    
    '省略
    Dim ServerXML As New MSXML2.ServerXMLHTTP60()
    ServerXML.open("Get", apistr, False)
    ServerXML.send()
    
[/code]

また以下のサイトも読みながら対応してみたのですが、当問題に関係しているのかも正直よくわかりません。

<https://blogs.msdn.microsoft.com/jpsql/2016/11/25/howtouse_msxml2domdocument/>  
<https://msdn.microsoft.com/ja-jp/library/ms753751.aspx>

どのようにすれば警告が消せるのかご教示下さい。

どうぞ宜しくお願いいたします。


CC BY-SA 3.0
2017-07-16T07:27:39.440
36412
2022-01-08T10:06:15.567
2017-07-16T08:51:32.377
21092
24437
question
vb.net com
VB.net COM 参照 "MSXML2" をパス "C:\Windows\System32\msxml3.dll" から処理しています。


System.Xmlでも実現できる事は確認できました。  
質問した警告についてですが、次のサイトの8にある答えで対応いたしました。

<https://stackoverflow.com/questions/269063>

> 次のサイトの8にある答え

`8`が2017年当時に8票の回答と想定し、高評価の回答を引用翻訳します。

> I added the following key to the property group of each build configuration:

(csprojの)『ビルド構成』プロパティグループに下記のキーを追加して対応しました：

[code]

    <ResolveComReferenceSilent>True</ResolveComReferenceSilent>
    
[/code]

* * *

この投稿は @Tom
さんの[コメント](https://ja.stackoverflow.com/questions/36412/#comment36374_36412)などを元に編集し、[コミュニティWiki](https://ja.meta.stackoverflow.com/q/1583)として投稿しました。


CC BY-SA 4.0
2021-01-28T02:16:56.557
73623
2021-01-28T02:16:56.557
9820
36412
answer