Запросите Windows Vista повышение контроля учётных записей, если путь защищен?

Вам нужно ввести «return false» в конец функции, как показано ниже

var touchtime = 0;
$('.dbclickopen').click(function() {
    if(touchtime == 0) {
        //set first click
        touchtime = new Date().getTime();
    } else {
        //compare first click to this click and see if they occurred within double click threshold
        if(((new Date().getTime())-touchtime) < 800) {
            //double click occurred
            touchtime = 0;
            window.location = this.href;
        } else {
            //not a double click so set as a new first click
            touchtime = new Date().getTime();
        }
    }
    return false;
});
27
задан Kiquenet 13 October 2015 в 08:22
поделиться

6 ответов

Лучший способ обнаружить, если они неспособны выполнить действие, состоит в том, чтобы делать попытку его и поймать UnauthorizedAccessException.

Однако как DannySmurf правильно указывает , можно только поднять COM-объект или разделить процесс.

существует демонстрационное приложение в рамках Windows SDK Cross Technology Samples, названного Демонстрация контроля учётных записей . Это демонстрационное приложение показывает метод выполняющихся действий с поднятым процессом. Это также демонстрирует, как узнать, является ли пользователь в настоящее время администратором.

26
ответ дан Community 28 November 2019 в 05:20
поделиться

Запрос повышения середина выполнения требует что Вы также:

  1. Использование, которым управляет COM, это поднято, который поднимет подсказку
  2. , Запускают второй процесс, который поднят от запуска.

В.NET, в настоящее время нет никакого способа поднять рабочий процесс; необходимо сделать одну из вещей хакерства выше, но все, что делает, дают пользователю появление, что текущий процесс поднимается.

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

16
ответ дан TheSmurf 28 November 2019 в 05:20
поделиться

Можно хотеть уведомить пользователя, что путь защищен, и попросите, чтобы они произвели файл к "более безопасной" области. Таким образом, для Вашего приложения не будет нужно повышение. Я уверен, что это зависит от Ваших пользователей и что Вы пытаетесь сделать, однако я не думаю, что это слишком много, чтобы любезно позволить пользователю знать, что Вы не чувствуете хорошо дамп xyz в папку Windows/System32.

1
ответ дан Brian Leahy 28 November 2019 в 05:20
поделиться

Если Ваш вторичный диск имеет свои собственные полномочия файла, как говорят, что у Вас есть другая копия окон, установленных на нем. Это запросит.

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

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

Примечание: это действительно воняет нет никакого .net способа попросить разрешение, возможно, p/invoke win32 api...?

-1
ответ дан Brian Leahy 28 November 2019 в 05:20
поделиться

UAC может повышать уровень объекта на основе их GUID, это (теоретически) означает, что любой класс с GUID может быть повышен. UACDemo также должен показать, как это сделать

-1
ответ дан 28 November 2019 в 05:20
поделиться

Не уверен, что это поможет вам, но вы можете взглянуть на это сообщение в блоге:

http://haishibai.blogspot.com/2010/01/tiy-try-out- windows-7-uac-using-c-part_26.html

3
ответ дан 28 November 2019 в 05:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: