.NET(C#またはVB.NET)用のUPnPライブラリはありますか? [閉まっている]
-
22-07-2019 - |
質問
私はP2Pアプリケーションで作業していますが、UPnPを使用してNATルーター/ファイアウォールを介して通信できるようにする必要があります。ただし、.NET FrameworkにUPnPのサポートが含まれているようには見えません。
.NET用のUPnPライブラリはありますか? C#またはVB.NET?
UPDATE:その後、UPnPを使用してポートフォワーディングを簡単にセットアップ/維持できるWindows(Windows XP以降)の一部であるNATUPnP 1.0タイプライブラリ(NATUPNP.DLL)COMコンポーネントを見つけました。
ここにコードサンプルを含む記事を書きました。 .NET Framework:UPnP(ユニバーサルプラグアンドプレイ経由でNATルーターを介して通信する)
解決
アクセスしやすいCOMライブラリがあります:
UPnP API 目的
UPnP™フレームワークにより、動的な インテリジェントアプライアンスのネットワーク、 ワイヤレスデバイス、およびPC。がある 作業用の2つのAPI UPnP認定デバイス:
コントロールポイントAPI 。 に使用されるCOMインターフェイスのセットの デバイスを見つけて制御します。 デバイス ホストAPI は、一連の 実装に使用されるCOMインターフェイス コンピューターによってホストされているデバイス。
他のヒント
Microsoft UPnP Control Point COMオブジェクトの周りに完全に管理されたUPnPライブラリを作成しました。完全なソースとデモプロジェクトで使用できます。CodePlexからダウンロードできます。
http://managedupnp.codeplex.com/
オブジェクト階層を使用したUPnP記述ドキュメントの完全なトラバーサルをサポートします。他のものの中でも非常に使いやすいです。
Mono.Natはupnpにとって非常に優れたライブラリです。少なくとも私の場合は、これまでNATUPnPを使用していたときよりも問題が少なくなりました。
こちらからダウンロードできます。方法については、適切なチュートリアルをご覧ください。 http://www.fluxbytes.com/で操作するcsharp / upnp-port-forwarding-the-easy-way /
このようなものを個人的に探して見つけたもの::
mono-upnp :: https://github.com/mono/mono-upnp
Mono.Nat :: https://github.com/mono/Mono.Nat
私はこれを使用しますが、うまくいくようです:
Intels UPNPツール C#でUPnPクライアントをエクスポートできるようになりました。このスイートは非推奨ですが、まだ機能するはずです。
簡単なライブラリが必要な場合は、UPnPLib COMコンポーネントを使用するc#クラスライブラリを作成しました。ポートを開いたり閉じたりする基本的な機能がいくつかあります。複数のプラットフォームでまだテストしていませんが、Windows 7のVisual Studio 2010で動作します。 http://sourceforge.net/projects/easyupnp/
NATには、特にMono.Natがあります。