📄 vcprojprocess.h
字号:
#pragma once
#include "stdafx.h"
/////////////////////////////////////////////////////////////////////////////////
//
// vcprojprocess class
//
// S.Rodriguez - Sept 2002
//
//
// purpose : convert a .vcproj file format to a .dsp file format
// (a .vcproj file is the makefile of a VisualStudio 7 C++ project)
//
//
class vcprojprocess
{
// Members
protected:
COString m_szSolutionName; // .sln fully qualified filename
PROJECTPARAM* m_cpPrj; // copy ptr (no need to destroy)
COFile m_inputFile; // to read the .vcproj file
COFile m_outputFile; // to write the .dsp file
// extracted from the .vcproj file
COString m_szProjname;
COString m_szTargetType;
BOOL m_bIsConsoleApp;
COString m_szSccProjectName; // source control
COString m_szSccLocalPath;
ArrayCString m_arrConfigurationNames;
ConfigurationArray m_arrConfigs;
// Constructor
public:
vcprojprocess();
~vcprojprocess();
// Methods
public:
void process(COString &szSolutionName, PROJECTPARAM *p);
void getSourceControlInfo(COString &szSccName, COString &szSccPath);
// Helpers
protected:
void extractHeader(IXMLDOMDocument *pDoc);
void extractConfigurations(IXMLDOMDocument *pDoc);
void extractFileConfigurations(IXMLDOMElement *pFileElement, ConfigurationArray &arrFileConfigs);
void writeDspHeader();
void writeDspConfigurations(IXMLDOMDocument *pDoc);
void writeDspMakefile(long i);
void writeDspFiles(IXMLDOMDocument *pDoc);
void writeDspGroup(IXMLDOMElement *pGroupFilter);
void writeDspFileConfigurations(COString &szFilename, ConfigurationArray &arrFileConfigs, ConfigurationArray &projectConfigs);
void writeDspFooter();
BOOL isFullPath(COString &szFilepath);
void getAttribValue(/*in*/IXMLDOMElement *p,/*in*/char *szAttribName, /*out*/COString &szValue);
void getNodeName(/*in*/IXMLDOMElement *p, /*out*/COString &szName);
void VARIANT_to_CString(/*in*/VARIANT &vt, /*out*/COString &s);
void BSTR_to_CString(/*in*/BSTR bstr, /*out*/COString &s);
COString TranslateConfigurationName(COString &sInputConfigName);
COString ExtractPlatform(COString &sInputConfigName);
void TokenizeString(/*in*/COString &szInput, char cToken, /*out*/ArrayCString &arrStrings);
void UntokenizeString(/*in*/ArrayCString &arrStrings, char cToken, /*out*/COString &szOutput);
public:
int ConvertToVS7(COString& strPrjFileName);
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -