Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
UUID: Implemented Win32 version
[xestiacalendar/.git] / source / common / uuid.cpp
index f0b8704..c808791 100644 (file)
 
 string GenerateUUID()
 {
-
-#if defined(__WIN32__)
-       
-#include <rpc.h>
-       
-       UUID UUIDData;
-       UuidCreate(&UUIDData);
-       wchar_t* UUIDStr = 0;
-       UuidToString(&UUIDData, (RPC_WSTR*)&UUIDStr);
-       wxString Result(UUIDStr);
-       
+#if defined(WIN32)
+       UUID uuidData;
+       UuidCreate(&uuidData);
+       wchar_t* uuidStr = 0;
+       UuidToString(&uuidData, (RPC_WSTR*)&uuidStr);
+       wstring uuidWStr(uuidStr);
+       std::string uuidOut(uuidWStr.begin(), uuidWStr.end());
 #elif defined(__HAIKU__)
     
 #else
-    
 #include <stdio.h>
     
-       FILE *uuid_hdl = popen("uuidgen", "r");
+       FILE *uuidhdl = popen("uuidgen", "r");
     
-       if (uuid_hdl == NULL) {
+       if (uuidhdl == NULL) {
                return "";
        }
     
-       char strdata[64];
-       std::string uuidout;
+       char strData[64];
+       std::string uuidOut;
     
-       while (fgets(strdata, sizeof(strdata), uuid_hdl) != NULL){
-               uuidout.append(strdata);
+       while (fgets(strData, sizeof(strData), uuidhdl) != NULL){
+               uuidOut.append(strData);
        }
     
-       pclose(uuid_hdl);
-    
+       pclose(uuidhdl);
 #endif
     
-       if (uuidout.back() == '\n'){
+       if (uuidOut.back() == '\n'){
                
-               uuidout.erase(uuidout.end()-1);
+               uuidOut.erase(uuidOut.end()-1);
                
        }
        
-       return uuidout;
-        
+       return uuidOut;
 }
\ No newline at end of file
Xestia Software Development
Yn Maystri
© 2006 - 2019 Xestia Software Development
Software

Xestia Address Book
Xestia Calendar
Development

Xestia Gelforn
Everything else

About
News
Privacy Policy