VB6 - CreateProcessWithLogonW не работает в Windows 10 - код ошибки 740

У меня есть старое приложение VB6, которое мне нужно поддерживать.

В функциональности приложения есть вызов CreateProcessWithLogonW, который не работает при запуске в Windows 10 (но прекрасно работает в Windows 7).

Код ошибки, который я получаю через звонок Err.LastDllError это код ошибки 740, который, я думаю, относится к "Запрошенная операция требует повышения прав." UAC отключен на компьютере с Win 10, на котором я запускаю это, поэтому я не уверен, что проблема здесь??

Есть ли у кого-нибудь опыт с этим?? Любая помощь очень ценится!

Что меня действительно смущает, так это то, что он работает на Win7 вообще без проблем.

Пример кода ниже:

Вот объявление функции:

Private Declare Function CreateProcessWithLogon Lib "Advapi32" Alias "CreateProcessWithLogonW" ( _
    ByVal UserName As Long, _
    ByVal domain As Long, _
    ByVal Password As Long, _
    ByVal dwLogonFlags As Long, _
    ByVal ApplicationName As Long, _
    ByVal strCommandLine As Long, _
    ByVal dwCreationFlags As Long, _
    ByVal lpEnvironment As Long, _
    ByVal strCurrentDirectory As Long, _
    ByRef lpStartupInfo As STARTUPINFO, _
    ByRef lppiProcessInfo As PROCESS_INFORMATION) As Long

А вот вызов функции

CreateProcessWithLogon(StrPtr(UserName), StrPtr(domain), StrPtr(Password), _
                                LOGON_WITH_PROFILE, StrPtr(ApplicationName), StrPtr(strCommandLine), _
                                CREATE_DEFAULT_ERROR_MODE Or CREATE_NEW_CONSOLE Or CREATE_NEW_PROCESS_GROUP, _
                                ByVal 0&, StrPtr(strCurrentDirectory), suiStartUpInfo, piProcessInfo)

0 ответов

Другие вопросы по тегам