Форум: "WinAPI";
Текущий архив: 2006.04.16;
Скачать: [xml.tar.bz2];
ВнизИспользование 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 вся ветка
Форум: "WinAPI";
Текущий архив: 2006.04.16;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.039 c