Вам нужно ввести «return false» в конец функции, как показано ниже
blockquote>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; });
Лучший способ обнаружить, если они неспособны выполнить действие, состоит в том, чтобы делать попытку его и поймать UnauthorizedAccessException
.
Однако как DannySmurf правильно указывает , можно только поднять COM-объект или разделить процесс.
существует демонстрационное приложение в рамках Windows SDK Cross Technology Samples, названного Демонстрация контроля учётных записей . Это демонстрационное приложение показывает метод выполняющихся действий с поднятым процессом. Это также демонстрирует, как узнать, является ли пользователь в настоящее время администратором.
Запрос повышения середина выполнения требует что Вы также:
В.NET, в настоящее время нет никакого способа поднять рабочий процесс; необходимо сделать одну из вещей хакерства выше, но все, что делает, дают пользователю появление, что текущий процесс поднимается.
единственный способ, которым я могу думать, чтобы проверить, является ли путь поднятым контролем учётных записей, состоит в том, чтобы попытаться сделать некоторую тривиальную запись к нему, в то время как Вы находитесь в неподнятом состоянии, ловите исключение, поднимаете и попробовали еще раз.
Можно хотеть уведомить пользователя, что путь защищен, и попросите, чтобы они произвели файл к "более безопасной" области. Таким образом, для Вашего приложения не будет нужно повышение. Я уверен, что это зависит от Ваших пользователей и что Вы пытаетесь сделать, однако я не думаю, что это слишком много, чтобы любезно позволить пользователю знать, что Вы не чувствуете хорошо дамп xyz в папку Windows/System32.
Если Ваш вторичный диск имеет свои собственные полномочия файла, как говорят, что у Вас есть другая копия окон, установленных на нем. Это запросит.
Это также запросит, если файлы будут использоваться, который иногда происходит, если у Вас есть Windows Explorer, открытый для того же каталога и файла, выбранного с программой предварительного просмотра файла, отображающей содержание... существуют некоторые другие причуды, но обычно Вас просят относительно разрешения файла, если файл используется, или это - чувствительный каталог.
при цикличном выполнении FolderBrowserDialog удостоверьтесь, что уведомили пользователя, почему, таким образом, они не рассердились на приложение.
Примечание: это действительно воняет нет никакого .net способа попросить разрешение, возможно, p/invoke win32 api...?
UAC может повышать уровень объекта на основе их GUID, это (теоретически) означает, что любой класс с GUID может быть повышен. UACDemo также должен показать, как это сделать
Не уверен, что это поможет вам, но вы можете взглянуть на это сообщение в блоге:
http://haishibai.blogspot.com/2010/01/tiy-try-out- windows-7-uac-using-c-part_26.html