我正在使用VC++ 2005 Express,它没有资源编辑器。因此,我想知道是否有手动使用资源的方法?我真的必须制作一个.rc文件才能使用资源吗?我的意思是,我不能像fstream C++那样导入它吗?如何手动使用资源?
回答
如果你想这样做硬盘的方式,在Windows API提供functions for both reading and writing resources。看看UpdateResource
。
问题是我如何在外部加载它们?更新函数只更新模块内部的资源文件,规定我们有一个资源文件的句柄。如何创建文件url以外的句柄? – biloon 2011-06-14 13:15:45
@biloon:什么样的资源?如果您不想将您的内容嵌入到应用程序中,通常根本不使用资源,而是收集松散文件。无论如何,你从'BeginUpdateResource'获得句柄,你需要一个本地文件名,而不是一个URL。 – 2011-06-14 13:17:10
好吧,我有点明白你的意思,但如果我的理解错误,请纠正我。资源文件是内部数据文件并保留在可执行文件或库中。因此,在编译期间,我必须以某种方式将它加载到可执行文件中。但是,我不知道如何加载它们,因为UpdateResource需要我提供一个指向资源文件的指针,我不知道如何获取它。 – biloon 2011-06-14 13:27:59
完整回答这个问题取决于你要创建的资源类型。为窗口和对话框中的一个选项是完全忽略资源,创造你需要RegisterClassEx,CreateWindow,SetWindowLongPtr和几个其他的功能是什么。
有时候这条路感觉比使用资源文件如果要创建可调整大小的内容更容易。
如果您有一个现有的框架来处理它,则可调整大小的内容不一定很难:http://stackoverflow.com/questions/138040/how-to-create-a-resizable-cdialog-in-mfc/5739620#5739620 – 2011-06-14 15:34:57
两个选择:
- 你可以下载完整Windows SDK,这是免费的,包含了官方的C和C++编译器,以及资源编译器。
- 如果你是一名大学生,你可以从MSDNAA下载完整版的Visual Studio。
- 如果你是一个学生,在MSDNAA不可用,您仍然可以从DreanSpark得到完整的副本。
- 您可以购买Visual Studio的完整版本 - 我假设这可能是成本高昂的。
假设您使用Windows SDK路径,您将编写资源脚本并将其传递给rc tool。
(不知道为什么你还在使用2005速成但考虑到2010速成是出...)
- 1. 如何在C#中手动使用资源(无IDE动作)?
- 2. 如何手动将资源添加到Win32资源文件
- 3. 手动创建RESTful资源
- 4. 手动关闭试用资源
- 5. 如何在资源文件中手动引用DataGridViewColumn.HeaderText?
- 6. 如何使用资源?
- 7. 如何使用ExternalDirectory资源
- 8. 如何使用编程(动态)使用不同名称创建资源资源s1,资源s2 ,,,
- 9. 如何存活动资源?
- 10. Windows资源管理器活动手表
- 11. 从resx手动检索资源值?
- 12. 如何使用资源,如果“资源和图像”为空
- 13. 如何更新动态资源中的动态资源?
- 14. 如何手动更新包资源管理器(首选项)
- 15. 如何使用活动记录通过它的根资源ID查询资源?
- 16. 如何使maven使用测试资源
- 17. 如何使用“Resx中嵌入的资源”中的资源?
- 18. Expander从动态资源IsExpanded,如果手动更改不工作
- 19. 使用资源
- 20. 新手合作Ruby资源
- 21. URL帮手在资源
- 22. Android:如何让资源为平板电脑取代手机资源
- 23. 如何使用rest-client与主动资源用于非rails api
- 24. 如何使用静态资源infowindow setContent?
- 25. 如何使用Angular Query资源
- 26. 如何使用布局,选择资源
- 27. 如何释放HttpPostedFileBase使用的资源?
- 28. 如何使用R加载HTTP资源?
- 29. 如何使用资源两次?
- 30. Rails 3.2如何使作用域资源
您正在使用的答案挣扎的原因是,这个问题还不清楚。添加更多细节以获得更好的答案。 – 2011-06-14 14:28:53