如何调用 ShellExecute 以使用 C++ 打开具有特定程序的文件,而无需关联相同的文件扩展名
How to call ShellExecute to open a file with specific program using C++ without associating same file extensions
我阅读了MSDN并尝试了这行代码
ShellExecute(handle, "open", "fully_qualified_path_to_file", NULL, NULL, SW_SHOWNORMAL(;
它工作正常,但我需要更多的功能。我编写了一个应用程序,它可以在扩展名为.bin文件中输出。在我的操作系统上,.bin文件不与任何特定程序关联。MSDN 说我可以将所有.bin文件与我的应用程序与编程相关联,但这种情况对我来说是不可接受的。
如何添加此行代码以使用特定程序打开特定文件?附言我试图将我的应用程序路径放在第 4 个参数中,如 MSDN 所示,史密斯就是这样,
C:\\应用程序.exe" "%1">
但它没有用。
如果 lpFile
参数不是.exe则 Windows 只有在注册表中具有文件类型注册时才能执行该文件(ShellExecute 将从注册表读取命令行并将 %1 替换为文件名(。
如果要强制使用特定应用程序,则lpFile
需要指定所述应用程序的名称/路径,并且您希望它打开的文件必须是应用程序支持的格式的参数的一部分,通常只是文件的完整路径(如果路径包含空格,则用"
引号(。在这种情况下,ShellExecute 不会为您转换 %1。
相关文章:
- 在C++程序中输入的文本文件将不起作用,除非文本被复制和粘贴
- C++ Windows 驱动程序MSB3030无法复制该文件,因为它找不到
- 使用mongocxx驱动程序时包含头文件问题
- 使用VerQueryValue检索应用程序的文件描述
- 编译多文件C++程序
- Visual C 32位整数从文件到8位字符到文件 - 程序在某些整数上崩溃
- 文件程序不会停止显示垃圾值
- 简单的QT从文本文件程序中读取不编译
- 从文件 C++ 程序读取停止工作
- C++ - 需要有关如何正确设计多文件程序的建议
- C++文件 I/O - 程序挂起
- 简单的文件 I/O 程序C++
- 有一个简单的程序文件/程序文件(x86)指令的c++在windows
- 配置文件c++程序在perf
- 从同一文件夹读取文件(c++程序)
- 单文件程序的未定义虚函数表
- 无法用多文件程序创建SDL线程
- 我的第一个多文件C++程序不断给我错误消息
- 配置文件C++程序基于墙上的时钟时间与英特尔Vtune放大器
- c++复制文本文件程序使用头文件