使用Wininet将Delphi 2010应用程序肥皂Web服务移植到Winhttp

用户名

当前,我们正在运行在XP上的delphi应用程序(是仍在运行XP)中使用基于soap的Web服务,并移植到Windows 8.1操作系统。我们当前的实现还使用CAPICOM进行证书管理,现在也不再支持。

我们计划将Delphi 2010的当前版本从wininet升级到winhttp(速度更快)。我发现的组件包括:SynCrtSock,ICS和Indy。根据我的评论,这些不是使用wininet还是不使用肥皂?

组件和示例中至少包含以下内容的任何信息:肥皂支持,winhttp和证书管理将不胜感激。

提前致谢。

用户名

现在,我已经解决了证书管理中问题的关键,并认为我会发布解决方案。

证书管理要求仅限于仅附加到SOAP消息,我可以使用wcrypt2库来实现该解决方案。我使用CAPICOM的原始代码(在许多互联网搜索的帮助下)是

   Certificate1.Load(CertFile, certpword, CAPICOM_KEY_STORAGE_DEFAULT,
    CAPICOM_CURRENT_USER_KEY);
  Cert2 := Certificate1.DefaultInterface;
  CertContext := Cert2 as ICertContext;
  CertContext.Get_CertContext(Integer(PCertContext));
  if internetsetOption(Data, INTERNET_OPTION_CLIENT_CERT_CONTEXT,
    PCertContext, SizeOf(CERT_CONTEXT)) = False then
  begin
    'Error Handling'
  end;

通过使用wcrypt2,我可以通过以下方式对我的BeforePost函数进行简单的更改,从而从证书存储中读取并附加到soap消息:

hMyStore:=CertOpenSystemStore(0,'MY');
pCertContext:=CertFindCertificateInStore(
  hMyStore,
  X509_ASN_ENCODING,
  0,
  CERT_FIND_SUBJECT_STR,
  PCHAR('KeyName'),Nil
  );

  if internetsetOption(Data, INTERNET_OPTION_CLIENT_CERT_CONTEXT,
        PCertContext, SizeOf(CERT_CONTEXT)) = False then
  begin
    'error handling'
  end;

现在我与Windows 8.1兼容,因为wininet仍与8.1兼容,这不是我的关键路线,还有更多时间来部署解决方案。

我的解决方案的任何进一步的建议,将不胜感激。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将应用程序移植到android

来自分类Dev

将应用程序移植到android

来自分类Dev

使用NDK将C ++应用程序移植到Android

来自分类Dev

将Web应用程序移植到Tomcat:javax.naming.NameNotFoundException:

来自分类Dev

将 GitLab Web 应用程序部署到 Azure 应用程序服务

来自分类Dev

将WinForms应用程序移植到Mac OS

来自分类Dev

将CPP应用程序移植到Android

来自分类Dev

将Android输入移植到Java桌面应用程序

来自分类Dev

将iPhone应用程序移植到iPad

来自分类Dev

将WinForms应用程序移植到Mac OS

来自分类Dev

将应用程序从Java移植到Python

来自分类Dev

将应用程序移植到Google App Engine

来自分类Dev

是否可以将iOS应用程序移植到Android?

来自分类Dev

如何将SpringMVC应用程序移植到SpringREST?

来自分类Dev

将命令行应用程序移植到Sinatra / Ruby on Rails应用程序

来自分类Dev

将动态Web应用程序从Eclipse移植到Apache-Tomcat以进行手动运行

来自分类Dev

将动态Web应用程序从Eclipse移植到Apache-Tomcat以进行手动运行

来自分类Dev

将 Android 应用程序移植为 Web 应用程序

来自分类Dev

使用使用JavaScript互操作导入的JavaScript库将React应用程序移植到Blazor应用程序

来自分类Dev

Web应用程序的安全性-将凭据传递到Web服务API

来自分类Dev

如何使用delphi 2010将虚拟密钥发送到其他应用程序?

来自分类Dev

使用 Mono Compiler 将 c# winform 应用程序移植到 RaspberryPi 时出错

来自分类Dev

将Spring Boot旧版Web应用程序部署到Weblogic 10.3.6服务器

来自分类Dev

将Web应用程序从本地计算机部署到远程tomcat服务器

来自分类Dev

将完成的Web服务集成到Android应用程序中

来自分类Dev

如何将类对象列表从Web服务传递到Windows窗体应用程序

来自分类Dev

将Spring Boot Web应用程序作为服务部署到Ubuntu

来自分类Dev

代理将应用程序从不同的机器传递到 apache Web 服务器

来自分类Dev

显示从mongodb到Android应用程序的helloworld,但使用php web服务和json

Related 相关文章

  1. 1

    将应用程序移植到android

  2. 2

    将应用程序移植到android

  3. 3

    使用NDK将C ++应用程序移植到Android

  4. 4

    将Web应用程序移植到Tomcat:javax.naming.NameNotFoundException:

  5. 5

    将 GitLab Web 应用程序部署到 Azure 应用程序服务

  6. 6

    将WinForms应用程序移植到Mac OS

  7. 7

    将CPP应用程序移植到Android

  8. 8

    将Android输入移植到Java桌面应用程序

  9. 9

    将iPhone应用程序移植到iPad

  10. 10

    将WinForms应用程序移植到Mac OS

  11. 11

    将应用程序从Java移植到Python

  12. 12

    将应用程序移植到Google App Engine

  13. 13

    是否可以将iOS应用程序移植到Android?

  14. 14

    如何将SpringMVC应用程序移植到SpringREST?

  15. 15

    将命令行应用程序移植到Sinatra / Ruby on Rails应用程序

  16. 16

    将动态Web应用程序从Eclipse移植到Apache-Tomcat以进行手动运行

  17. 17

    将动态Web应用程序从Eclipse移植到Apache-Tomcat以进行手动运行

  18. 18

    将 Android 应用程序移植为 Web 应用程序

  19. 19

    使用使用JavaScript互操作导入的JavaScript库将React应用程序移植到Blazor应用程序

  20. 20

    Web应用程序的安全性-将凭据传递到Web服务API

  21. 21

    如何使用delphi 2010将虚拟密钥发送到其他应用程序?

  22. 22

    使用 Mono Compiler 将 c# winform 应用程序移植到 RaspberryPi 时出错

  23. 23

    将Spring Boot旧版Web应用程序部署到Weblogic 10.3.6服务器

  24. 24

    将Web应用程序从本地计算机部署到远程tomcat服务器

  25. 25

    将完成的Web服务集成到Android应用程序中

  26. 26

    如何将类对象列表从Web服务传递到Windows窗体应用程序

  27. 27

    将Spring Boot Web应用程序作为服务部署到Ubuntu

  28. 28

    代理将应用程序从不同的机器传递到 apache Web 服务器

  29. 29

    显示从mongodb到Android应用程序的helloworld,但使用php web服务和json

热门标签

归档