powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Удаленная отладка служб
10 сообщений из 10, страница 1 из 1
Удаленная отладка служб
    #39783246
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кто-то знает как приаттачится к удаленной службе?

Система: удаленная машина Windows 10. Запущен PAServer от Rio от имени администратора.

Пытаюсь из IDE выполнить Attach to process - и вижу только обычные процессы.

Чекбокс Show system process ни на что не влияет.

Пробовал запускать службу с локальной учетной записью - не помогает.

Раньше (в XE 3 и другой Windows) была проблема, что не передавались имена системных процессов, а только их PID. Сейчас нет ничего. Как я понимаю не хватает каких-то прав в Windows

С уважением, Vasilisk
...
Рейтинг: 0 / 0
Удаленная отладка служб
    #39783248
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На всякий случай: x64 и x86 не путаешь?
...
Рейтинг: 0 / 0
Удаленная отладка служб
    #39783251
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rgreatНа всякий случай: x64 и x86 не путаешь?Нет. Отлаживаю 32 битную службу на 64 битной Windows

Если выбрать Win64 Debugger, то тоже видны только обычные процессы. Служб никаких нет
...
Рейтинг: 0 / 0
Удаленная отладка служб
    #39783252
bk0010
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Запустите среду через "Запуск от имени администратора", со времен Vista то, что вы сидите под админом не значит, что у вас админские права.
...
Рейтинг: 0 / 0
Удаленная отладка служб
    #39783586
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bk0010апустите среду через "Запуск от имени администратора"Спасибо, кэп. Ничего, что студия запущена на другом компе и получает инфу об удаленной машине через сокет?
...
Рейтинг: 0 / 0
Удаленная отладка служб
    #39783723
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В общем написал службу, которая запускает PAServer. Сразу появились все процессы
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
unit UPASImpl;

{$WARN SYMBOL_PLATFORM OFF}

interface

uses
  Vcl.SvcMgr;

type
  TPAServerLauncher = class(TService)
    procedure ServiceStart(Sender: TService; var AStarted: Boolean);
    procedure ServiceStop(Sender: TService; var Stopped: Boolean);
  private
    FProcHandle: THandle;
    FInWritePipe: THandle;
  public
    function GetServiceController: TServiceController; override;
  end;

var
  PAServerLauncher: TPAServerLauncher;

implementation

uses
  Winapi.Windows,
  System.SysUtils;

{$R *.dfm}

procedure ServiceController(CtrlCode: DWord); stdcall;
begin
  PAServerLauncher.Controller(CtrlCode);
end;

function TPAServerLauncher.GetServiceController: TServiceController;
begin
  Result := ServiceController;
end;

procedure TPAServerLauncher.ServiceStart(Sender: TService;
  var AStarted: Boolean);
var
  LBasePath: string;
  LProcName: string;
  LInReadPipe: THandle;
  LSecAttr: TSecurityAttributes;
  LStartup: TStartupInfo;
  LProcInfo: TProcessInformation;
begin
  try
    LBasePath := ExtractFilePath(GetModuleName(HInstance));
    LProcName := LBasePath + 'PAServer.exe';

    LSecAttr.nLength := SizeOf(LSecAttr);
    LSecAttr.lpSecurityDescriptor := nil;
    LSecAttr.bInheritHandle := True;

    Win32Check(CreatePipe(LInReadPipe, FInWritePipe, @LSecAttr, 0));
    try
      Win32Check(SetHandleInformation(FInWritePipe, HANDLE_FLAG_INHERIT, 0));

      FillChar(LStartup, SizeOf(LStartup), 0);
      LStartup.cb := SizeOf(LStartup);
      LStartup.dwFlags := STARTF_USESTDHANDLES;
      LStartup.hStdInput := LInReadPipe;

      Win32Check(CreateProcess(
        PChar(LProcName),
        PChar(Format('"%s"', [LProcName])),
        nil,
        nil,
        True,
        0,
        nil,
        PChar(LBasePath),
        LStartup,
        LProcInfo
      ));
    finally
      CloseHandle(LInReadPipe);
    end;
    CloseHandle(LProcInfo.hThread);

    FProcHandle := LProcInfo.hProcess;
    AStarted := True;
  except
    on E: Exception do begin
      LogMessage(E.Message);
      AStarted := False;
      if FInWritePipe <> 0 then begin
        CloseHandle(FInWritePipe);
        FInWritePipe := 0;
      end;
    end;
  end;
end;

procedure TPAServerLauncher.ServiceStop(Sender: TService; var Stopped: Boolean);
const
  CExit: AnsiString = 'q' + sLineBreak;
var
  LWriteCnt: Cardinal;
begin
  if WaitForSingleObject(FProcHandle, 0) = WAIT_TIMEOUT then begin
    Win32Check(WriteFile(FInWritePipe, CExit[1], Length(CExit), LWriteCnt, nil));
    WaitForSingleObject(FProcHandle, INFINITE);
  end;
  CloseHandle(FProcHandle);
  CloseHandle(FInWritePipe);
end;

end.

...
Рейтинг: 0 / 0
Удаленная отладка служб
    #39783725
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Жаль что они сами не догадались сделать PAServer сервисом.
...
Рейтинг: 0 / 0
Удаленная отладка служб
    #39783739
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот ссылка на проект на гитхабе https://github.com/anton-shchyrov/PAServerLauncher
...
Рейтинг: 0 / 0
Удаленная отладка служб
    #39783756
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Vasilisk_В общем написал службу, которая запускает PAServer

а это писать надо?

srvany.exe была написана ещё в 2003, причём самим Майкрософтом

Впрочем и до 2003 года что-то было на NT Magazine, не помню что
...
Рейтинг: 0 / 0
Удаленная отладка служб
    #39784374
Василий 2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nssm еще есть
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Удаленная отладка служб
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]