UUID uid;
UuidCreate(&uid);
char* str[sizeof(UUID)];
UuidToString(&uid,str);
cout<<str;
error C2664: “UuidToStringA”: 不能将参数 2 从“char *[16]”转换为“RPC_CSTR *”
8 个解决方案
#1
给str强制转化(RPC_CSTR *),我看RPC_CSTR这个类型也是个指针类型吧,和char *[]是同一阶指针的样子.
试试看.
试试看.
#2
直接用 RPC_CSTR str[sizeof(UUID)];
#3
msdn:The RPC run-time library allocates memory for the string returned in the StringUuid parameter.
------
没有例子,不知道是传&s(RPC_CSTR s)还p(RPC_CSTR* p),可以先试试RPC_CSTR*
用完调rpcstringfree释放
------
没有例子,不知道是传&s(RPC_CSTR s)还p(RPC_CSTR* p),可以先试试RPC_CSTR*
用完调rpcstringfree释放
#4
一发完就发觉错了,p是不行的...
RPC_CSTR str;
UuidToString(&uid,&str);
...
RpcStringFree(&str);
RPC_CSTR str;
UuidToString(&uid,&str);
...
RpcStringFree(&str);
#5
USES_CONVERSION;
GUID guid;
unsigned char *pszGuid;
::UuidCreate(&guid);
::UuidToString(&guid, &pszGuid);
cout<<pszGuid;
::RpcStringFree(&pszGuid);
#6
这个试一下看行不行。
#7
+++
#8
GUID tempGuid;
CString strGuid;
CoCreateGuid(&tempGuid);
RPC_WSTR pUuidString;
UuidToString(&tempGuid, &pUuidString);
strGuid.Format(_T("%s"), pUuidString);
RpcStringFree(pUuidString);
#1
给str强制转化(RPC_CSTR *),我看RPC_CSTR这个类型也是个指针类型吧,和char *[]是同一阶指针的样子.
试试看.
试试看.
#2
直接用 RPC_CSTR str[sizeof(UUID)];
#3
msdn:The RPC run-time library allocates memory for the string returned in the StringUuid parameter.
------
没有例子,不知道是传&s(RPC_CSTR s)还p(RPC_CSTR* p),可以先试试RPC_CSTR*
用完调rpcstringfree释放
------
没有例子,不知道是传&s(RPC_CSTR s)还p(RPC_CSTR* p),可以先试试RPC_CSTR*
用完调rpcstringfree释放
#4
一发完就发觉错了,p是不行的...
RPC_CSTR str;
UuidToString(&uid,&str);
...
RpcStringFree(&str);
RPC_CSTR str;
UuidToString(&uid,&str);
...
RpcStringFree(&str);
#5
USES_CONVERSION;
GUID guid;
unsigned char *pszGuid;
::UuidCreate(&guid);
::UuidToString(&guid, &pszGuid);
cout<<pszGuid;
::RpcStringFree(&pszGuid);
#6
这个试一下看行不行。
#7
+++
#8
GUID tempGuid;
CString strGuid;
CoCreateGuid(&tempGuid);
RPC_WSTR pUuidString;
UuidToString(&tempGuid, &pUuidString);
strGuid.Format(_T("%s"), pUuidString);
RpcStringFree(pUuidString);