我已经有 10 多年没有见过 C++ 代码了,现在我需要开发一个非常小的 DLL 来使用Ping
该类(System::Net::NetworkInformation)
对某些remoteAddress
.
我收到的论点remoteAddress
是 aFREObject
然后需要转换为 a const uint8_t *
。前一个是强制性的,我无法更改任何内容。remoteAddress
必须作为 a 接收,然后FREObject
转换为 a const uint8_t *
。
我遇到的问题是我必须将 a 传递String^
给Ping
班级而不是 aconst uint8_t *
并且我不知道如何将 my 转换const uint8_t *
为 a String^
。你有什么想法?
接下来是我的代码的一部分:
// argv[ARG_IP_ADDRESS_ARGUMENT holds the remoteAddress value.
uint32_t nativeCharArrayLength = 0;
const uint8_t * nativeCharArray = NULL;
FREResult status = FREGetObjectAsUTF8(argv[ARG_IP_ADDRESS_ARGUMENT], &nativeCharArrayLength, &nativeCharArray);
基本上,该函数用 的值FREGetObjectAsUTF8
填充数组并返回数组的长度 in 。此外,该字符串使用 UTF-8 编码以空字符结尾。nativeCharArray
argv[ARG_IP_ADDRESS_ARGUMENT]
nativeCharArrayLength
我的下一个问题是将 a 转换String^
回const uint8_t *
. 如果您也能对此提供帮助,我将不胜感激。
正如我之前所说,这些都是不可更改的,我不知道如何更改nativeCharArray
为String^
. 任何建议都会有所帮助。
PS:此外,此 DLL 的目的是将其用作我的 Adobe Air 应用程序的 ANE(Air Native Extension)。