Windows Service问题(急急急) (200分)

  • 主题发起人 主题发起人 WangHL
  • 开始时间 开始时间
W

WangHL

Unregistered / Unconfirmed
GUEST, unregistred user!
谁有用delphi开发Windows服务(Service)的手册或原程序代码。
C#的也可以!
谢谢!
 
MS .NET SDK 自带
http://localhost/quickstart/ASPPlus/
编写简单的 XML Web services
可以使用任何文本编辑器在几分钟内编写出一个简单的 XML Web services。您在本节中说明的服务 MathService 将公开将两个数相加、相减、相除和相乘的方法。在页面的顶部,下面的指令除了指定 XML Web services 的语言(此例中为 C#)外,还将文件标识为该服务。

<%@ WebService Language="C#" Class="MathService" %>

在此同一文件中,定义一个封装服务功能的类。该类应当是公共的,并且可以是从 XML Web services 基类继承的(如果愿意的话)。将从该服务公开的每种方法的前面都由 [WebMethod] 属性标记。没有该属性,方法将不从服务公开。这对于隐藏由公共 XML Web services 方法调用的实现细节,或者对于在本地应用程序中也使用 XML Web services 类的情形(本地应用程序可以使用任何公共类,但只有 WebMethod 类可以作为 XML Web services 进行远程访问)有时很有用。



using System;
using System.Web.Services;

public class MathService : WebService {

[WebMethod] public int Add(int a, int b) {
return a + b;
}

}


Imports System
Imports System.Web.Services

Public Class MathService : Inherits WebService

<WebMethod()> Public Function Add(a As Integer, b As Integer) As Integer
Return(a + b)
End Function

End Class


import System;
import System.Web.Services;

public class MathService extends WebService {

WebMethodAttribute public function Add(a:int, b:int) : int {
return a + b;
}

}


C# VB JScript



XML Web services 文件以 .asmx 文件扩展名保存。与 .aspx 文件一样,这些文件也在服务请求发出(后面的请求由缓存的预编译 type 对象服务)时由 ASP.NET 运行库自动编译。对于 MathService 的情况,已在 .asmx 文件本身中定义了 WebService 类。注意,如果浏览器请求 .asmx 文件,ASP.NET 运行库将返回描述 XML Web services 的 XML Web services 帮助页。


C# MathService.asmx

[运行示例] | [查看源代码]

C# MathService.asmx?wsdl

[查看示例]



预编译的 XML Web services
如果有一个要公开为 XML Web services 的预编译类(并且该类公开用 [WebMethod] 属性标记的方法),则仅用如下命令行即可创建 .asmx 文件。
<%@ WebService Class="MyWebApplication.MyWebService" %>

MyWebApplication.MyWebService 定义 XML Web services 类,并且包含在 ASP.NET 应用程序的 /bin 子目录中。


从客户端应用程序使用 XML Web services
若要使用该服务,需要使用 SDK 中包含的 Web 服务描述语言命令行工具 (WSDL.exe) 创建与 .asmx 文件中定义的类相似的代理类。(它将仅包含 WebMethod 方法。)然后使用包含的此代理类编译代码。
WSDL.exe 接受各种命令行选项,但若要创建代理,则只需一个选项:WSDL 的 URI。在此示例中,传递几个指定此代理的首选语言、命名空间和输出位置的额外选项。还对以前保存的 WSDL 文件进行编译,而不是编译服务本身的 URI:

wsdl.exe /l:CS /n:MathService /out:MathService.cs MathService.wsdl

一旦代理类存在,即可创建基于它的对象。用该对象进行的每个方法调用然后发送到 XML Web services 的 URI(通常以 SOAP 请求的形式)。


C# MathServiceClient.aspx

[运行示例] | [查看源代码]


 
声明一下,不是Web Service!是Windows Service
 
对不起,看错了
希望这个没错
如何编写简单服务应用程序
Microsoft Windows NT 服务使您可以创建在其自已的 Windows 会话中运行、能够长时间运行的可执行应用程序。这些服务可在计算机启动时自动启动,能够被暂停和重新启动,而且通常不显示任何用户界面。这使得服务非常适合在服务器上使用,或者用于需要长时间运行的功能,而且该功能不应妨碍正在同一台计算机上工作的其他用户的任何场合。还可以在一个特定用户帐户(不同于已登录用户帐户或默认计算机帐户)的安全性上下文中运行服务。有关服务和 Windows 会话的更多信息,请参见 MSDN Online 中 Platform SDK 文档的“关于服务”一节。

使用.NET Framework,可通过创建作为服务安装的应用程序来方便地创建服务。例如,假定您想要监视性能计数器的数据并对阈值作出反应。则通过编写一个 NT 服务并将其部署到拥有想要监视的计数器的计算机中,即可实现这一点。

下面的示例是一个简单服务应用程序。可使用“.NET Framework SDK 安装实用工具”来安装它。从命令提示处运行:

> InstallUtil.exe SimpleService.exe

安装完成后,可从“服务管理控制台”启动“世界你好服务”(Hello World Service)。在服务启动后,可看到该示例服务在向其事件日志写入问候信息。可使用“服务管理控制台”来暂停、继续、启动和停止服务,并观察这些操作如何影响写入事件日志的消息。在使用该示例试验结束后,可通过从命令窗口运行下面的命令来卸载该服务(在卸载前应停止该服务):

> InstallUtil.exe /u SimpleService.exe


http://localhost/quickstart/HowTo/
 
后退
顶部