Visual studio 2010 如何在VisualStudio2010中添加netsh advfirewall上下文命令单击一次发布?

Visual studio 2010 如何在VisualStudio2010中添加netsh advfirewall上下文命令单击一次发布?,visual-studio-2010,clickonce,netsh,Visual Studio 2010,Clickonce,Netsh,我有一个.Net 4.0 Windows应用程序,需要通过防火墙进行访问。我知道netsh advfirewall防火墙命令,但我非常希望在安装时允许使用此程序(单击一次部署) 如何添加此命令以作为安装后命令执行,以管理员身份执行-即,执行安装的人员不必单独执行netsh advfirewall命令,也不必转到防火墙并手动将程序添加到允许列表中 我在Visual Studio 2010的Publish中找不到插入安装后命令行执行的区域。您不能有安装后命令。如果要执行命令,需要在应用程序启动后从应

我有一个.Net 4.0 Windows应用程序,需要通过防火墙进行访问。我知道netsh advfirewall防火墙命令,但我非常希望在安装时允许使用此程序(单击一次部署)

如何添加此命令以作为安装后命令执行,以管理员身份执行-即,执行安装的人员不必单独执行netsh advfirewall命令,也不必转到防火墙并手动将程序添加到允许列表中


我在Visual Studio 2010的Publish中找不到插入安装后命令行执行的区域。

您不能有安装后命令。如果要执行命令,需要在应用程序启动后从应用程序中执行

if (ApplicationDeployment.IsNetworkDeployed && ApplicationDeployment.CurrentDeployment.IsFirstRun)
{
    //run something    
}

你不可能强迫它以管理员的身份运行。它将以与用户相同的权限运行。

您不能使用post install命令。如果要执行命令,需要在应用程序启动后从应用程序中执行

if (ApplicationDeployment.IsNetworkDeployed && ApplicationDeployment.CurrentDeployment.IsFirstRun)
{
    //run something    
}

你不可能强迫它以管理员的身份运行。它将以用户拥有的相同权限运行。

谢谢Whatknot。因此,您的意思是ClickOnce部署是有限的,即无法配置应用程序安装以将其自身添加到防火墙允许的程序列表。正确。ClickOnce基本上将文件从服务器复制到客户端,并在更新服务器文件时保持同步。就这样。它只能做一些有限的事情(例如,创建桌面快捷方式),但除此之外,它还很有限。ClickOnce的简单性既是它最好的一面,也是最坏的一面:)。除非您的应用程序定期更改,否则您可能只想查看传统的msi安装。谢谢。因此,您的意思是ClickOnce部署是有限的,即无法配置应用程序安装以将其自身添加到防火墙允许的程序列表。正确。ClickOnce基本上将文件从服务器复制到客户端,并在更新服务器文件时保持同步。就这样。它只能做一些有限的事情(例如,创建桌面快捷方式),但除此之外,它还很有限。ClickOnce的简单性既是它最好的一面,也是最坏的一面:)。除非您的应用程序定期更改,否则您可能只想查看传统的msi安装。