*\r
*/\r
+#include "../../pch.h"\r
+#include "msvc.h"\r
+#include <string>\r
+\r
+using std::string;\r
+\r
#ifdef _WIN32\r
#include <objbase.h>\r
#include <stdio.h>\r
static CoUninitializeFunc *pCoUninitialize = NULL;\r
static CoCreateGuidFunc *pCoCreateGuid = NULL;
\r
-void gen_guid()\r
+\r
+std::string\r
+MSVCBackend::_gen_guid()\r
{\r
GUID m_guid;\r
HRESULT result;\r
bool good_guid = false;\r
-\r
+ static char guid[38];\r
+ \r
// Load ole32. We will need it later on\r
HMODULE olelib = LoadLibrary ( "ole32.dll" );\r
if ( olelib != NULL )\r
{\r
// TODO FIXME - fall-back to random #'s\r
}\r
- const char* strfmt = "%08lX-%04X-%04x-%02X%02X-%02X%02X%02X%02X%02X%02X\r\n";\r
- printf(strfmt,m_guid.Data1,m_guid.Data2,m_guid.Data3,m_guid.Data4[0],\r
+ const char* strfmt = "%08lX-%04X-%04x-%02X%02X-%02X%02X%02X%02X%02X%02X";\r
+ sprintf(guid, strfmt,m_guid.Data1,m_guid.Data2,m_guid.Data3,m_guid.Data4[0],\r
m_guid.Data4[1],m_guid.Data4[2],m_guid.Data4[3],m_guid.Data4[4],m_guid.Data4[5],\r
m_guid.Data4[6],m_guid.Data4[7],m_guid.Data1,m_guid.Data2,m_guid.Data3,m_guid.Data4[0],\r
m_guid.Data4[1],m_guid.Data4[2],m_guid.Data4[3],m_guid.Data4[4],m_guid.Data4[5],\r
m_guid.Data4[6],m_guid.Data4[7]);\r
+ \r
+ return guid;\r
}\r
-#else /* Linux, etc */
-void gen_guid()\r
+#else /* Linux, etc */\r
+
+std::string\r
+MSVCBackend::_gen_guid()\r
{\r
}
#endif /* WIN32/Linux */