如何在vc程序中内部包含一个文件,不想被外部看到?可以将该文件内嵌作为自定义资源。使用内嵌文件作为自定义资源有很多应用,比如有些程序的语言包,皮肤,dll文件,图像或音频视频文件,不想放在程序外面,另外一些病毒木马可能嵌入某个程序中。
添加自定义资源的方法很简单,打开资源视图,右击添加资源->自定义,输入自定义的类型名,如我想内嵌xml文件,就输入xml,然后在xml树节点右击添加资源,然后在属性表修改Filename和ID,双击新添加的节点IDR_XML1,添加内容,可以拷贝哦,这样就添加完了,在代码处使用下面的函数调用就行了,会根据资源ID将自定义资源生成一个文件。
bool C**Dlg::ExtractResource(CString filename, DWORDresId)
{
HRSRC hRes = FindResource(NULL,MAKEINTRESOURCE(resId), _T("xml"));
if(hRes == NULL)
returnfalse;
DWORD dwResSize =SizeofResource(NULL, hRes);
HRSRC hResLoad =(HRSRC)LoadResource(NULL, hRes);
if(hResLoad == NUL