【问题标题】:I want to run .exe as a webserver on a remote host我想在远程主机上运行 .exe 作为网络服务器
【发布时间】:2021-11-29 09:58:07
【问题描述】:

问题一:平时是这样做的吗?

问题 2:我已经在端口 80 的 Azure Web App 上进行了尝试,我得到“尝试以访问权限禁止的方式访问套接字。”,我想也许嗯.. 防火墙,但后来我读到了一些我认为的限制。

问题 3:Azure 是否适合这种情况?如果不适合,那是什么?

【问题讨论】:

  • 您的 .exe 是否在端口 80 上侦听以接受传入的 HTTP 请求?
  • 正在监听 80 端口但不接受任何连接导致无法启动
  • @Todor Yanev,问题有更新吗?

标签: c# azure tcp exe


【解决方案1】:

如果需要在远程机器上执行.exe,有​​以下几种方法:

  1. PowerShell
  2. CMD [使用 Ps Exec]
  3. RemoteExec - 加密软件

1) PowerShell

使用 WS-Management 协议,Windows PowerShell 远程处理允许您在一台或多台远程计算机上运行任何 Windows PowerShell 命令。您可以在远程计算机上建立持久连接、启动交互式会话和运行脚本。

要在一台或多台计算机上运行命令,请使用 Invoke-Command cmdlet。

Invoke-Command -ComputerName Server01, Server02 -ScriptBlock {Get-UICulture}

输出:

LCID    Name     DisplayName               PSComputerName
----    ----     -----------               --------------
1033    en-US    English (United States)   server01.corp.fabrikam.com
1033    en-US    English (United States)   server02.corp.fabrikam.com

要执行脚本,运行 .exe 应用程序,在远程计算机上播放并与更多命令交互,请参阅此 Microsoft Detailed documentation of Windows PowerShell Remoting 和此 SO Thread 通过远程计算机上的 CMD 为您提供 PowerShell 执行命令概述。

示例代码:(以编程方式):

using System.Diagnostics;
// ....
Process p = new Process();
p.StartInfo.FileName = @"c:\PsTools\psexec.exe";
p.StartInfo.Arguments = @"\\ibi20-pc -u ibi20 -p 12345 -i c:\windows\system32\notepad.exe";
p.StartInfo.UseShellExecute = false;
p.StartInfo.CreateNoWindow = true;
p.Start();

如果您需要使用发布管道Azure Devops 在远程客户端计算机上运行 .exe in PowerShell ,这个SO Thread 可以帮助你。

2) CMD [使用 Ps Exec]

PsExec 工具允许您在远程计算机上运行程序和进程,并使用控制台应用程序交互界面的所有功能。

PsExec 的主要优点是能够在远程计算机上调用交互式命令行界面、远程运行程序以及执行任何命令(在后台或交互模式下)。

PsExec 实用程序是 Sysinternals 的 PsTools 包中最受欢迎的程序之一。你可以下载它on this page。 要使用PsExec工具,只需将其复制到计算机上的文件夹中(方便的是复制到默认的可执行文件夹C:\Windows\System32),然后从命令提示符或PowerShell中运行它控制台。

要使用 PsExec 进行连接,请使用以下命令:

psexec \\RemotePCName [-u username[-p password]] command [arguments]

按照此documentation 继续执行在远程计算机上运行 .exe 的进一步步骤。


3) RemoteExec - 一个方便的加密软件:

这是一种无代理和加密的软件解决方案,可让您:

  • 轻松部署 MSI 软件包、Service Pack、补丁、修补程序等,并立即获悉结果
  • 远程执行程序、脚本和相关文件,或将它们安排在以后的日期或时间
  • 修改注册表、更改 LocalAdmin 密码、禁用本地帐户、复制/更新/删除文件和文件夹
  • 远程关机、唤醒、重启服务器和工作站、锁定或关闭用户会话等。

更多可用的方法,例如任务计划程序 > 连接到另一台计算机,使用 C# 和其他第三方软件在另一台计算机上运行 .exe。

PsExec and PowerShell 允许管理员远程执行系统命令,无需过多的预配置或开销。

新手用户的最佳选择是使用 PsExec 选项,因为它是最容易开始的,并且允许您远程运行基于 CLI 的可执行文件并利用完整的功能集

【讨论】:

  • 如果回答对您有帮助,请Accept it as an Answer,以便遇到相同问题的其他人可以找到此解决方案并解决他们的问题。
猜你喜欢
  • 2011-04-05
  • 2022-01-02
  • 2018-09-09
  • 2016-11-27
  • 1970-01-01
  • 1970-01-01
  • 2019-08-25
  • 1970-01-01
  • 2018-06-02
相关资源
最近更新 更多