diff options
author | Marc Laukien <marc@zeroc.com> | 2002-01-15 22:11:25 +0000 |
---|---|---|
committer | Marc Laukien <marc@zeroc.com> | 2002-01-15 22:11:25 +0000 |
commit | c54a7c863932c31900b2d35d5e9ceed8fb7ce829 (patch) | |
tree | c3cf9262d5525f2c587d988a9fad9f436313afb0 /cpp/src/IceUtil/UUID.cpp | |
parent | uuid fixes for windows (diff) | |
download | ice-c54a7c863932c31900b2d35d5e9ceed8fb7ce829.tar.bz2 ice-c54a7c863932c31900b2d35d5e9ceed8fb7ce829.tar.xz ice-c54a7c863932c31900b2d35d5e9ceed8fb7ce829.zip |
uuid fixes for windows
Diffstat (limited to 'cpp/src/IceUtil/UUID.cpp')
-rw-r--r-- | cpp/src/IceUtil/UUID.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/cpp/src/IceUtil/UUID.cpp b/cpp/src/IceUtil/UUID.cpp index 4c6320a8507..9befbbfbb4a 100644 --- a/cpp/src/IceUtil/UUID.cpp +++ b/cpp/src/IceUtil/UUID.cpp @@ -11,6 +11,7 @@ #include <IceUtil/UUID.h> #ifdef WIN32 +# include <rpc.h> #else extern "C" // uuid/uuid.h seems to miss extern "C" declarations. { @@ -24,7 +25,19 @@ string IceUtil::generateUUID() { #ifdef WIN32 + + UUID uuid; + UuidCreate(&uuid); + + unsigned char* str; + UuidToString(&uuid, &str); + + string result(reinterpret_cast<char*>(str)); + RpcStringFree(&str); + return result; + #else + uuid_t uuid; uuid_generate(uuid); @@ -32,5 +45,6 @@ IceUtil::generateUUID() uuid_unparse(uuid, str); return str; + #endif } |