我创建了一个小型应用程序,它使用以下命令自动提升为管理员:
requestedExecutionLevel level="highestAvailable" uiAccess="false"
如果我在计算机上本地运行应用程序,这可以正常工作。但是,如果计算机试图通过网络运行我的可执行文件,它只会在启动时崩溃并显示一条消息“您想发送有关该问题的更多信息吗?” 错误。如果我右键单击并以管理员身份运行,我的应用程序将运行并提示输入管理员凭据。
我从(通过网络)运行我的应用程序的文件夹对“每个人”具有完全的读/写权限。
我的问题是:我错过了什么吗?为什么我可以在本地运行我的应用程序而没有收到提示,但跨网络崩溃或需要管理员?
任何人都可以帮助解释可能导致此问题的原因吗?
更新 我检查了我的事件查看器日志,它显示以下内容:
应用程序:AutoUpdater.exe 框架版本:v4.0.30319 描述:进程因未处理的异常而终止。异常信息:System.Net.Sockets.SocketException 堆栈:在 System.Net.Sockets.Socket..ctor(System.Net.Sockets.AddressFamily, System.Net.Sockets.SocketType, System.Net.Sockets.ProtocolType) 在系统.Net.Sockets.TcpListener..ctor(System.Net.IPAddress, Int32) 在 System.Runtime.Remoting.Channels.Tcp.TcpServerChannel.SetupChannel() 在 System.Runtime.Remoting.Channels.Tcp.TcpServerChannel..ctor( System.Collections.IDictionary, System.Runtime.Remoting.Channels.IServerChannelSinkProvider, System.Runtime.Remoting.Channels.IAuthorizeRemotingConnection) 在 Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.RegisterChannel(ChannelType, Boolean) 在 Microsoft.VisualBasic.ApplicationServices。
我不明白为什么它引用 System.Net.Sockets?? 但这似乎使我的应用程序崩溃。