草庐IT

Shellexecute

全部标签

c++ - 使用 ShellExecute 打开不带 ".exe"扩展名的可执行文件

我想用ShellExecute打开一个没有“.exe”扩展名的可执行文件。我可以使用CreateProcess,但我更喜欢使用ShellExecute。有什么办法吗?我使用C++和win32api函数。谢谢。 最佳答案 您使用thelpClassmemberoftheSHELLEXECUTEINFOstructure说,“我希望你把这个文件当作一个EXE,即使它看起来不像扩展名。”int_tmain(intargc,_TCHAR*argv[]){SHELLEXECUTEINFOsei={0};sei.cbSize=sizeof(se

c++ - 为什么 ShellExecute 找不到文件?

作为来自*nix世界的人,我对Windows行为及其安全系统感到非常困惑。我只是想在我的应用程序中执行一个外部程序。我发现WinAPI函数ShellExecute可以按预期工作,但启动位于%windir%\System32子目录中的一些程序时除外。ping.exe执行成功ShellExecute(NULL,"open","c:\\Windows\\System32\\ping.exe',NULL,NULL,SW_SHOW));//^^^OK,retcode==42java.exe执行失败ShellExecute(NULL,"open","c:\\Windows\\System32\\j

windows - 将 'open' 传递给 ShellExecute 不会在特定计算机上打开 word 文件

我使用ShellExecute打开文件。在2000多个用户中的一台机器上,我无法打开doc文件。docx是用写字板打开的。Word2010已正确安装,并且从资源管理器中双击word文件可以正确打开word,而且文档在资源管理器中显示的图标正确。请注意,所有其他文件都可以正常工作(如xls、xlsx、pdf、...)有人知道为什么吗?我检查并检查了“使用此应用程序打开文件”。在代码中我检查了错误,我知道错误信息是SE_ERR_ASSOCINCOMPLETE或SE_ERR_NOASSOC(因为在这两种情况下我都显示错误“没有应用程序与文件类型相关联”,所以我不知道是哪个错误,我应该在客户端

c++ - CreateProcess 和 ShellExecute 的区别

两者的主要区别是什么?我愿意从我的(C++)应用程序中运行另一个EXE。在继承环境、安全特性等方面有什么不同吗? 最佳答案 CreateProcess和ShellExecute的主要区别如下:CreateProcess更面向底层,ShellExec>在浏览器中看到用户的高用户杠杆上。例如使用CreateProcess可以使用长度大于MAX_PATH的命令行。它有32,768个字符的限制。您还可以使用CreateProcess在另一个Windows桌面上启动程序(如果您有足够的权限),例如在登录屏幕上。另一个例子。例如,您可以使用Sh

c# - .NET 中的 ShellExecute 等价物

我正在寻找.NET首选的方式来执行ShellExecute在Win32中执行的相同类型的操作(针对任意文件类型打开、打印等)。我从事Windows编程已有20多年,但我是.NET的新手,所以也许我只是找错了地方。我目前使用的是.NET2.0(VSC#2005),但如果需要可以使用VS2008。如果唯一的答案是使用P/Invoke,那么我最好只使用Win32编写我的小实用程序。 最佳答案 Process.Start.请注意,高级用途(打印等)需要使用ProcessStartInfo并设置Verb属性(property)。