Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.16;
Скачать: CL | DM;

Вниз

Использование StartService   Найти похожие ветки 

 
Dyakon_Frost ©   (2006-01-25 17:29) [0]

Привет всем!
Вопрос касается запуска сервисов!
Есть команда StartService для запуска сервисов:
BOOL StartService(
 IN SC_HANDLE hService, // handle службы
 IN DWORD dwArgc,    // количество аргументов
 IN PCTSTR * pArgv   // массив аргументов
);

Вопрос вот в чем - Обязательно ли передавать массив аргументов и как правельно это делать? В С++ можно не использовать этот параметр написав null; в Delphi это не канает(nil разумеется - StartService(sh, 0, nil);)? Что можно сделать?

Заранее спасибо!


 
BiN ©   (2006-01-25 17:40) [1]

lpServiceArgVectors
[in] Pointer to an array of pointers to null-terminated strings to be passed to a service as arguments. Driver services do not receive these arguments. If no arguments are passed to the service, this parameter can be NULL. The service accesses these arguments through its ServiceMain function. The first argument (argv[0]) is the name of the service by default, followed by the arguments, if any, in the lpServiceArgVectors array.

NULL в С - это аналог nil в Delphi


 
Dyakon_Frost ©   (2006-01-25 17:49) [2]

На счет null - мне понятно! Но почему в Delphi нельзя использовать nil в этой функции, допустим так:  StartService(sh, 0, nil);
Delphi выдает ошибку! Вот я и хочу знать какой именно надо передавать параметр!


 
BiN ©   (2006-01-25 17:55) [3]

Попробуй PChar(nil) или объяви функцию самостоятельно

type
 PPchar = ^PChar;

function StartService(hService: SC_HANDLE; dwNumServiceArgs: DWORD;
 lpServiceArgVectors: PPChar): BOOL; stdcall;


 
begin...end ©   (2006-01-25 18:00) [4]

StartService(..., ..., PChar(nil^))


 
Dyakon_Frost ©   (2006-01-25 18:15) [5]

Отлично работает!
Спасибо большое, а то я уже и незнал что делать!



Страницы: 1 вся ветка

Текущий архив: 2006.04.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.052 c
2-1143722382
diwww
2006-03-30 16:39
2006.04.16
как избавиться от Access violation?


2-1144071534
siv14
2006-04-03 17:38
2006.04.16
Просмотр структурированного файла


15-1143304649
Mozart
2006-03-25 19:37
2006.04.16
Delphi и Linux


2-1143795433
Alex7
2006-03-31 12:57
2006.04.16
Обращение к переменной Public


2-1143553760
0bsid
2006-03-28 17:49
2006.04.16
integer в string (не IntToStr)