Private Sub Command1_Click()
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run """tscon.exe"""""" /password:12345"
End Sub
В какой переменной?И заодно вопрос - как лучше передать в значение password: то, что находится в переменной?
Проект и так голый...ошибка на строке:Кирилл, это случайно не та ошибка, которая у тебя была из-за кривой иконки в ресурсах?
Собери голый проект.
WshShell.Run """tscon.exe"""""" /password:12345"
Смотри, данная программа будет экстренно переходить из одной учетной записи в другую, причем в определенных ситуациях предыдущая сессия будет завершаться полностью, а в особо отдельных случаях экстренно покинутая учетка будет удалена вместе с файлами и на несколько раз "перезатерта"В какой переменной?
Dim UserPassword As String
UserPassword = ...
Private Sub Command1_Click()
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run """tscon.exe"""""" /password:UserPassword" 'Как сделать,что бы эта переменная воспринималась?
End Sub
Если перевести на язык командной строки, то эта строка будет:Проект и так голый...ошибка на строке:
"tscon.exe""" /password:12345
Так вот, так как tscon.exe это консольная программа и запускается с аргументами, то пароль, сохраненный в переменную VB программы нельзя поместить в команде для программы tscon.exe
Например так, ранее мы поместили пароль в переменную UserPassword:
WshShell.Run "tscon.exe /password:" & UserPassword
Ну а почему тогда на некоторых компах работает?Если перевести на язык командной строки, то эта строка будет:
При чём тут переменные CMD к переменным VB6. У CMD нет своих переменных, она использует переменные окружения. В VB6 такие раскрываются через Environ(), если они глобальные или наследованы.Я думаю потому что сохраняется она в среде vb6 а в cmd не объявлена...
Понятия не имею.Ну а почему тогда на некоторых компах работает?
Бред какой-то пишешь. Опять кучу лишних кавычек нагородил?Командная строка, получается, видит:
tscon.exe - пробел - /password: & UserPassword
Можно просто Shell ...WshShell.Run
По-моему на скриншоте выше не имя сеанса, а его тип.Неактивный сеанс указывается без имени, а вот ID - непостоянная величина.
shell "c:\windows\sysnative\tscon.exe """" /password:" & NamePassword
Ну мне изначально тоже так казалось, но справка, черт ее, говорит иначе)По-моему на скриншоте выше не имя сеанса, а его тип.
<пользователь> Имя пользователя.
<имя сеанса> Имя сеанса.
<ID сеанса> Идентификатор сеанса.
/SERVER:<сервер> Опрашиваемый сервер (по умолчанию - текущий).
Я когда гуглил тоже про это читал, но если то же самое делать просто из командной строки - без проблем.Ошибка -2147024894 обозначает, что система не может найти указанный файл.
Ну дык, ты какую командную строку запускал 64-битную или 32-битную? Не забывай, что все программы в VB6 32-битные и в 64-битной ОС на них действуют все возможные переадресации и + ещё и виртуализации, если ты не пользуешься манифестом.Я когда гуглил тоже про это читал, но если то же самое делать просто из командной строки - без проблем.
Справку я и сам читал, и там написано указать имя сеанса или его идентификатор, но ты указываешь пустое имя. Какое по-твоему должно быть поведение у утилиты tscon? Неопределённое. Как получать идентификаторы сеансов расписано в этой теме: How to query a user's session id under Windows?Ну мне изначально тоже так казалось, но справка, черт ее, говорит иначе)
shell "c:\windows\sysnative\tscon.exe 2 /password:" & NamePassword
shell "c:\windows\system32\tscon.exe 2 /password:" & NamePassword
Это как?Если ты хочешь залогиниться под пользователем, который ещё не вошел в систему, то это делается по-другому.
Если юзера всего два то и переключаться будет во второй, хотя ты тут прав - это неграмотно было бы в плане реализации.Какое по-твоему должно быть поведение у утилиты tscon? Неопределённое.
LogonUserA functionЭто как?
How to Log Off the Current Userак выйти из одной учетной записи
LOGOFF "ID сессии" /server:"имя пк"
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?