IE BHO и CreateProcess
От: tpb12 Россия  
Дата: 26.06.09 14:00
Оценка:
Из плагина интернет эксплорера пытаюсь сделать CreateProcess, результат — падение (CRASH) как с включенным UAC так и без него. В чем может быть причина? Как запустить процесс? В MSDN об этом толком ничего не нашел. ShellExecute не устраивает, т.к. при включенном UAC, вылезает предупреждение. Надо, чтобы сей процесс проистекал тихо.
Re: IE BHO и CreateProcess
От: sidorov18 США  
Дата: 29.06.09 07:34
Оценка:
Здравствуйте, tpb12, Вы писали:

T>Из плагина интернет эксплорера пытаюсь сделать CreateProcess, результат — падение (CRASH) как с включенным UAC так и без него. В чем может быть причина? Как запустить процесс? В MSDN об этом толком ничего не нашел. ShellExecute не устраивает, т.к. при включенном UAC, вылезает предупреждение. Надо, чтобы сей процесс проистекал тихо.


чтоб не выскакивало сообщение — надо ключик в реестре прописать. IE portected mode. касательно ошибки — скорее всего ты что-то неправильно передаешь, покажы код.
Re[2]: IE BHO и CreateProcess
От: tpb12 Россия  
Дата: 29.06.09 13:46
Оценка:
Здравствуйте, sidorov18, Вы писали:

S>Здравствуйте, tpb12, Вы писали:


T>>Из плагина интернет эксплорера пытаюсь сделать CreateProcess, результат — падение (CRASH) как с включенным UAC так и без него. В чем может быть причина? Как запустить процесс? В MSDN об этом толком ничего не нашел. ShellExecute не устраивает, т.к. при включенном UAC, вылезает предупреждение. Надо, чтобы сей процесс проистекал тихо.


S>чтоб не выскакивало сообщение — надо ключик в реестре прописать. IE portected mode. касательно ошибки — скорее всего ты что-то неправильно передаешь, покажы код.


Читал я то что там написано про protected mode. На Висте с UAC это, похоже, не работает. Что пиши в реестр, что не пиши — однотипственно, сообщение появляется. Что касается кода (практически MSDN):

STARTUPINFO si;
PROCESS_INFORMATION pi;

ZeroMemory( &si, sizeof(si) );
si.cb = sizeof(si);
ZeroMemory( &pi, sizeof(pi) );
if (!CreateProcessW(0, TEXT("C:\\token_new.exe"), 0, 0, FALSE, NULL, 0, NULL, &si, &pi))
{
return FALSE;
}
Хочу заметить что отдельно приложение token_new.exe прекрасно работает.
Re[3]: IE BHO и CreateProcess
От: dudkin  
Дата: 29.06.09 22:29
Оценка:
Здравствуйте, tpb12, Вы писали:

T>Здравствуйте, sidorov18, Вы писали:


S>>Здравствуйте, tpb12, Вы писали:


T>>>Из плагина интернет эксплорера пытаюсь сделать CreateProcess, результат — падение (CRASH) как с включенным UAC так и без него. В чем может быть причина? Как запустить процесс? В MSDN об этом толком ничего не нашел. ShellExecute не устраивает, т.к. при включенном UAC, вылезает предупреждение. Надо, чтобы сей процесс проистекал тихо.


S>>чтоб не выскакивало сообщение — надо ключик в реестре прописать. IE portected mode. касательно ошибки — скорее всего ты что-то неправильно передаешь, покажы код.


T>Читал я то что там написано про protected mode. На Висте с UAC это, похоже, не работает. Что пиши в реестр, что не пиши — однотипственно, сообщение появляется. Что касается кода (практически MSDN):


Работает.
Если считаешь что нашел вариант при котором не работает то напиши этому человеку http://www.linkedin.com/pub/matthew-crowley/6/8a0/86b , он этим заведует.
Re[4]: IE BHO и CreateProcess
От: sidorov18 США  
Дата: 30.06.09 10:02
Оценка:
Здравствуйте, dudkin, Вы писали:

D>Здравствуйте, tpb12, Вы писали:



D>Работает.

D>Если считаешь что нашел вариант при котором не работает то напиши этому человеку http://www.linkedin.com/pub/matthew-crowley/6/8a0/86b , он этим заведует.

да. вариант с реестром работает. я проверял. что касается кода — попробуй в отдельном приложении его выполнить.
Re[3]: IE BHO и CreateProcess
От: Аноним  
Дата: 01.07.09 08:30
Оценка: +1
T> if (!CreateProcessW(0, TEXT("C:\\token_new.exe"), 0, 0, FALSE, NULL, 0, NULL, &si, &pi))
T> {
T> return FALSE;
T> }
T>Хочу заметить что отдельно приложение token_new.exe прекрасно работает.
Низзя в CreateProcess 2м параметром передавать строковый литерал.
Надо хотябы так:
WCHAR cmd[] = TEXT("C:\\token_new.exe");
        if (!CreateProcessW(0, cmd, 0, 0, FALSE, NULL, 0, NULL,
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.