gpt4 book ai didi

c# - 如何编码二维 TCHAR 数组?

转载 作者:太空狗 更新时间:2023-10-29 23:17:40 26 4
gpt4 key购买 nike

我有一个 DLL 函数,可以将文件转换为另一种格式。该函数生成多个文件作为输出。因此,它用输出文件的路径填充第二个参数。

C++函数定义如下:

int Convert(LPTSTR lpSource, TCHAR outputFileName[][MAX_PATH]);

如何混搭第二个参数,以便我的 C# 应用程序可以正确接收输出文件路径?

[DllImport("Convert.dll")]
private static extern int Convert(
[MarshalAs(UnmanagedType.LPTStr)] string lpszSource,
????
);

提前致谢。

最佳答案

我会使用 C++/CLI(它非常擅长在 native C/C++ 代码和托管代码之间构建桥接层)使事情变得更简单。

基本上,您可以编写一个薄的 C++/CLI 层,在其主体中公开调用 native 函数的方法,然后将返回的 native 字符串复制到 gcnew 中。 -ly 创建了 array<String^> ,并将其返回给 C# 托管调用方。

关于c# - 如何编码二维 TCHAR 数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17143419/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com