// $Id$
#include "stdafx.h"
+#include <vector>
#include <sys/types.h>
#include "sys/stat.h"
#include "MakeResDll.h"
static char THIS_FILE[] = __FILE__;
#endif
+using namespace std;
+
/////////////////////////////////////////////////////////////////////////////
// The one and only application object
+typedef vector<String> StringArray;
+
static LPCTSTR VSRegVersionStrings[] =
{ // These must be laid out in the same order as VS_VERSION:
// VS6, VS2002, ...
static BOOL CheckCompiler();
static void Status(LPCTSTR szText);
static void Status(UINT idstrText, LPCTSTR szText1 = NULL, LPCTSTR szText2 = NULL);
-static void InitModulePaths(const CStringArray & VsBaseDirs);
-static bool FindAndLoadVsVersion(const CStringArray & VsBaseDirs, VS_VERSION vsnum);
+static void InitModulePaths(const StringArray & VsBaseDirs);
+static bool FindAndLoadVsVersion(const StringArray & VsBaseDirs, VS_VERSION vsnum);
static void LoadVs2005Settings(const String & sProductDir);
static void LoadVs2003Settings(const String & sProductDir);
static void LoadVs2002Settings(const String & sProductDir);
static bool DoesFileExist(LPCTSTR filepath);
static void TrimPath(String & sPath);
//static void DisplayUi(const CStringArray & VsBaseDirs);
-static void LoadVsBaseDirs(CStringArray & VsBaseDirs);
+static void LoadVsBaseDirs(StringArray & VsBaseDirs);
static void SplitFilename(LPCTSTR path, TCHAR * folder, TCHAR * filename, TCHAR * ext);
using namespace std;
return 1;
}
- CStringArray VsBaseDirs;
+ StringArray VsBaseDirs;
LoadVsBaseDirs(VsBaseDirs);
InitModulePaths(VsBaseDirs);
// Find locations of RC compiler and linker
-static void InitModulePaths(const CStringArray & VsBaseDirs)
+static void InitModulePaths(const StringArray & VsBaseDirs)
{
// Access to registry
CRegKeyEx reg;
VS_VERSION vstemp = MapRegistryValue(sVcVersion.c_str());
if (vstemp != VS_NONE)
{
- if (!VsBaseDirs[vstemp].IsEmpty())
+ if (!VsBaseDirs[vstemp].empty())
vsnum = vstemp;
}
}
* Return 0 if not found
* Return -1 if specified version not installed (so caller will retry)
*/
-static bool FindAndLoadVsVersion(const CStringArray & VsBaseDirs, VS_VERSION vsnum)
+static bool FindAndLoadVsVersion(const StringArray & VsBaseDirs, VS_VERSION vsnum)
{
// Access to registry
CRegKeyEx reg;
/**
* @brief Load string array of base product directories for all installed Visual Studio versions
*/
-static void LoadVsBaseDirs(CStringArray & VsBaseDirs)
+static void LoadVsBaseDirs(StringArray & VsBaseDirs)
{
- VsBaseDirs.RemoveAll();
- VsBaseDirs.SetSize(VS_COUNT);
+ VsBaseDirs.clear();
+ VsBaseDirs.resize(VS_COUNT);
// Access to registry
CRegKeyEx reg;