Назад | Перейти на главную страницу

Приложение не запускается для администраторов домена

У меня есть интересная проблема, над которой я работаю уже 2 дня.

У меня есть приложение Connectedhip Warehouse Shipping версии 6.5, работающее на Windows 7. Я был в контакте со службой поддержки клиентов, и они, к сожалению, не смогли найти решения, кроме как сделать каждого локальным администратором.

Когда я запускаю CSWShipping.exe, расположенный в папке «C: \ Program Files (x86) \ ConnectShip \ Progistics \ CSW \ ShippingApplication \ CSWShipping.exe»

Интересно то, что когда я установил приложение в качестве администратора домена, я смог запустить его, и он работал нормально, учетная запись пользователя, которую я использовал для установки приложения, не является локальным администратором на коробке, и приложение по-прежнему работает нормально.

То, что я пробовал, но не работает:

Когда я пытаюсь запустить приложение, я не получаю никаких предупреждений UAC

В программе просмотра событий ошибок нет.

Я в растерянности и действительно не хочу устанавливать кучу стороннего программного обеспечения.

Вы можете отслеживать, что делает программа, используя специальный диагностический инструмент под названием Process Monitor от Microsoft, и оттуда потенциально определять, что не работает.

https://technet.microsoft.com/en-us/sysinternals/processmonitor.aspx

Я использовал этот инструмент от Марка Руссиновича примерно 12-15 лет, когда имел дело с проблемами с правами пользователей, пытаясь запустить грубые старые программы Windows 3.1 / 95/98, которые требуют чрезмерных разрешений для файлов / реестра в NTFS и Windows 2000, XP, а потом Windows 7 с UAC.

Хотя будьте осторожны, этот инструмент извергает тысячи строк данных о состоянии из каждой запущенной системной программы, когда вы ее запускаете, поэтому часто бывает полезно пройти вниз по списку и исключить почти все другие запущенные программы, которые он обнаруживает, которые вам не нужны, перед запуском программы, которую вы хотите протестировать.

Ссылка, мой собственный пост на SysInternals об этом: http://forum.sysinternals.com/exclude-all-processes-currently-in-filter_topic27483.html

Сложность не сводится к тому, что вам не хватает сообщений, которые вы сказали ему подавлять из других запущенных системных программ, но при этом вы не забиты тысячами строк нерелевантных данных журнала.

Явное игнорирование всех сообщений «УСПЕШНО» также может помочь вам легче находить ошибки. Хотя это очень продвинутый инструмент, и некоторые вещи, которые он сообщает, не являются действительно серьезными ошибками, например, «REPARSE» или «END OF FILE», поэтому расшифровать вывод может быть сложно, и, возможно, он вам не поможет. вообще, если вы не можете понять, как читать его вывод журнала.

Мне удалось решить проблему, выполнив следующие действия.

Отключить UAC

Создан стандартный пользовательский отправитель в AD

добавлен домен / shippinguser в качестве локального администратора на shippingpc

добавлен пароль пользователя для сохраненных учетных данных.

создан ярлык:

%systemroot%\system32\runas.exe /user:domain\shippinguser /savecred "C:\Program Files (x86)\ConnectShip\Progistics\CSW\ShippingApplication\CSWShipping.exe"

Поместите ярлык на рабочий стол всех пользователей на mm-dt-ship01

Короткий запускает CSWShipping.exe как локальный администратор на компьютере, используя domain \ shippinguser.

Когда пользователи дважды щелкают ярлык, им может быть предложено ввести пароль.

Пользователь должен будет ввести пароль только один раз.

Я настроил GPO на запрет локального входа в систему для этого пользователя на любом ПК в домене.

Я никогда не слышал об этом программном обеспечении, поэтому я погуглил. К сожалению, по моему опыту, некоторые из этих специализированных программных пакетов для очень специфических рынков ... ну.

Фактическое сообщение об ошибке - это ошибка платформы .NET: инициализатор типа сгенерировал исключение. Это может быть много всего, но я собираюсь предположить, что у этих пользователей нет разрешений на доступ к необходимой сборке (но есть у локальных администраторов).

Ваш выбор - искать связанные файлы и предоставлять пользователю, запускающему приложение, права на эти файлы, или предоставлять этому пользователю права локального администратора. Поскольку вы предоставили каталог всем, возможно, приложение поместило что-то в Windows (или в другой каталог).

Удачи!