UuidToString 第二个参数怎么填?

时间:2022-09-18 11:24:00

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释放

#4


一发完就发觉错了,p是不行的...

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


引用 5 楼 guoxuqu 的回复:
C/C++ code
USES_CONVERSION;

    GUID guid;
    
    
    unsigned char *pszGuid;
    ::UuidCreate(&amp;guid);
    ::UuidToString(&amp;guid, &amp;pszGuid);
      cout<<pszGuid;
    ::RpcStri……


+++

#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释放

#4


一发完就发觉错了,p是不行的...

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


引用 5 楼 guoxuqu 的回复:
C/C++ code
USES_CONVERSION;

    GUID guid;
    
    
    unsigned char *pszGuid;
    ::UuidCreate(&amp;guid);
    ::UuidToString(&amp;guid, &amp;pszGuid);
      cout<<pszGuid;
    ::RpcStri……


+++

#8




GUID tempGuid;
CString strGuid;
CoCreateGuid(&tempGuid);

RPC_WSTR pUuidString;
UuidToString(&tempGuid, &pUuidString);
strGuid.Format(_T("%s"), pUuidString);
RpcStringFree(pUuidString);