0

我有一个批处理文件,它可以在大约 1 秒内安装 WinVNC 并启动服务。但是,我仍然必须手动进入 Windows 防火墙并打开一个端口以允许连接。我怎样才能以编程方式做到这一点?

如果我可以从批处理文件中执行此操作,那将是理想的,但如果有必要,我可以编写一个 EXE。

4

5 回答 5

2

Windows 防火墙为此提供了自己的 API:Windows 防火墙和具有高级安全性的 Windows 防火墙。查看 INetFwOpenPorts::Add() 方法。

于 2009-06-17T01:09:37.523 回答
1

让我为您搜索一下:http:
//www.windowsecurity.com/articles/Customizing-Windows-Firewall.html

此页面包含多种自定义防火墙的方法,其中使用这些方法netsh.exe似乎可以让命令行访问 Windows 防火墙。

于 2009-04-29T14:50:27.370 回答
1

这是一个很好的资源,我过去曾多次使用过。我知道这是典型的“指向 RTFM 站点”,但实际上,它是一个很好的资源,我已经成功使用它。

http://msdn.microsoft.com/en-us/library/aa366415(VS.85).aspx

祝你好运。

于 2009-04-29T14:56:06.230 回答
0

shoosh 帮我搜索了一下,我想出了这个,效果很好。

netsh firewall add portopening tcp #### "VNC"

用端口替换####。

于 2009-04-29T16:07:00.243 回答
0

查看Windows防火墙的源代码(发布在google groups,Win32上)

于 2009-04-29T16:24:32.430 回答