演示如何在当前程序中添加一个word资源,并在运行时读取它
1)打开资源视图,导入一个word文档,资源类型定义为“WORD”,资源名不做修改,为“IDR_WORD1”
2)测试程序代码
-
int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])
-
{
-
int nRetCode = 0;
-
// 初始化 MFC 并在失败时显示错误
-
if (!AfxWinInit(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), 0))
-
{
-
// TODO: 更改错误代码以符合您的需要
-
_tprintf(_T("错误: MFC 初始化失败\n"));
-
nRetCode = 1;
-
}
-
else
-
{
-
HRSRC hRes = FindResource(theApp.m_hInstance, MAKEINTRESOURCE(IDR_WORD1), _T("WORD"));
-
//获取资源长度
-
DWORD len = SizeofResource(theApp.m_hInstance, hRes);
-
HGLOBAL hg= LoadResource(theApp.m_hInstance, hRes);
-
LPVOID lp = (LPSTR)LockResource(hg);
-
//将资源中的内容保存至某个Word文件中
-
CFile file;
-
file.Open(_T("test.doc"), CFile::modeCreate | CFile::modeWrite);
-
char *cp = (char *)lp;
-
for (int i=0; i
-
{
-
file.Write(cp++, 1);
-
}
-
CString filePath = file.GetFilePath();
-
file.Close();
-
//打开该文件
-
ShellExecute(NULL, _T("open"), filePath, NULL, NULL, SW_SHOW);
-
FreeResource(hg);
-
}
-
return nRetCode;
-
}
程序运行时,会自动在当前目录下生成一个test.doc文件,并自动启动word打开
阅读(2583) | 评论(0) | 转发(0) |