Конференция "WinAPI" » Запуск под админом
 
  • Unlocker (13.04.09 23:58) [0]
    Здравствуйте!
    Такая ситуация. Своей программой хочу запускать другие программы с возможностью указания от чьего имени. Этакий аналог "Запуск от имени". логин-пароль есть. Подозреваю, что нужно запускать через ShellExecute, но с определенными параметрами.
    Вообщем прошу помощи.
  • Игорь Шевченко © (14.04.09 00:05) [1]
    CreateProcessWithLogon
  • Городской Шаман (14.04.09 00:12) [2]

    > Unlocker   (13.04.09 23:58)  


    Уточню, ответ предыдущего отвечающего. Нормально это процесс работает только начиная с WinXP (тоесть под 2000 не будет работать даже с CreateProcessAsUser). Так как Win2000 для смены токена при запуске процесса требует привилегий SE_ASSIGNPRIMARYTOKEN_NAME and SE_INCREASE_QUOTA_NAME, которых по умолчанию нет даже у администратора. Только через сервис.

    Ну а через ShellExecute через программу runas с ключами. Самый переносимый способ.
  • Игорь Шевченко © (14.04.09 01:37) [3]

    > тоесть под 2000 не будет работать даже с CreateProcessAsUser


    Будет
  • Игорь Шевченко © (14.04.09 01:40) [4]
    CreateProcessWithLogonW появился в Windows 2000, runas работает именно с его помощью, а если у кого кривые руки - это еще не повод для публичных об этом заявлений.
  • Maxxoft (14.04.09 06:40) [5]
    А если нужно вызвать функцию из dll с админскими правами?
  • Игорь © (14.04.09 07:17) [6]
  • Игорь Шевченко © (14.04.09 10:48) [7]

    > А если нужно вызвать функцию из dll с админскими правами?


    Сам понял, что сказал ?
  • Unlocker (14.04.09 18:38) [8]
    Большое спасибо! Теперь у меня Unlocker работает под ограниченой учеткой ;)
  • Maxxoft (15.04.09 07:20) [9]

    > Сам понял, что сказал ?

    Да, затупил, извиняюсь.
    Ситуация следующая: мое приложение вызывает функции из dll, которым нужны админские права на локальной машине. Сделал юзерам батничек

     runas \savecred user:sysad "приложение..."


    Соответственно программа запускается с правами системного админа, тем не менее при вызове функций из библиотечки (написана не мной) вылетает ошибка нарушения прав доступа "file access error"
 
Конференция "WinAPI" » Запуск под админом
Есть новые Нет новых   [134435   +36][b:0][p:0.001]