2013-10-23 29 views
1

我在做C++中的游戏,我有一个奇怪的位置(安装目录)与该Print Screen关键取自我的游戏截图目录。目录C/C++

我想要做的就是创建一个打开Windows资源管理器截图的位置的按钮。

我正在考虑使用C的system函数与explorer.exe和一些参数,但我不认为这是这样做的正确方法。

我可能会在全屏模式下禁用此功能,因为我想避免意外的行为。

回答

4

做到这一点,最好的办法是用SHOpenFolderAndSelectItems()功能。这可以让您打开默认的文件夹管理器(即不需要硬编码到资源管理器,尊重用户的选择),并且可以让您自动选择新创建的屏幕截图。

+0

谢谢,它完美的作品。 – Pacha

0

我对Windows图形编程了解不多,但使用的正确函数调用可能是_spawnveP_NOWAIT已设置。

1

使用ShellExecute的原生Windows API做

#include <shellapi.h> 
#pragma comment(lib, "shell32") 
int main() 
{ 
    ShellExecute(NULL, "open", "C:\\ProgramFiles\Location", NULL, NULL, SW_SHOWMINIMIZED); 
    return 0; 
} 
+1

[“open”动词不一定是默认动词。](http://blogs.msdn.com/b/oldnewthing/archive/2007/04/30/2332224.aspx) –

+0

@JonathanPotter - 梦幻般的链接,很多谢谢! :) – enhzflep

+0

@Jonathan Potter确实,但他明确提到他正在尝试打开一个文件夹,因此“打开”动词就足够了“创建一个按钮,打开Windows资源管理器并显示屏幕截图的位置>> – Balu