xmldomdocument.cpp

来自「一个完整的IE插件的程序的源代码(有些参考价值)」· C++ 代码 · 共 59 行

CPP
59
字号
// XMLDOMDocument.h
//
// @author christian oetterli
//

#include "stdafx.h"
#include "XMLDOMDocument.h"

CXMLDOMDocument::CXMLDOMDocument(IUnknownPtr other)
	: super(other)
{
}

bool CXMLDOMDocument::loadXMLRes(LPCTSTR resId, HINSTANCE module)
{
	HRSRC res = FindResource(module, resId, L"XML");

	bool ok = res != 0;

	if (ok)
	{
		HGLOBAL hRes = LoadResource(module, res);

		ok = hRes != 0;

		if (ok)
		{
			DWORD size = SizeofResource(module, res);
			char *data = (char*)hRes;
			bool deleteData = false;

			if (data[size])
			{
				// size bigger than page

				data = new char[size + 1];

				memcpy(data, (char*)hRes, size + 1);
			
				// terminate
				data[size] = 0;

				deleteData = true;
			}

			bstr xml = data;

			if (deleteData)
			{
				delete data;
			}

			ok = 0 != (*this)->loadXML(xml);
		}
	}

	return ok;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?