MSDN打开对话框示例代码

Posted

技术标签:

【中文标题】MSDN打开对话框示例代码【英文标题】:MSDN open dialog box sample code 【发布时间】:2014-06-11 22:10:33 【问题描述】:

所以我试图从 MSDN 运行和编译这段示例代码(打开一个对话框): http://msdn.microsoft.com/en-us/library/ff485843(v=vs.85).aspx

我的编译器出错: main.cpp:在函数“int wWinMain(HINSTANCE,HINSTANCE,LPWSTR,int)”中: main.cpp:19:9: 错误:'IFileOpenDialog' 未在此范围内声明

我从文档中得到的是 CoInitializeEx 函数应该链接到必要的 COM 库并导入所需的函数。虽然我对 C++ 和 Windows 完全陌生,但我肯定会出错。

我使用 Netbeans、MinGW 和 MSYS。

有人可以帮我看看这里发生了什么以及如何解决吗?

【问题讨论】:

您是否按照示例包含了所有内容?你能显示你当前的代码吗? 在 MinGW 中,可能缺少这些东西。 Winapi 很大,不是所有的东西都被移植了。 我只是复制并粘贴了那里的所有内容。假设它丢失了,你将如何解决这个问题? 除了尝试在MinGW中使用VS头文件,或者使用VS本身;还是为 MinGW 项目做东西?使用以下答案的替代方案... 【参考方案1】:

MinGW g++ 4.8.2 版(我拥有的那个)还不支持在 Windows Vista 或更高版本中引入的 Windows API 函数或接口。

作为一种解决方法,您可以使用旧的GetOpenFileName or GetSaveFileName dialog。

或者下载并安装 Visual Studio Express for Windows Desktop,并使用 Visual C++。

【讨论】:

谢谢,我会花很长时间来弄清楚这一点。我想学习在Windows中编程,你似乎有一些知识和声誉:你会怎么做? MSDN 似乎非常依赖 Visual Studio。有没有更好的资源来学习不依赖任何依赖的窗口? 或者仅仅是MinGW根本不包含必要的东西? 当然,MSDN 和 VS 是由同一家公司制造的……当使用 API 中的“不寻常”的东西时,VS 仍然是最简单的方法。是的,MinGW 只是缺少这些东西,因为直到现在还没有人成功。 @user3718333:我从 Petzold 的经典“Programming Windows”一书中学习了 Windows 编程,然后是 Windows 3.1,或者可能是 3.0 :)。使用 Visual C++。但据报道,该书的最新版本是 C# 和 .NET,而不是我理解的 API 级别。您可以使用我的旧 Windows API tutorial 启动并运行,我确保所有示例都可以使用 MinGW g++ 构建。 谢谢大家,我想你们救了我一串白发:)

以上是关于MSDN打开对话框示例代码的主要内容,如果未能解决你的问题,请参考以下文章

Java AWT 图形界面编程FileDialog 对话框 ( 打开文件 | 保存文件 | 构造函数 | 获取文件路径 | 获取文件名称 | 代码示例 )

自定义InkCanvas(MSDN代码示例无法正常工作)

删除注册表项 - MSDN 示例中的错误

msdn bind2nd 函数示例

内在示例 - 这里发生了啥(包括完整的代码)?

关闭 PyQt 对话框会终止父进程? (PyQt4 / Pyside) 带有示例代码