C# Windows 2004更新后无法以其他用户身份运行EXCEL.EXE
我需要使用不同于当前用户的用户运行EXCEL.EXE;在过去,我这样做没有任何问题,但在更新系统到Windows10Pro版本2004(19041.508)后,这种方法不再有效 我使用了以下课程(感谢): 这样:C# Windows 2004更新后无法以其他用户身份运行EXCEL.EXE,c#,windows,powershell,office365,impersonation,C#,Windows,Powershell,Office365,Impersonation,我需要使用不同于当前用户的用户运行EXCEL.EXE;在过去,我这样做没有任何问题,但在更新系统到Windows10Pro版本2004(19041.508)后,这种方法不再有效 我使用了以下课程(感谢): 这样: var otherUserInSystemName = "probanduela"; var otherUserInSystemPassword = "chapuza"; var
var otherUserInSystemName = "probanduela";
var otherUserInSystemPassword = "chapuza";
var regularWin32AppPath = @"C:\Program Files (x86)\WinMerge\WinMergeU.exe";
var officeWin32AppPath = @"C:\Program Files (x86)\Microsoft Office\root\Office16\EXCEL.EXE";
var ProcessId = CreateProcess.LaunchCommand(officeWin32AppPath, Environment.MachineName, otherUserInSystemName, otherUserInSystemPassword);
我总是会遇到以下错误:
1312: A specified logon session does not exist. It may already have been terminated.
还尝试了CreateProcessWithLogonW,结果相同
如果我试图通过PowerShell或“runas”运行它,也会出现类似的问题
这个方法在升级到Windows102004版本之前是有效的,我在不同的计算机上复制了这个方法
有什么问题吗?我怎样才能实现我想做的事
-编辑-
刚刚发现使用ExcelV2002构建12527.21104是可行的;但对于ExcelV2008构建13127.20408,它失败了
因此,显然是Windows10V2004+Office2019V2008的组合导致了这个问题
-编辑2-
如果我复制了一份EXCEL.EXE并给它起了另一个名字,比如“EXCEL_copy.EXE”,它就可以工作了:S我向Microsoft报告了这个问题,在提高了几个级别后,他们已经处理并修复了它。它固定在上。您是否尝试过在PowerShell中使用启动进程-文件路径Excel-动词RunAs?您是否知道升级前的版本?您的目标是简单地“运行”该程序,还是尝试从shell调用它。根据答案,我们可能需要更多的细节,比如提到的@dxiv,或者如果您想运行一个exe,请在按住Shift键的同时右键单击该可执行文件。上下文菜单将显示“以其他用户身份运行”选项。@Vantech这样做时,我得到了相同的错误,但在弹出窗口->@KUTlime中,它产生的结果与通过上下文菜单执行的结果相同,这是相同的错误,但在弹出窗口->我最近发现,制作一个exe文件的副本,并执行此文件,而不是原来的一个工作。不确定是否存在差异,因为两者的权限看起来相同:S
1312: A specified logon session does not exist. It may already have been terminated.