jjzjj

ShellExecute

全部标签

windows - 如何将所有快捷方式重定向到给定的可执行文件? Windows 上是否有任何等同于符号链接(symbolic link)的东西?

我正在开发一个程序,其中包括一个通用引擎、一些程序特定内容和一个自定义自动更新程序,以尽可能高效地处理我们内容中值(value)数GB的媒体的更新。在最近发布的引擎中,我们重新组织了我们的目录结构,这样就可以将可执行文件安装到(例如)c:\ProgramFiles\Program\Engine.exe,它现在位于c:\ProgramFiles\Program\engine\win32\NewEngine.exe(请注意,在此过程中引擎的名称也发生了变化)。问题是为了启动程序,用户需要使用快捷方式,我们将其安装在他们的开始菜单和(可选)桌面上。不过,更新后引擎的移动打破了这些捷径。所以现

windows - 如何在Windows Source Insight中使用vim编辑器

我正在使用WindowsSourceInsight。在此只有基本的文本编辑器可用。有没有什么vim插件可以在windwossourceinsight中使用? 最佳答案 根据docs(搜索ShellExecute),您应该能够使用任意程序调用ShellExecute。如果VIM作为编辑器与某个文件关联,这应该可以工作:ShellExecuteedit如果VIM出于某种奇怪的原因不是某个文件的默认编辑器,您应该尝试ShellExecute""C:/Path/to/vim.exe总之,您应该能够从SourceInsight调用任何外部工具

c++ - 使用 ShellExecute C++ 打开长 url

我正在尝试使用ShellExecute()打开一个url.该url是由我的程序为长httpget请求生成的,并且ShellExecute()不工作,不显示任何回应。ShellExecute(NULL,_T("open"),url,NULL,NULL,SW_SHOWNORMAL);//Doesnothingwhenurlistoolong比起我为同一个命令写了一个批处理文件,当url长度大于259个字符时,它会显示这个错误:start"""{mywebsite}/&&&&..."//Repeating&Windowscannotfind'{my-url}/{long-get-reques

c++ - 使用 ShellExecute Properties Verb 的特定属性选项卡

有没有什么方法可以使用ShellExecute的PropertiesVerb打开属性中的特定选项卡?有没有办法做到这一点?(不必是ShellExecute,但找不到太多可以显示文件“属性窗口”的东西)(模仿右键单击文件,选择属性,然后单击“详细信息”选项卡的行为) 最佳答案 我找到了解决方案。以下答案写在C#非常有帮助:>HowdoIdisplayafile'sPropertiesdialogfromC#?>HowdoesoneinvoketheWindowsPermissionsdialogprogrammatically?这是一

c++ - ShellExecute:Verb "runas"不适用于路径中包含空格的批处理文件

我正在使用ShellExecuteW启动一个批处理文件。代码看起来有点像这样:ShellExecuteW(GetDesktopWindow(),wide_verb.c_str(),wide_filename.c_str(),wide_parameters.c_str(),NULL,SW_SHOW);其中wide_变量是wstring类型。此代码适用于文件路径和动词的任意组合,动词“runas”(以获得管理员权限)和给定路径wide_filename中带有空格的批处理文件除外。会弹出UAC提示符,确认后,短时间会弹出命令提示符提示找不到路径,在路径第一个空格处截断。我已经尝试用额外的引号

windows - 重定向 ShellExecute 的进程标准输出(或其他提升和重定向的方式)

这个问题在这里已经有了答案:UsingShellExecuteExandcapturingstandardin/out/err(5个答案)关闭5年前。我正在使用裸机Win32Api。我需要以提升的权限启动应用程序并且应用程序没有list。因此,唯一的方法是将ShellExecuteEx与runAs动词一起使用。它有效,但我需要阅读进程标准输出。通过CreateProcess,我得到了STARTUPINFO,我可以使用它来传输进程标准输出。但是ShellExecuteEx没有这样的API。那么,如何提升和重定向标准输出?

c++ - 为什么我们需要用 ShellExecute 传递 LPCTSTR lpParameters

ShellExecute具有以下签名:HINSTANCEShellExecute(__in_optHWNDhwnd,__in_optLPCTSTRlpOperation,__inLPCTSTRlpFile,__in_optLPCTSTRlpParameters,__in_optLPCTSTRlpDirectory,__inINTnShowCmd);我们如何使用lpParameters,我们可以在我的应用程序中处理参数。我正在执行我的应用程序如下:HINSTANCEhShellExecuteStatus=ShellExecute(NULL,"open","MyPath/MyApp.EXE

c++ - 使用 ShellExecute() 与手动打开命令提示符有什么区别?

我正在尝试通过我创建为一种“启动器”应用程序的Windows程序来运行Java程序。通常要运行此java程序,我会运行批处理文件或直接转到cmd提示窗口(Windows键+R,键入“cmd”)并输入java-Xmx4096M-Dsun.java2d.noddraw=true[...]。关键是java在这个窗口里好像被认出来了。另一方面,当我从我的应用程序启动命令提示符时,java不再“被识别为内部或外部命令、可运行程序或批处理文件”。TCHARszPath[MAX_PATH];if(SUCCEEDED(SHGetFolderPath(NULL,CSIDL_SYSTEM,NULL,0,s

c++ - ShellExecute(和 ShellExecuteEx)对我的 URL 不做任何事情

我正在使用C++BuilderXE7创建一个项目,用户可以在其中单击按钮打开Web链接,例如打开支持页面,或在社交媒体上分享他的经验。为此,我使用了ShellExecute()函数,它运行良好,除了一个按钮。当我点击这个按钮时,什么也没有发生。ShellExecute()函数返回没有错误(返回值为42),但是我的默认浏览器打不开,网页根本不显示。这是我的ShellExecute()实现constHINSTANCEresult=::ShellExecute(handle,"open",url.c_str(),NULL,NULL,SW_SHOWDEFAULT);我还尝试了ShellExec

windows - 如果我调用ShellExecuteEx,为什么GetExitCodeProcess表示该程序即使仍在运行也终止了?

我想打开一个文件,该文件最初保存到SQL表,但在调用ShellExecuteEx之前已保存到磁盘。保存后,我现在有了一个有效的文件路径,理论上应该可以使用此功能来实现我的目标。我需要该程序在其适当的程序中打开文件,并等待该程序关闭后再继续。当前,代码将启动正确的应用程序并打开传递的文件,但无需等待(我知道这是因为我会显示一条消息,指示应用程序何时终止),而这样做却会关闭我编写的应启动正确程序的应用程序。它显示消息,然后启动程序。我承认我不完全了解ShellExecuteEx的工作原理,并且已经将我在网络上找到的代码与我的代码结合使用以获得期望的结果。在下面,您将找到代码。任何帮助将不胜