在 Delphi 中操作 Windows 服务,你可以使用 `TServiceManager` 和 `TService` 组件。 首先,在 Delphi 的工具箱中找到 `TServiceManager` 组件,并将其放置在你的窗体上。然后配置 `TServiceManager` 的 `MachineName` 属性,设置为你想要操作的目标计算机的名称,留空则为本地计算机。 接下来,你可以使用 `TServiceManager` 的 `Services` 属性来获取计算机上所有的服务的列表。例如,你可以使用以下代码将服务名称显示在一个列表框中: ```delphi procedure TForm1.Button1Click(Sender: TObject); var i: Integer; begin ListBox1.Items.Clear; with TServiceManager.Create(nil) do try MachineName := 'TargetComputer'; Connect; if Connected then begin Services.Refresh; for i := 0 to Services.Count - 1 do ListBox1.Items.Add(Services[i].DisplayName); end; finally Free; end; end; ``` 现在,你可以选择一个服务,并使用 `TService` 组件来进行更详细的操作。将 `TService` 组件放置在窗体上,并设置其 `ServiceName` 属性为你要操作的服务的名称。 以下是一个示例代码,可以打开选定的服务: ```delphi procedure TForm1.Button2Click(Sender: TObject); begin with TService.Create(nil) do try ServiceName := 'SelectedService'; if OpenService then ShowMessage('服务已打开。'); finally Free; end; end; ``` 你还可以使用 `TService` 组件的其他方法,例如 `Start`, `Stop`, `Pause` 和 `Continue` 来分别启动、停止、暂停和恢复服务的运行。 希望以上代码能够帮助到你,如果有任何问题,请随时与我联系。 |
|