⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vuxcodeimp.h

📁 这是一个能够自动生成文档的程序
💻 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 + -