2016-12-08 3 views
1

Я просто унаследовал приложение C#. В настоящее время имеется запись в его app.manifest, чтобы включить UACПрименение преобразования xml к app.manifest

<requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> 

Каждый раз, когда я отладки построить его в Visual Studio, я получаю приглашение, что «Эта задача требует применения иметь повышенные права доступа». (У меня есть учетная запись администратора, но я не подключаюсь к ней при разработке.)

Есть ли способ применить к нему преобразование xml (например, на web.configs) или сделать app.manifest для режима выпуска ?

ответ

1

Используя пакет SlowCheetah NuGet и сопровождающий его расширение, вы получите то же поведение во всех xml-файлах, что и для web.config.

Обязательно установите/активируйте пакет NuGet, а также расширение Visual Studio. Кроме того, в NuGet существует ряд версий Slow Cheetah - я бы предложил использовать последнюю версию, выпущенную Microsoft - Microsoft.VisualStudio.SlowCheetah.

Подробнее об этом: https://github.com/Microsoft/slow-cheetah

Edit: У меня была долгая борьба, на самом деле получить преобразование работать App.Manifest.xml для моего Sharepoint добавить в проект. Оказывается, файлы, созданные для вас, когда вы используете «Добавить преобразование», не хватает некоторых деталей, которые, если они не включены, приведут к ошибке преобразования (не дают результата). Вот что я сделал:

<!-- Mandatory block in AppManifest transform files: --> 

<App xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform" xmlns="http://schemas.microsoft.com/sharepoint/2012/app/manifest" 
    Name="Not transformed" 
    ProductID="{12345678-0000-0000-0000-123456789123}" 
    Version="0.0.0.0" 
    SharePointMinVersion="0.0.0.0" 
> 
    <Properties> 
    <Title>Not transformed</Title> 
    <StartPage>Not transformed</StartPage> 
    </Properties> 

    <AppPrincipal> 
    <RemoteWebApplication ClientId="*" /> 
    </AppPrincipal> 
</App> 
<!-- 
This block as it is written will cause no transformation whatsoever, but all elements above must be present for any transformation to be applied. 
To transform an entire element along with its text content, add the attribute xdt:Transform="Replace" to the element. This will also replace all 
child elements. 
--> 

Надеюсь, это поможет!

+0

Это относится к файлу app.config, но будет ли оно работать и в файле app.Manifest? – Lareau

+0

Да, но это приносит определенные усилия. Я просто добавил пояснительный пример, который может быть полезен! –

Смежные вопросы