Приложение WPF (XBAP), которому не доверяют на некоторых машинах, получает запрос и может запустить приложение - PullRequest
2 голосов
/ 03 января 2012

У меня проблема с файлом WPF, который работает неправильно. На некоторых машинах запускается запрос безопасности и нажатие кнопки ОК позволяет приложению нормально работать. но на других машинах (некоторые с идентичной настройкой, потому что на всех сторонах нашей машины все образы одинаковы) не появляется сообщение о безопасности, просто «Доверие не предоставлено». Я разместил журнал ниже. Я пробовал такие вещи, как, но не ограничиваясь этим, передать его непосредственно в iis, в местоположение файла и переместить его, (все с использованием clickOnce). У меня есть полные разрешения, я проверил подпись и несоответствие, с паролем и паролем. *

У меня нет возможности изменять настройки IE для доверенных сайтов и т. П. (Но я не думаю, что это проблема, потому что машины, которые работают, и те, которые не работают, должны иметь одинаковые настройки )

Буду рад любой помощи. Спасибо.

PLATFORM VERSION INFO
    Windows             : 5.1.2600.196608 (Win32NT)
    Common Language Runtime     : 4.0.30319.239
    System.Deployment.dll       : 4.0.30319.1 (RTMRel.030319-0100)
    clr.dll             : 4.0.30319.239 (RTMGDR.030319-2300)
    dfdll.dll           : 4.0.30319.1 (RTMRel.030319-0100)
    dfshim.dll          : 4.0.31106.0 (Main.031106-0000)

SOURCES
    Deployment url          : http://***.***.***.***/AutoData/AntiRoom/TestManagement.xbap
    Application url         : http://***.***.***.***/AutoData/AntiRoom/Application%20Files/TestManagement_1_0_0_25/TestManagement.exe.manifest

IDENTITIES
    Deployment Identity     : TestManagement.xbap, Version=1.0.0.25, Culture=en, PublicKeyToken=cbf2bb8ca25cd6ff, processorArchitecture=msil
    Application Identity        : TestManagement.exe, Version=1.0.0.25, Culture=en, PublicKeyToken=cbf2bb8ca25cd6ff, processorArchitecture=msil, type=win32

APPLICATION SUMMARY
    * Online only application.
    * Browser-hosted application.

ERROR SUMMARY
    Below is a summary of the errors, details of these errors are listed later in the log.
    * An exception occurred while determining trust. Following failure messages were detected:
        + User has refused to grant required permissions to the application.
    * An exception occurred while downloading the application. Following failure messages were detected:
        + The AssertApplicationRequirements method failed. The application cannot be committed.

COMPONENT STORE TRANSACTION FAILURE SUMMARY
    No transaction error was detected.

WARNINGS
    There were no warnings during this operation.

OPERATION PROGRESS STATUS
    No phase information is available.

ERROR DETAILS
    Following errors were detected during this operation.
    * [01/03/2012 10:30:58 AM] System.Deployment.Application.TrustNotGrantedException (Unknown subtype)
        - User has refused to grant required permissions to the application.
        - Source: System.Deployment
        - Stack trace:
            at System.Deployment.Application.ApplicationTrust.RequestTrust(SubscriptionState subState, Boolean isShellVisible, Boolean isUpdate, ActivationContext actCtx, TrustManagerContext tmc)
            at System.Deployment.Application.DeploymentManager.DetermineTrustCore(Boolean blocking, TrustParams tp)
            at System.Deployment.Application.DeploymentManager.DetermineTrust(TrustParams trustParams)
            at System.Deployment.Application.InPlaceHostingManager.AssertApplicationRequirements(Boolean grantApplicationTrust)
            at System.Deployment.Application.InPlaceHostingManager.AssertApplicationRequirements()
            at MS.Internal.AppModel.XappLauncherApp.AssertApplicationRequirementsAsync(Object unused)
    * [01/03/2012 10:30:58 AM] System.Deployment.Application.DeploymentException (Unknown subtype)
        - The AssertApplicationRequirements method failed. The application cannot be committed.
        - Source: System.Deployment
        - Stack trace:
            at System.Deployment.Application.DeploymentManager.WaitForAssertApplicationRequirements()
            at System.Deployment.Application.DeploymentManager.SynchronizeCore(Boolean blocking)
            at System.Deployment.Application.DeploymentManager.SynchronizeAsyncWorker()

COMPONENT STORE TRANSACTION DETAILS
    No transaction information is available.

1 Ответ

7 голосов
/ 03 января 2012

Вот скрипт, который я использую, чтобы все XBAP в нашей внутренней сети работали как Full Trust. Обычно я помещаю это в пакетный файл и отправляю пользователям ссылку на .bat, если они пишут мне об ошибках полного доверия

%systemroot%\Microsoft.NET\Framework\v2.0.50727\CasPol -q -machine -addgroup All_Code -url http://InternalWebServer/* FullTrust -n XBAPSecurity -polchgprompt off

Просто замените там, где написано InternalWebServer, на какой-либо корневой каталог вашего внутреннего веб-сервера

...