Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.76/34: Рейтинг темы: голосов - 34, средняя оценка - 4.76
0 / 0 / 2
Регистрация: 12.09.2012
Сообщений: 91

Запуск приложения от имени другого пользователя через BAT файл, с сохранением путей для Log & INI файлов

08.12.2019, 14:13. Показов 6608. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Запуск приложения от имени другого пользователя через BAT-файл, с сохранением путей для Log & INI файлов.

Проблема: На ПК имеется два пользователя под системой Windows 7 (x64).

Необходимое ПО (SCADA-система с OPC технологиями (x86)) настроено под профилем "Пользователь 1".

Пользователи со SCADA-системой работают под настроенным профилем "Пользователь 2".

Запуск ПО (SCADA-система) происходит через BAT-файл с ссылкой на RunAS.exe

При работе ПО введет логирование, а при открытии определенных модулей системы подзагрузку настроек с INI-файлов.

Но как оказалось ПО ищет данные файлы не в папке запуска .exe ... А непосредственно в системной папке Windows.

В той папке где находится системная утилита RunAS.exe

Windows - System32 - SysWoW64

Как можно решить данную проблему?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.12.2019, 14:13
Ответы с готовыми решениями:

Запуск стороннего приложения от имени другого пользователя
Доброго времени суток. Пишу программу которая должна проверять установленость драйверов при помощи devcon-а и ещё некоторые программы на...

Файл pgpass, запуск psql от имени другого пользователя без ввода пароля
Написал скрипт на питоне, который выдирает с базы данных информацию. Так как линукс сервер рабочий, начальство не разрешило устанавливать...

Запуск программы от имени администратора через bat-файл
Добрый вечер! Необходимо запустить программу от имени администратора, находясь под учётной записью пользователя (User2). Я создал...

16
 Аватар для volodin661
6627 / 2258 / 346
Регистрация: 10.12.2013
Сообщений: 7,809
08.12.2019, 14:27
да как обычно, с помощью link / shortcuts
https://ss64.com/nt/mklink.html
0
0 / 0 / 2
Регистрация: 12.09.2012
Сообщений: 91
08.12.2019, 14:35  [ТС]
volodin661, Не могли ли Вы..подробнее рассказать про данных механизм решения проблемы?
0
 Аватар для volodin661
6627 / 2258 / 346
Регистрация: 10.12.2013
Сообщений: 7,809
08.12.2019, 14:44
https://ru.wikipedia.org/wiki/... 0%BA%D0%B0
0
0 / 0 / 2
Регистрация: 12.09.2012
Сообщений: 91
08.12.2019, 16:44  [ТС]
volodin661, Не совсем понятно. Разобрались как делать символические ссылки с помощью MKLink. Только не понятно в какой последовательности. Необходимо создавать ссылку на исполняемый exe файл или на рабочий каталог данного ПО? Ведь потом мы используем BAT файл с ссылкой на RunAs, а также путь к исполняемому файлу exe. Вот тут и запутались, путь на исполняемый файл в батнике должен быть на ссылку, на оригинальные папку источник, или просто на exe без указания пути, при условии что батник в той же папке что и exe.

Добавлено через 10 минут
volodin661, Или имелось ввиду создать ссылки на все файлы появляющиеся в Windows - SysWOW64 ??
Т.е. если более 10 файлов то они все будут продублированы (ссылки)... Может можно решить данную проблему другим способом, не используя вообще перенаправление и системный каталог?
0
 Аватар для volodin661
6627 / 2258 / 346
Регистрация: 10.12.2013
Сообщений: 7,809
08.12.2019, 16:44
У каждого запущенного процесса(приложения) в системе есть атрибут "Рабочая директория",
то есть, то место в файловой системе, где он ищет файл, если у файла не задан абсолютный путь.

Таким образом, если процесс(приложение) ищет файлы в SysWOW64 и не обнаруживает их там по причине нахождения последних в другом месте, значит именно в директории SysWOW64 надо сделать ссылку на файл, который находится в другом месте.
0
0 / 0 / 2
Регистрация: 12.09.2012
Сообщений: 91
08.12.2019, 16:47  [ТС]
volodin661, Мы ищем способ чтобы программа не искала и не сохраняла свои данные в системной папке SysWOW64, а использовала для этих целей свою рабочую папку где и находится основной exe. При условии что программа запускается от имени другого пользователя.

Этой проблемы не наблюдается при запуске программы под "родным" пользователем на данном ПК.
0
 Аватар для volodin661
