mirror of https://github.com/axmolengine/axmol.git
fixed #225 Create new project from main menu ok.
Signed-off-by: yangws <yangws@cocos2d-x.org>
This commit is contained in:
parent
8c079cb89f
commit
462a8baf33
|
@ -27,21 +27,6 @@ function OnFinish(selProj, selObj) {
|
|||
wizard.AddSymbol("CCX_CURRENT_YEAR", nYear);
|
||||
wizard.AddSymbol("CCX_CURRENT_DATE", d.toString());
|
||||
|
||||
var FileSys = new ActiveXObject("Scripting.FileSystemObject");
|
||||
var strUserTarget = strProjectName + ".uphone.vcproj.user";
|
||||
var strUserPath = FileSys.BuildPath(strProjectPath, strUserTarget);
|
||||
|
||||
if (!FileSys.FolderExists(strProjectPath))
|
||||
FileSys.CreateFolder(strProjectPath);
|
||||
|
||||
var file = FileSys.OpenTextFile(strUserPath, 2, true);
|
||||
if (file == null) {
|
||||
return;
|
||||
}
|
||||
var strUserValue = "<?xml version=\"1.0\" encoding=\"utf-8\"?><VisualStudioUserFile ProjectType=\"Visual C++\" Version=\"9.00\" ShowAllFiles=\"true\"><Configurations><Configuration Name=\"Debug|Win32\"><DebugSettings Command=\"TG3_RunDLL.exe\" CommandArguments=\"$(TargetPath)\"/></Configuration></VisualStudioUserFile>";
|
||||
file.WriteLine(strUserValue);
|
||||
file.Close();
|
||||
|
||||
selProj = CreateCustomProject(strProjectName, strProjectPath);
|
||||
AddConfig(selProj, strProjectName);
|
||||
AddFilters(selProj);
|
||||
|
@ -77,6 +62,35 @@ function CreateCustomProject(strProjectName, strProjectPath) {
|
|||
}
|
||||
}
|
||||
|
||||
// Create vcproj.user file
|
||||
var FileSys = new ActiveXObject("Scripting.FileSystemObject");
|
||||
var strUserTarget = strProjectName + ".uphone.vcproj.user";
|
||||
var strUserPath = FileSys.BuildPath(strProjectPath, strUserTarget);
|
||||
|
||||
var astrParentPath = new Array();
|
||||
astrParentPath[0] = strProjectPath;
|
||||
while (astrParentPath.length) {
|
||||
var strPath = astrParentPath.pop();
|
||||
var strParentPath = FileSys.GetParentFolderName(strPath);
|
||||
|
||||
if (!FileSys.FolderExists(strParentPath)) {
|
||||
astrParentPath.push(strPath);
|
||||
astrParentPath.push(strParentPath);
|
||||
continue;
|
||||
}
|
||||
else {
|
||||
FileSys.CreateFolder(strPath);
|
||||
}
|
||||
}
|
||||
|
||||
var file = FileSys.OpenTextFile(strUserPath, 2, true);
|
||||
if (file == null) {
|
||||
return;
|
||||
}
|
||||
var strUserValue = "<?xml version=\"1.0\" encoding=\"utf-8\"?><VisualStudioUserFile ProjectType=\"Visual C++\" Version=\"9.00\" ShowAllFiles=\"true\"><Configurations><Configuration Name=\"Debug|Win32\"><DebugSettings Command=\"TG3_RunDLL.exe\" CommandArguments=\"$(TargetPath)\"/></Configuration></VisualStudioUserFile>";
|
||||
file.WriteLine(strUserValue);
|
||||
file.Close();
|
||||
|
||||
var strProjectNameWithExt = '';
|
||||
strProjectNameWithExt = strProjectName + '.uphone.vcproj';
|
||||
|
||||
|
|
|
@ -1,128 +1,126 @@
|
|||
function OnFinish(selProj, selObj)
|
||||
{
|
||||
try
|
||||
{
|
||||
var strProjectPath = wizard.FindSymbol('PROJECT_PATH');
|
||||
var strProjectName = wizard.FindSymbol('PROJECT_NAME');
|
||||
function OnFinish(selProj, selObj) {
|
||||
try {
|
||||
var strProjectPath = wizard.FindSymbol('PROJECT_PATH');
|
||||
var strProjectName = wizard.FindSymbol('PROJECT_NAME');
|
||||
|
||||
// var WizardVersion = wizard.FindSymbol('WIZARD_VERSION');
|
||||
// if(WizardVersion >= 8.0)
|
||||
// {
|
||||
// }
|
||||
// var WizardVersion = wizard.FindSymbol('WIZARD_VERSION');
|
||||
// if(WizardVersion >= 8.0)
|
||||
// {
|
||||
// }
|
||||
|
||||
// Create symbols based on the project name
|
||||
var strSafeProjectName = CreateSafeName(strProjectName);
|
||||
wizard.AddSymbol("SAFE_PROJECT_NAME", strSafeProjectName);
|
||||
wizard.AddSymbol("NICE_SAFE_PROJECT_NAME", strSafeProjectName.substr(0, 1).toUpperCase() + strSafeProjectName.substr(1))
|
||||
wizard.AddSymbol("UPPERCASE_SAFE_PROJECT_NAME", strSafeProjectName.toUpperCase());
|
||||
// Create symbols based on the project name
|
||||
var strSafeProjectName = CreateSafeName(strProjectName);
|
||||
wizard.AddSymbol("SAFE_PROJECT_NAME", strSafeProjectName);
|
||||
wizard.AddSymbol("NICE_SAFE_PROJECT_NAME", strSafeProjectName.substr(0, 1).toUpperCase() + strSafeProjectName.substr(1))
|
||||
wizard.AddSymbol("UPPERCASE_SAFE_PROJECT_NAME", strSafeProjectName.toUpperCase());
|
||||
|
||||
// Set current year symbol
|
||||
var d = new Date();
|
||||
var nYear = 0;
|
||||
nYear = d.getFullYear();
|
||||
if(nYear >= 2003)
|
||||
wizard.AddSymbol("CCX_CURRENT_YEAR", nYear);
|
||||
var FileSys = new ActiveXObject("Scripting.FileSystemObject");
|
||||
// Set current year symbol
|
||||
var d = new Date();
|
||||
var nYear = 0;
|
||||
nYear = d.getFullYear();
|
||||
if (nYear >= 2003)
|
||||
wizard.AddSymbol("CCX_CURRENT_YEAR", nYear);
|
||||
// Create project and configurations
|
||||
selProj = CreateCustomProject(strProjectName, strProjectPath);
|
||||
AddConfigurations(selProj, strProjectName);
|
||||
AddFilters(selProj);
|
||||
|
||||
var InfFile = CreateCustomInfFile();
|
||||
AddFilesToCustomProj(selProj, strProjectName, strProjectPath, InfFile);
|
||||
AddPchSettings(selProj);
|
||||
InfFile.Delete();
|
||||
|
||||
selProj.Object.Save();
|
||||
|
||||
}
|
||||
catch (e) {
|
||||
if (e.description.length != 0)
|
||||
SetErrorInfo(e);
|
||||
return e.number;
|
||||
}
|
||||
}
|
||||
|
||||
function CreateCustomProject(strProjectName, strProjectPath) {
|
||||
try {
|
||||
var strProjTemplatePath = wizard.FindSymbol('PROJECT_TEMPLATE_PATH');
|
||||
var strProjTemplate = '';
|
||||
strProjTemplate = strProjTemplatePath + '\\default.vcproj';
|
||||
|
||||
var Solution = dte.Solution;
|
||||
var strSolutionName = "";
|
||||
if (wizard.FindSymbol("CLOSE_SOLUTION")) {
|
||||
Solution.Close();
|
||||
strSolutionName = wizard.FindSymbol("VS_SOLUTION_NAME");
|
||||
if (strSolutionName.length) {
|
||||
var strSolutionPath = strProjectPath.substr(0, strProjectPath.length - strProjectName.length);
|
||||
Solution.Create(strSolutionPath, strSolutionName);
|
||||
}
|
||||
}
|
||||
|
||||
// Create vcproj.user file
|
||||
var FileSys = new ActiveXObject("Scripting.FileSystemObject");
|
||||
var strUserTarget = strProjectName + ".win32.vcproj.user";
|
||||
var strUserPath = FileSys.BuildPath(strProjectPath, strUserTarget);
|
||||
|
||||
var astrParentPath = new Array();
|
||||
astrParentPath[0] = strProjectPath;
|
||||
while (astrParentPath.length) {
|
||||
var strPath = astrParentPath.pop();
|
||||
var strParentPath = FileSys.GetParentFolderName(strPath);
|
||||
|
||||
if (!FileSys.FolderExists(strProjectPath))
|
||||
FileSys.CreateFolder(strProjectPath);
|
||||
|
||||
var file = FileSys.OpenTextFile(strUserPath, 2, true);
|
||||
if (file == null)
|
||||
{
|
||||
return;
|
||||
if (!FileSys.FolderExists(strParentPath)) {
|
||||
astrParentPath.push(strPath);
|
||||
astrParentPath.push(strParentPath);
|
||||
continue;
|
||||
}
|
||||
else {
|
||||
FileSys.CreateFolder(strPath);
|
||||
}
|
||||
}
|
||||
|
||||
var file = FileSys.OpenTextFile(strUserPath, 2, true);
|
||||
var strUserValue = "<?xml version=\"1.0\" encoding=\"utf-8\"?><VisualStudioUserFile ProjectType=\"Visual C++\" Version=\"9.00\" ShowAllFiles=\"true\"></VisualStudioUserFile>";
|
||||
file.WriteLine(strUserValue);
|
||||
file.Close();
|
||||
|
||||
// Create project and configurations
|
||||
selProj = CreateCustomProject(strProjectName, strProjectPath);
|
||||
AddConfigurations(selProj, strProjectName);
|
||||
AddFilters(selProj);
|
||||
var strProjectNameWithExt = '';
|
||||
strProjectNameWithExt = strProjectName + '.win32.vcproj';
|
||||
|
||||
var InfFile = CreateCustomInfFile();
|
||||
AddFilesToCustomProj(selProj, strProjectName, strProjectPath, InfFile);
|
||||
AddPchSettings(selProj);
|
||||
InfFile.Delete();
|
||||
|
||||
selProj.Object.Save();
|
||||
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
if (e.description.length != 0)
|
||||
SetErrorInfo(e);
|
||||
return e.number;
|
||||
}
|
||||
var oTarget = wizard.FindSymbol("TARGET");
|
||||
var prj;
|
||||
if (wizard.FindSymbol("WIZARD_TYPE") == vsWizardAddSubProject) // vsWizardAddSubProject
|
||||
{
|
||||
var prjItem = oTarget.AddFromTemplate(strProjTemplate, strProjectNameWithExt);
|
||||
prj = prjItem.SubProject;
|
||||
}
|
||||
else {
|
||||
prj = oTarget.AddFromTemplate(strProjTemplate, strProjectPath, strProjectNameWithExt);
|
||||
}
|
||||
return prj;
|
||||
}
|
||||
catch (e) {
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
function CreateCustomProject(strProjectName, strProjectPath)
|
||||
{
|
||||
try
|
||||
{
|
||||
var strProjTemplatePath = wizard.FindSymbol('PROJECT_TEMPLATE_PATH');
|
||||
var strProjTemplate = '';
|
||||
strProjTemplate = strProjTemplatePath + '\\default.vcproj';
|
||||
function AddFilters(proj) {
|
||||
try {
|
||||
// Add the folders to your project
|
||||
var strSrcFilter = wizard.FindSymbol('SOURCE_FILTER');
|
||||
var group = proj.Object.AddFilter('source');
|
||||
group.Filter = strSrcFilter;
|
||||
|
||||
var Solution = dte.Solution;
|
||||
var strSolutionName = "";
|
||||
if (wizard.FindSymbol("CLOSE_SOLUTION"))
|
||||
{
|
||||
Solution.Close();
|
||||
strSolutionName = wizard.FindSymbol("VS_SOLUTION_NAME");
|
||||
if (strSolutionName.length)
|
||||
{
|
||||
var strSolutionPath = strProjectPath.substr(0, strProjectPath.length - strProjectName.length);
|
||||
Solution.Create(strSolutionPath, strSolutionName);
|
||||
}
|
||||
}
|
||||
strSrcFilter = wizard.FindSymbol('INCLUDE_FILTER');
|
||||
group = proj.Object.AddFilter('include');
|
||||
group.Filter = strSrcFilter;
|
||||
|
||||
var strProjectNameWithExt = '';
|
||||
strProjectNameWithExt = strProjectName + '.win32.vcproj';
|
||||
|
||||
var oTarget = wizard.FindSymbol("TARGET");
|
||||
var prj;
|
||||
if (wizard.FindSymbol("WIZARD_TYPE") == vsWizardAddSubProject) // vsWizardAddSubProject
|
||||
{
|
||||
var prjItem = oTarget.AddFromTemplate(strProjTemplate, strProjectNameWithExt);
|
||||
prj = prjItem.SubProject;
|
||||
}
|
||||
else
|
||||
{
|
||||
prj = oTarget.AddFromTemplate(strProjTemplate, strProjectPath, strProjectNameWithExt);
|
||||
}
|
||||
return prj;
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
function AddFilters(proj)
|
||||
{
|
||||
try
|
||||
{
|
||||
// Add the folders to your project
|
||||
var strSrcFilter = wizard.FindSymbol('SOURCE_FILTER');
|
||||
var group = proj.Object.AddFilter('source');
|
||||
group.Filter = strSrcFilter;
|
||||
|
||||
strSrcFilter = wizard.FindSymbol('INCLUDE_FILTER');
|
||||
group = proj.Object.AddFilter('include');
|
||||
group.Filter = strSrcFilter;
|
||||
|
||||
strSrcFilter = wizard.FindSymbol('RESOURCE_FILTER');
|
||||
group = proj.Object.AddFilter('resource');
|
||||
group.Filter = strSrcFilter;
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
throw e;
|
||||
}
|
||||
strSrcFilter = wizard.FindSymbol('RESOURCE_FILTER');
|
||||
group = proj.Object.AddFilter('resource');
|
||||
group.Filter = strSrcFilter;
|
||||
}
|
||||
catch (e) {
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -133,266 +131,233 @@ var astrConfigName = new Array();
|
|||
astrConfigName[0] = "Debug";
|
||||
astrConfigName[1] = "Release";
|
||||
|
||||
function AddConfigurations(proj, strProjectName)
|
||||
{
|
||||
try
|
||||
{
|
||||
var nCntr;
|
||||
for(nCntr = 0; nCntr < nNumConfigs; nCntr++)
|
||||
{
|
||||
// Check if it's Debug configuration
|
||||
var bDebug = false;
|
||||
if(astrConfigName[nCntr].search("Debug") != -1)
|
||||
bDebug = true;
|
||||
function AddConfigurations(proj, strProjectName) {
|
||||
try {
|
||||
var nCntr;
|
||||
for (nCntr = 0; nCntr < nNumConfigs; nCntr++) {
|
||||
// Check if it's Debug configuration
|
||||
var bDebug = false;
|
||||
if (astrConfigName[nCntr].search("Debug") != -1)
|
||||
bDebug = true;
|
||||
|
||||
// General settings
|
||||
var config = proj.Object.Configurations(astrConfigName[nCntr]);
|
||||
// General settings
|
||||
var config = proj.Object.Configurations(astrConfigName[nCntr]);
|
||||
|
||||
// if(wizard.FindSymbol("CCX_USE_UNICODE"))
|
||||
config.CharacterSet = charSetUnicode;
|
||||
// else
|
||||
// config.CharacterSet = charSetMBCS;
|
||||
// if(wizard.FindSymbol("CCX_USE_UNICODE"))
|
||||
config.CharacterSet = charSetUnicode;
|
||||
// else
|
||||
// config.CharacterSet = charSetMBCS;
|
||||
|
||||
config.OutputDirectory = '$(SolutionDir)$(ConfigurationName).win32'
|
||||
config.IntermediateDirectory = '$(ConfigurationName).win32';
|
||||
|
||||
// Compiler settings
|
||||
var CLTool = config.Tools('VCCLCompilerTool');
|
||||
// Compiler settings
|
||||
var CLTool = config.Tools('VCCLCompilerTool');
|
||||
|
||||
// Additional Inlcude Directories
|
||||
var strAddIncludeDir = '.;.\\win32;.\\Classes;..\\cocos2dx;..\\cocos2dx\\include;..\\cocos2dx\\platform\\win32\\third_party\\OGLES';
|
||||
if (wizard.FindSymbol('CCX_USE_BOX2D'))
|
||||
{
|
||||
strAddIncludeDir += ';..\\;..\\Box2D';
|
||||
}
|
||||
if (wizard.FindSymbol('CCX_USE_CHIPMUNK'))
|
||||
{
|
||||
strAddIncludeDir += ';..\\chipmunk\\include\\chipmunk';
|
||||
}
|
||||
if (wizard.FindSymbol('CCX_USE_COCOS_DENSHION_SIMPLE_AUDIO_ENGINE'))
|
||||
{
|
||||
strAddIncludeDir += ';..\\CocosDenshion\\Include';
|
||||
}
|
||||
CLTool.AdditionalIncludeDirectories = strAddIncludeDir;
|
||||
|
||||
CLTool.UsePrecompiledHeader = pchNone; // pchUseUsingSpecific;
|
||||
CLTool.WarningLevel = warningLevel_3;
|
||||
if(bDebug)
|
||||
{
|
||||
CLTool.RuntimeLibrary = rtMultiThreadedDebug;
|
||||
CLTool.MinimalRebuild = true;
|
||||
CLTool.DebugInformationFormat = debugEditAndContinue;
|
||||
CLTool.BasicRuntimeChecks = runtimeBasicCheckAll;
|
||||
CLTool.Optimization = optimizeDisabled;
|
||||
}
|
||||
else
|
||||
{
|
||||
CLTool.RuntimeLibrary = rtMultiThreaded;
|
||||
CLTool.ExceptionHandling = false;
|
||||
CLTool.DebugInformationFormat = debugDisabled;
|
||||
}
|
||||
var strAddIncludeDir = '.;.\\win32;.\\Classes;..\\cocos2dx;..\\cocos2dx\\include;..\\cocos2dx\\platform\\win32\\third_party\\OGLES';
|
||||
if (wizard.FindSymbol('CCX_USE_BOX2D')) {
|
||||
strAddIncludeDir += ';..\\;..\\Box2D';
|
||||
}
|
||||
if (wizard.FindSymbol('CCX_USE_CHIPMUNK')) {
|
||||
strAddIncludeDir += ';..\\chipmunk\\include\\chipmunk';
|
||||
}
|
||||
if (wizard.FindSymbol('CCX_USE_COCOS_DENSHION_SIMPLE_AUDIO_ENGINE')) {
|
||||
strAddIncludeDir += ';..\\CocosDenshion\\Include';
|
||||
}
|
||||
CLTool.AdditionalIncludeDirectories = strAddIncludeDir;
|
||||
|
||||
var strDefines = GetPlatformDefine(config);
|
||||
strDefines += "_WINDOWS;STRICT;";
|
||||
if(bDebug)
|
||||
strDefines += "_DEBUG";
|
||||
else
|
||||
strDefines += "NDEBUG";
|
||||
CLTool.PreprocessorDefinitions = strDefines;
|
||||
CLTool.UsePrecompiledHeader = pchNone; // pchUseUsingSpecific;
|
||||
CLTool.WarningLevel = warningLevel_3;
|
||||
if (bDebug) {
|
||||
CLTool.RuntimeLibrary = rtMultiThreadedDebug;
|
||||
CLTool.MinimalRebuild = true;
|
||||
CLTool.DebugInformationFormat = debugEditAndContinue;
|
||||
CLTool.BasicRuntimeChecks = runtimeBasicCheckAll;
|
||||
CLTool.Optimization = optimizeDisabled;
|
||||
}
|
||||
else {
|
||||
CLTool.RuntimeLibrary = rtMultiThreaded;
|
||||
CLTool.ExceptionHandling = false;
|
||||
CLTool.DebugInformationFormat = debugDisabled;
|
||||
}
|
||||
|
||||
// Disable special warning
|
||||
CLTool.DisableSpecificWarnings = "4251";
|
||||
|
||||
// Linker settings
|
||||
var LinkTool = config.Tools('VCLinkerTool');
|
||||
LinkTool.SubSystem = subSystemWindows;
|
||||
LinkTool.TargetMachine = machineX86;
|
||||
if(bDebug)
|
||||
{
|
||||
LinkTool.LinkIncremental = linkIncrementalYes;
|
||||
LinkTool.GenerateDebugInformation = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
LinkTool.LinkIncremental = linkIncrementalNo;
|
||||
}
|
||||
var strDefines = GetPlatformDefine(config);
|
||||
strDefines += "_WINDOWS;STRICT;";
|
||||
if (bDebug)
|
||||
strDefines += "_DEBUG";
|
||||
else
|
||||
strDefines += "NDEBUG";
|
||||
CLTool.PreprocessorDefinitions = strDefines;
|
||||
|
||||
// Disable special warning
|
||||
CLTool.DisableSpecificWarnings = "4251";
|
||||
|
||||
// Linker settings
|
||||
var LinkTool = config.Tools('VCLinkerTool');
|
||||
LinkTool.SubSystem = subSystemWindows;
|
||||
LinkTool.TargetMachine = machineX86;
|
||||
if (bDebug) {
|
||||
LinkTool.LinkIncremental = linkIncrementalYes;
|
||||
LinkTool.GenerateDebugInformation = true;
|
||||
}
|
||||
else {
|
||||
LinkTool.LinkIncremental = linkIncrementalNo;
|
||||
}
|
||||
|
||||
// Additional Library Directories
|
||||
var strAddDepends = 'libcocos2d.lib libgles_cm.lib';
|
||||
if (wizard.FindSymbol('CCX_USE_BOX2D'))
|
||||
{
|
||||
if (wizard.FindSymbol('CCX_USE_BOX2D')) {
|
||||
strAddDepends += ' libBox2d.lib';
|
||||
}
|
||||
if (wizard.FindSymbol('CCX_USE_CHIPMUNK'))
|
||||
{
|
||||
strAddDepends +=' libchipmunk.lib';
|
||||
}
|
||||
if (wizard.FindSymbol('CCX_USE_COCOS_DENSHION_SIMPLE_AUDIO_ENGINE'))
|
||||
{
|
||||
strAddDepends += ' libCocosDenshion.lib';
|
||||
}
|
||||
LinkTool.AdditionalLibraryDirectories = '$(OutDir)';
|
||||
if (wizard.FindSymbol('CCX_USE_CHIPMUNK')) {
|
||||
strAddDepends += ' libchipmunk.lib';
|
||||
}
|
||||
if (wizard.FindSymbol('CCX_USE_COCOS_DENSHION_SIMPLE_AUDIO_ENGINE')) {
|
||||
strAddDepends += ' libCocosDenshion.lib';
|
||||
}
|
||||
LinkTool.AdditionalLibraryDirectories = '$(OutDir)';
|
||||
LinkTool.AdditionalDependencies = strAddDepends;
|
||||
|
||||
// Resource settings
|
||||
var RCTool = config.Tools("VCResourceCompilerTool");
|
||||
RCTool.Culture = rcEnglishUS;
|
||||
RCTool.AdditionalIncludeDirectories = "$(IntDir)";
|
||||
if(bDebug)
|
||||
RCTool.PreprocessorDefinitions = "_DEBUG";
|
||||
else
|
||||
RCTool.PreprocessorDefinitions = "NDEBUG";
|
||||
|
||||
// MIDL settings
|
||||
var MidlTool = config.Tools("VCMidlTool");
|
||||
MidlTool.MkTypLibCompatible = false;
|
||||
if(IsPlatformWin32(config))
|
||||
MidlTool.TargetEnvironment = midlTargetWin32;
|
||||
if(bDebug)
|
||||
MidlTool.PreprocessorDefinitions = "_DEBUG";
|
||||
else
|
||||
MidlTool.PreprocessorDefinitions = "NDEBUG";
|
||||
MidlTool.HeaderFileName = strProjectName + ".h";
|
||||
MidlTool.InterfaceIdentifierFileName = strProjectName + "_i.c";
|
||||
MidlTool.ProxyFileName = strProjectName + "_p.c";
|
||||
MidlTool.GenerateStublessProxies = true;
|
||||
MidlTool.TypeLibraryName = "$(IntDir)/" + strProjectName + ".tlb";
|
||||
MidlTool.DLLDataFileName = "";
|
||||
// Resource settings
|
||||
var RCTool = config.Tools("VCResourceCompilerTool");
|
||||
RCTool.Culture = rcEnglishUS;
|
||||
RCTool.AdditionalIncludeDirectories = "$(IntDir)";
|
||||
if (bDebug)
|
||||
RCTool.PreprocessorDefinitions = "_DEBUG";
|
||||
else
|
||||
RCTool.PreprocessorDefinitions = "NDEBUG";
|
||||
|
||||
// Post-build settings
|
||||
// var PostBuildTool = config.Tools("VCPostBuildEventTool");
|
||||
// PostBuildTool.Description = "Performing registration...";
|
||||
// PostBuildTool.CommandLine = "\"$(TargetPath)\" /RegServer";
|
||||
}
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
throw e;
|
||||
}
|
||||
// MIDL settings
|
||||
var MidlTool = config.Tools("VCMidlTool");
|
||||
MidlTool.MkTypLibCompatible = false;
|
||||
if (IsPlatformWin32(config))
|
||||
MidlTool.TargetEnvironment = midlTargetWin32;
|
||||
if (bDebug)
|
||||
MidlTool.PreprocessorDefinitions = "_DEBUG";
|
||||
else
|
||||
MidlTool.PreprocessorDefinitions = "NDEBUG";
|
||||
MidlTool.HeaderFileName = strProjectName + ".h";
|
||||
MidlTool.InterfaceIdentifierFileName = strProjectName + "_i.c";
|
||||
MidlTool.ProxyFileName = strProjectName + "_p.c";
|
||||
MidlTool.GenerateStublessProxies = true;
|
||||
MidlTool.TypeLibraryName = "$(IntDir)/" + strProjectName + ".tlb";
|
||||
MidlTool.DLLDataFileName = "";
|
||||
|
||||
// Post-build settings
|
||||
// var PostBuildTool = config.Tools("VCPostBuildEventTool");
|
||||
// PostBuildTool.Description = "Performing registration...";
|
||||
// PostBuildTool.CommandLine = "\"$(TargetPath)\" /RegServer";
|
||||
}
|
||||
}
|
||||
catch (e) {
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
function AddPchSettings(proj)
|
||||
{
|
||||
try
|
||||
{
|
||||
// var files = proj.Object.Files;
|
||||
// var fStdafx = files("StdAfx.cpp");
|
||||
//
|
||||
// var nCntr;
|
||||
// for(nCntr = 0; nCntr < nNumConfigs; nCntr++)
|
||||
// {
|
||||
// var config = fStdafx.FileConfigurations(astrConfigName[nCntr]);
|
||||
// config.Tool.UsePrecompiledHeader = pchCreateUsingSpecific;
|
||||
// }
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
throw e;
|
||||
}
|
||||
function AddPchSettings(proj) {
|
||||
try {
|
||||
// var files = proj.Object.Files;
|
||||
// var fStdafx = files("StdAfx.cpp");
|
||||
//
|
||||
// var nCntr;
|
||||
// for(nCntr = 0; nCntr < nNumConfigs; nCntr++)
|
||||
// {
|
||||
// var config = fStdafx.FileConfigurations(astrConfigName[nCntr]);
|
||||
// config.Tool.UsePrecompiledHeader = pchCreateUsingSpecific;
|
||||
// }
|
||||
}
|
||||
catch (e) {
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
function DelFile(fso, strWizTempFile)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (fso.FileExists(strWizTempFile))
|
||||
{
|
||||
var tmpFile = fso.GetFile(strWizTempFile);
|
||||
tmpFile.Delete();
|
||||
}
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
throw e;
|
||||
}
|
||||
function DelFile(fso, strWizTempFile) {
|
||||
try {
|
||||
if (fso.FileExists(strWizTempFile)) {
|
||||
var tmpFile = fso.GetFile(strWizTempFile);
|
||||
tmpFile.Delete();
|
||||
}
|
||||
}
|
||||
catch (e) {
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
function CreateCustomInfFile()
|
||||
{
|
||||
try
|
||||
{
|
||||
var fso, TemplatesFolder, TemplateFiles, strTemplate;
|
||||
fso = new ActiveXObject('Scripting.FileSystemObject');
|
||||
function CreateCustomInfFile() {
|
||||
try {
|
||||
var fso, TemplatesFolder, TemplateFiles, strTemplate;
|
||||
fso = new ActiveXObject('Scripting.FileSystemObject');
|
||||
|
||||
var TemporaryFolder = 2;
|
||||
var tfolder = fso.GetSpecialFolder(TemporaryFolder);
|
||||
var TemporaryFolder = 2;
|
||||
var tfolder = fso.GetSpecialFolder(TemporaryFolder);
|
||||
|
||||
var strWizTempFile = tfolder.Path + "\\" + fso.GetTempName();
|
||||
var strWizTempFile = tfolder.Path + "\\" + fso.GetTempName();
|
||||
|
||||
var strTemplatePath = wizard.FindSymbol('TEMPLATES_PATH');
|
||||
var strInfFile = strTemplatePath + '\\Templates.inf';
|
||||
wizard.RenderTemplate(strInfFile, strWizTempFile);
|
||||
var strTemplatePath = wizard.FindSymbol('TEMPLATES_PATH');
|
||||
var strInfFile = strTemplatePath + '\\Templates.inf';
|
||||
wizard.RenderTemplate(strInfFile, strWizTempFile);
|
||||
|
||||
var WizTempFile = fso.GetFile(strWizTempFile);
|
||||
var WizTempFile = fso.GetFile(strWizTempFile);
|
||||
|
||||
return WizTempFile;
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
throw e;
|
||||
}
|
||||
return WizTempFile;
|
||||
}
|
||||
catch (e) {
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
function GetTargetName(strName, strProjectName)
|
||||
{
|
||||
try
|
||||
{
|
||||
var strTarget = strName;
|
||||
function GetTargetName(strName, strProjectName) {
|
||||
try {
|
||||
var strTarget = strName;
|
||||
|
||||
var nIndex = strName.indexOf("root");
|
||||
var nIndex = strName.indexOf("root");
|
||||
|
||||
if (nIndex >= 0)
|
||||
{
|
||||
strTarget = strName.substring(0, nIndex) + strProjectName + strName.substring(nIndex + 4, strName.length);
|
||||
}
|
||||
if (nIndex >= 0) {
|
||||
strTarget = strName.substring(0, nIndex) + strProjectName + strName.substring(nIndex + 4, strName.length);
|
||||
}
|
||||
|
||||
return strTarget;
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
throw e;
|
||||
}
|
||||
return strTarget;
|
||||
}
|
||||
catch (e) {
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
function AddFilesToCustomProj(proj, strProjectName, strProjectPath, InfFile)
|
||||
{
|
||||
try
|
||||
{
|
||||
var strTemplatePath = wizard.FindSymbol('TEMPLATES_PATH');
|
||||
function AddFilesToCustomProj(proj, strProjectName, strProjectPath, InfFile) {
|
||||
try {
|
||||
var strTemplatePath = wizard.FindSymbol('TEMPLATES_PATH');
|
||||
|
||||
var strTpl = '';
|
||||
var strName = '';
|
||||
var strTpl = '';
|
||||
var strName = '';
|
||||
|
||||
var strTextStream = InfFile.OpenAsTextStream(1, -2);
|
||||
while (!strTextStream.AtEndOfStream)
|
||||
{
|
||||
strTpl = strTextStream.ReadLine();
|
||||
if (strTpl != '')
|
||||
{
|
||||
strName = strTpl;
|
||||
var strTarget = GetTargetName(strName, strProjectName);
|
||||
var strTemplate = strTemplatePath + '\\' + strTpl;
|
||||
var strFile = strProjectPath + '\\' + strTarget;
|
||||
var strTextStream = InfFile.OpenAsTextStream(1, -2);
|
||||
while (!strTextStream.AtEndOfStream) {
|
||||
strTpl = strTextStream.ReadLine();
|
||||
if (strTpl != '') {
|
||||
strName = strTpl;
|
||||
var strTarget = GetTargetName(strName, strProjectName);
|
||||
var strTemplate = strTemplatePath + '\\' + strTpl;
|
||||
var strFile = strProjectPath + '\\' + strTarget;
|
||||
|
||||
var bCopyOnly = false; //"true" will only copy the file from strTemplate to strTarget without rendering/adding to the project
|
||||
var strExt = strName.substr(strName.lastIndexOf("."));
|
||||
if (strExt == ".bmp" || strExt == ".ico" || strExt == ".gif" || strExt == ".rtf" || strExt == ".css")
|
||||
bCopyOnly = true;
|
||||
wizard.RenderTemplate(strTemplate, strFile, bCopyOnly);
|
||||
var bCopyOnly = false; //"true" will only copy the file from strTemplate to strTarget without rendering/adding to the project
|
||||
var strExt = strName.substr(strName.lastIndexOf("."));
|
||||
if (strExt == ".bmp" || strExt == ".ico" || strExt == ".gif" || strExt == ".rtf" || strExt == ".css")
|
||||
bCopyOnly = true;
|
||||
wizard.RenderTemplate(strTemplate, strFile, bCopyOnly);
|
||||
|
||||
// don't add these files to the project
|
||||
if(strTarget == strProjectName + ".h" ||
|
||||
// don't add these files to the project
|
||||
if (strTarget == strProjectName + ".h" ||
|
||||
strTarget == strProjectName + "ps.mk" ||
|
||||
strTarget == strProjectName + "ps.def")
|
||||
continue;
|
||||
continue;
|
||||
|
||||
proj.Object.AddFile(strFile);
|
||||
}
|
||||
}
|
||||
strTextStream.Close();
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
throw e;
|
||||
}
|
||||
proj.Object.AddFile(strFile);
|
||||
}
|
||||
}
|
||||
strTextStream.Close();
|
||||
}
|
||||
catch (e) {
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue