📄 vuxcodeimp.h
字号:
#ifndef __VUXCODEIMP_H__
#define __VUXCODEIMP_H__
#include "stdafx.h"
#include "Xml.h"
#define new DEBUG_NEW
BOOL CVuxClass::Open(LPCTSTR iFilePath)
{
VuxIncRunTimes();
if(VuxIsDebugging() || VuxGetOperateType()==OT_RTEST ||
VuxIsRepeatRun())
{
AUTO_BREAKPOINT(); // "Step(Trace) Into" 2-3 Times
return CXml::Open(iFilePath);
}
VUXO_THIS_IN()
VUXO_PARAM_IN(1, iFilePath)
BOOL _Vux_Fun_Return_ = _Open(iFilePath);
VUXO_THIS_OUT()
VUXO_PARAM_OUT(1, iFilePath)
VUXO_RETURN(_Vux_Fun_Return_)
VuxResetRunTimes();
return _Vux_Fun_Return_;
}
BOOL CVuxClass::_Open(LPCTSTR iFilePath)
{
{
VUXRB(1);
mFilePath = iFilePath;
HANDLE hFile = ::CreateFile(iFilePath, GENERIC_READ | GENERIC_WRITE, 0,
NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
if((
VUXRS(1)
&&hFile == INVALID_HANDLE_VALUE))
{VUXRBR(2);
VUXRB(5);
return FALSE;}
VUXRBR_ELSE(3);
VUXRB(2);
int fileSize = ::GetFileSize(hFile, NULL);
HANDLE hMapFile = ::CreateFileMapping(hFile, NULL, PAGE_READWRITE, 0, fileSize+1, NULL);
if((
VUXRS(2)
&&hMapFile == NULL))
{VUXRBR(4);
{
VUXRB(6);
::CloseHandle(hFile);
return FALSE;
}}
VUXRBR_ELSE(5);
VUXRB(3);
LPVOID pViewOfFile = ::MapViewOfFile(hMapFile, FILE_MAP_WRITE, 0, 0, 0);
if((
VUXRS(3)
&&pViewOfFile == NULL))
{VUXRBR(6);
{
VUXRB(7);
::CloseHandle(hFile);
::CloseHandle(hMapFile);
return FALSE;
}}
VUXRBR_ELSE(7);
VUXRB(4);
char* pText = (char*)pViewOfFile;
pText[fileSize] = '\0';
TEST_TRACEE(pText);
ParseXmlFile(pText);
//释放资源
::UnmapViewOfFile(pViewOfFile);
::CloseHandle(hMapFile);
::CloseHandle(hFile);
return TRUE;
}
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -