gpt4 book ai didi

c++ - 如何使用与其文件扩展名关联的程序打开文件?

转载 作者:IT老高 更新时间:2023-10-28 22:09:22 26 4
gpt4 key购买 nike

有没有一种简单的方法可以在 Windows 中通过其关联程序打开文件?(就像在 Windows 资源管理器中双击它,但使用我的代码自动完成)

例如,在计算机 A 上,“text.txt”将在写字板中打开,但在计算机 B 上,由于用户文件扩展名分配,它将由 Notepad++ 打开。

我试过 ShellExecute

ShellExecute(0, L"open", L"c:\\windows\\notepad.exe" ,L"c:\\outfile.txt" , 0 , SW_SHOW );

这可行,但如果我省略 notepad.exe 参数,就会发生奇怪的事情(显示随机浏览器)。

最佳答案

您想使用文件作为文件参数打开,而不是参数参数。无需指定使用哪个程序,ShellExecute 会为您查找。

ShellExecute(0, 0, L"c:\\outfile.txt", 0, 0 , SW_SHOW );

通过将动词保留为 NULL (0) 而不是 L"open",您可以获得文件类型的真正默认操作 - 通常这是 open 但不是总是。

关于c++ - 如何使用与其文件扩展名关联的程序打开文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9115574/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com