gpt4 book ai didi

用于调用 Web 服务的 C# 类的 C++ 包装器类

转载 作者:行者123 更新时间:2023-11-28 05:11:54 24 4
gpt4 key购买 nike

所以,我用 C# 编写了一个 Web 服务,它有一个对哈希进行签名的方法。此 Web 服务是一个 WCF 服务应用程序。然后,我创建了一个 c# 控制台应用程序,我在其中编写了一个函数来使用此 Web 服务。调用网络服务的函数声明如下:

class Program
{
public byte[] callWS(string alias, byte[] myHash,string myPassword)
{
IhashSignSVCClient client = new IhashSignSVCClient();
byte[] signedData= client.SignandReturn(alias, myhash, myPassword);
if (signedData != null)
{
Console.WriteLine(signedData);
return signedData;
}
return null;

}
}

此 Web 服务工作正常。现在我想在这个 c# 方法上构建一个 c++ 包装类,因为我想从非托管代码调用这个 web 服务,我认为创建一个 c++ 包装类是个好主意。任何人都可以帮助我了解这个包装类的结构吗?我对c++和c#之间的转换不是很了解。我已经创建了一个 C++ CLR 类库,其中有一个 ref 类,它将包含我的 c++ 方法来调用这个 c# 方法,但我仍然对该函数的参数类型有一些问题。

最佳答案

如果您想坚持使用 native (非托管)C++(而不是使用 C++/CLI),您最好的选择可能是 WWSAPI因为它可以直接从 C++ 调用 WCF 服务。虽然因为它是一个基于 C 的 API,所以从 C++ 使用它有点麻烦。

否则,有大量关于 C++/CLI 的文档 here ;特别是marshaling .

关于用于调用 Web 服务的 C# 类的 C++ 包装器类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43333256/

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