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


12

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

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

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

  • Если я вхожу в систему как пользователь домена, я получаю ошибку во время выполнения -2146233036 (80131534)
  • Если я вхожу в систему как администратор домена, я получаю ошибку во время выполнения -2146233036 (80131534)
  • Если я назначу своего доменного пользователя локальным пользователем, я получу ошибку во время выполнения -2146233036 (80131534)
  • Если я назначу своего пользователя домена локальным администратором, все будет работать нормально.

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

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

  • Изменено разрешение на приложение и папки на «все» и удалено наследование.
  • Изменен режим совместимости для всех пользователей
  • Изменен уровень привилегий «Запускать эту программу от имени администратора» для всех пользователей.
  • Щелкните правой кнопкой мыши запустить от имени администратора.

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

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

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


4
Вам не нужно кучу стороннего программного обеспечения. Вместо этого переключите свое решение для доставки на продукт из этого тысячелетия, который не подведет без прав администратора.
Свен

1
Плохой код более мощный, чем хороший админ.
HopelessN00b

Ответы:


16

Вы можете отслеживать, что делает программа, используя специальный диагностический инструмент под названием 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.

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

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

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

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


15

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

Выключить UAC

Создан стандартный пользователь shippinguser в 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 в качестве локального администратора на компьютере, используя домен \ shippinguser.

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

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

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


13

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

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

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

Удачи!

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.