首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VB.Net应用程序不会启动klist.exe可执行文件(即使是从完整路径)

VB.Net应用程序不会启动klist.exe可执行文件(即使是从完整路径)
EN

Stack Overflow用户
提问于 2021-01-03 08:39:03
回答 1查看 76关注 0票数 0

有一个VB.Net应用程序,我试图调用klist.exe来清除缓存的Kerberos票。

代码语言:javascript
复制
Dim klist As New ProcessStartInfo("C:\Windows\System32\klist.exe")
klist.Arguments = "purge"
Process.Start(klist)

调试器发出:

代码语言:javascript
复制
System.ComponentModel.Win32Exception: 'The system cannot find the file specified'

该文件显然存在,并且可以在没有命令提示符提升的权限的情况下运行。

这是什么蠢事?还是我太累了以至于错过了一些显而易见的东西?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-01-03 17:57:09

在64位机器上,c:\windows\system32中的文件是64位文件,c:\windows\SysWOW64中的文件是32位文件(是的.我知道你要说什么)。操作系统中的背景重定向确保尝试访问c:\windows\system32的32位程序被重定向到c:\windows\syswow64,这样他们就可以从system32中找到他们认为想要的32位文件。考虑到klist.exe是在system32中,因此它是64位(至少对我来说,ymmv),你的应用程序找不到它就意味着它很可能是32位,并且被重定向到不包含klist.exe的syswow64文件夹。另一方面,您的控制台会话没有这个比特性问题,正在使用system32文件夹/查找klist.exe

将应用程序设置为64位;将目标CPU设置为x64或使其为AnyCPU,并关闭“偏好32位”复选框

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65547978

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档