6627 / 2258 / 346
Регистрация: 10.12.2013
Сообщений: 7,809
08.12.2019, 16:51
Ну, она и не будет их там ( в SysWOW64) сохранять, для этого ссылка и нужна. Будут сохраняться в том месте, на который указывает ссылка, прозрачно для 'обманутого' приложения.
0
0 / 0 / 2
Регистрация: 12.09.2012
Сообщений: 91
08.12.2019, 16:54  [ТС]
volodin661, Но в этом то и проблема что при удалении или изменении файлов с SysWOW64 то они будут изменены и в родной папке. Стоит разработчику внести изменения (а это часто происходит), например даже переименовать файл...и всё сначала...
0
 Аватар для volodin661
6627 / 2258 / 346
Регистрация: 10.12.2013
Сообщений: 7,809
08.12.2019, 17:10
не на исполняемые файлы надо делать link, а на открываемые ими INI-файлы.

Я так понял, проблема была, ведь, в них ?

Цитата Сообщение от Jil Посмотреть сообщение
При работе ПО введет логирование, а при открытии определенных модулей системы подзагрузку настроек с INI-файлов.
Но как оказалось ПО ищет данные файлы не в папке запуска .exe ... А непосредственно в системной папке Windows.
0
0 / 0 / 2
Регистрация: 12.09.2012
Сообщений: 91
08.12.2019, 17:12  [ТС]
volodin661, Да но вся проблема из-за использования системной утилиты Runas.exe... это она меняет путь для некоторых файлов программы
0
 Аватар для volodin661
6627 / 2258 / 346
Регистрация: 10.12.2013
Сообщений: 7,809
08.12.2019, 18:10
powershell:
PowerShell
1
Start-Process scada.exe -WorkingDirectory putDesiredWorkingDirHere -Verb runAs

cmd:
Windows Batch file
1
runas /netonly /u:domain\user "cmd /c \"cd \"%CD%\" ^& scada.exe"
Добавлено через 3 минуты
PS: эти строчки кода для powershell и cmd - это первый же результат гугления runas
0
0 / 0 / 2
Регистрация: 12.09.2012
Сообщений: 91
08.12.2019, 18:11  [ТС]
volodin661, Данный вариант пробовал. Не запускается приложение.

Windows Batch file
1
 runas /user:Admin /savecred "cmd /c \"cd \"%CD%\" ^& scada.exe"
Нет ошибок. Просто не запускается.
0
 Аватар для volodin661
6627 / 2258 / 346
Регистрация: 10.12.2013
Сообщений: 7,809
08.12.2019, 18:13
на бэкслэши перед двойными кавычками внимание обратил?
0
0 / 0 / 2
Регистрация: 12.09.2012
Сообщений: 91
08.12.2019, 18:16  [ТС]
volodin661, Обратил... Выше отредактировал пост....
0
 Аватар для volodin661
6627 / 2258 / 346
Регистрация: 10.12.2013
Сообщений: 7,809
08.12.2019, 18:26
И ничего ?

Ну так вариант с powershell есть. Я бы сказал, что он даже основной. Там надо -Verb RunAsUser
0
0 / 0 / 2
Регистрация: 12.09.2012
Сообщений: 91
08.12.2019, 18:30  [ТС]
volodin661, Нет с cmd не работает. При запуске появляется на мгновение окно cmd и закрывается. Запуск программы не происходит. При запуске в данном окне нет ошибок, только строка "попытка запуска.....(путь в рабочую папку)..."
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.12.2019, 18:30
Помогаю со студенческими работами здесь

Запуск Java приложения, через файл *.bat
Здравствуйте, подскажите какие строки нужно прописать в *.bat файле для запуска Java приложения через прокси!? Спасибо!

Запуск консольного приложения и ввод параметров через bat-файл
Здравствуйте! Имеется консольная программа в которую вводится 46 значений. По своей невнимательности часто пропускаю/ввожу с ошибками....

Запуск от имени другого пользователя " Не удается найти указанный файл"
Стоит Windows 7 Корпоративная. Есть пользователь , который сидит под сетевой учеткой домена с правами пользователя. Из под учетки...

Запуск от имени другого пользователя
Меня задобала вечно вылезающая панель. "Запуск от имени другого пользователя". Почти при каждой попытке открыть любую программу. Ну...

Запуск от имени другого пользователя
Привет!!! Сегодня решил установить uTorrent. Скачал установщик с официального сайта. И после открытия вижу вот это Как решить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru