BalckPP 2022-03-29 14:40
浏览 16
已结题

C#调用PowerShell连接到虚拟机后无法执行代码(用的是process调用)

用Process调用PowerShell连接虚拟机后,部分PowerShell代码运行不了,而且不显示报错。
代码如下:

var p = new Process//基本配置
{
    StartInfo = {
        WorkingDirectory = Environment.CurrentDirectory,
        UseShellExecute = false,
        FileName = "PowerShell.exe",
        CreateNoWindow = true,
        Verb = "runAs",//以管理员身份启动没用
        RedirectStandardInput = true,
        RedirectStandardOutput = true,
        RedirectStandardError = true,
}
};

p.Start();
//定义连接虚拟机的凭据
p.StandardInput.WriteLine("$account = " + "\"administrator\"");
p.StandardInput.WriteLine("$password = '123'");
p.StandardInput.WriteLine("$secpwd = convertto-securestring $password -asplaintext -force");
p.StandardInput.WriteLine("$cred = new-object System.Management.Automation.PSCredential -argumentlist $account,$secpwd");
//连接虚拟机 192.168.11.104
p.StandardInput.WriteLine("Enter-PSSession -Credential $cred -computer 192.168.11.104");
//连接虚拟机后执行清除 C:\Windows\SoftwareDistribution\Download 的所有东西
p.StandardInput.WriteLine(@"Remove-item C:\Windows\SoftwareDistribution\Download -Recurse -Force -Confirm:$false");

p.StandardInput.Close();
String error = null;
String output = null;
while (!p.StandardOutput.EndOfStream)
{
    output += p.StandardOutput.ReadToEnd();
    error += p.StandardError.ReadToEnd();
}
Console.WriteLine("-----------------------------------------------------------------------------");
Console.WriteLine(error);//输出错误信息
Console.WriteLine("-----------------------------------------------------------------------------");
Console.WriteLine(output);//输出执行信息
Console.WriteLine("-----------------------------------------------------------------------------");
p.Close();

执行后:

img

虚拟机192.168.11.104 的C:\Windows\SoftwareDistribution\Download的东西还在

img

不用StandardInput.WriteLine执行指令后,手动输入可以执行删除指令:

img

执行后手动输入代码

img

如果不连接虚拟机可以执行代码并输出结果
并非权限问题,非管理员也可以运行这代码
有没有巨佬研究过为什么连接虚拟机后代码就不管用了

  • 写回答

1条回答 默认 最新

  • BalckPP 2022-03-29 15:18
    关注

    以解决,直接用powershell调用cmd就可以清除

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月7日
  • 已采纳回答 3月30日
  • 创建了问题 3月29日

悬赏问题

  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助
  • ¥15 STM32控制MAX7219问题求解答