VS2010 开发建立webservice服务并发布,使用VB6.0测试调用

最近在公司有使用到公司开发的webservice接口,然后发现自己的一个想法可以用webservice实现,于是想着自己建立webservice服务,并尝试发布,并用vb6.0 调用测试。

1,首先搜了一下webservice的建立,搜到一篇博文:

https://www.cnblogs.com/zqzjs/p/4705994.html

有详细的说明webservice 的建立,照葫芦画瓢,写了一个自己的webservice测试服务。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;

namespace MyWeb
{
    /// <summary>
    /// Summary description for CAPI
    /// </summary>
    [WebService(Namespace = "http://localhost/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
    // [System.Web.Script.Services.ScriptService]
    public class CAPI : System.Web.Services.WebService
    {

        [WebMethod]
        public string HelloWorld()
        {
            return "Hello World";
        }
        [WebMethod]
        public string CV1_TT_Report(string station, string tt)
        {
            
            Console.WriteLine(station + ";" + tt);
            return station + ";" + tt;
        }
    }
}

然后发布程序到D:\Web下,得到的文件是这样的:

2,之后就是发布了,由于自己的笔记本比较弱,所以一直都还在用xp系统,搜了一下,xp下能用的就是IIS5.1了,于是下载了IIS5.1,进行安装

安装细节就不说了,就说我碰到的坑:

<1>由于系统是ghost的,所以被精简了一些dll,安装过程中报了一些错,后来找到一个好用的安装包,居然包含了常见的几种dll,预计比较顺利的装好了iis5.1

附上链接,方便以后找

链接:https://pan.baidu.com/s/1J2BjWUHGgedvKayFDhl6Uw
提取码:odio

<2>装好iis5.1之后,在浏览器输入127.0.0.1 测试,发现需要输入账号密码,又搜索了一下,找到答案:

https://wenku.baidu.com/view/efe421875acfa1c7ab00cca6.html

<3>之后就是iis5.1的一些配置了,需要注册过ASP.NET IIS 才可以使用,输入cmd,回车,输入神秘代码:

C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis -i (根据你安装的framework版本和路径实际情况做适当调整)

然后就可以建站了,这里需要特别说明,XP不能建网站,只能建虚拟目录,而且只能同时有10个连接(也是搜到的,自己也没试过,反正自己也就是调试一下)

如果这个别名你设置的是test,那么之后你需要在浏览器输入127.0.0.1/  后面加test,即 127.0.0.1/test

本以为这样就访问了,结果出现这样的错误:

然后才发现,我发布的webservice 名字叫CAPI.asmx,所以iis的启用默认文档需要添加,否则iis根据设置的默认文档找不到网站,于是就报错啦。

这个简单,加进去就好了~ 右击新建的虚拟目录,点属性

 添加我们的CAPI.asmx,然后打开浏览器测试一下,终于发布成功了

接下来测试一下我们的VB6.0可否调用webservice接口

新建一个vb6.0 的标准exe工程

简单写一点代码:

Private cc As New SoapClient

Private Sub Command1_Click()
    Dim S$
    S = cc.CV1_TT_Report("S", "12")
    MsgBox S
End Sub

Private Sub Form_Load()
    cc.mssoapinit "http://localhost/test/?WSDL"
End Sub

运行一下:

看来是成功了。

所以我也可以把webservice用到自己的想法上了。

猜你喜欢

转载自www.cnblogs.com/bluelife1206/p/10976700.html