約 1 秒で WinVNC をインストールし、サービスを開始するバッチ ファイルがあります。ただし、手動で Windows ファイアウォールにアクセスし、ポートを開いて接続を許可する必要があります。どうすればプログラムでそれを行うことができますか?
バッチ ファイル内から実行できれば理想的ですが、必要に応じて EXE を記述してもかまいません。
約 1 秒で WinVNC をインストールし、サービスを開始するバッチ ファイルがあります。ただし、手動で Windows ファイアウォールにアクセスし、ポートを開いて接続を許可する必要があります。どうすればプログラムでそれを行うことができますか?
バッチ ファイル内から実行できれば理想的ですが、必要に応じて EXE を記述してもかまいません。
Windows ファイアウォールには、その目的のための独自の API があります。 Windows ファイアウォール および セキュリティが強化された Windows ファイアウォールです。INetFwOpenPorts::Add() メソッドを見てください。
Google で検索してみましょう:
http://www.windowsecurity.com/articles/Customizing-Windows-Firewall.html
netsh.exe
このページには、 Windows ファイアウォールへのコマンド ライン アクセスを提供するように思われる使用方法の中で、ファイアウォールをカスタマイズするための多数の方法が含まれています。
これは、私が過去に何度も使用した優れたリソースです。これが典型的な「RTFM サイトへのポイント」であることは知っていますが、実際には優れたリソースであり、うまく使用しています。
http://msdn.microsoft.com/en-us/library/aa366415(VS.85).aspx
幸運を。
shoosh がググってくれて、これを思いついたのですが、これは完璧に動作します。
netsh firewall add portopening tcp #### "VNC"
#### をポートに置き換えます。
Windows ファイアウォールのソース コードを参照してください (Google グループ、Win32 に投稿)