Asp.Net - Използване на Mailto по време на отстраняване на грешки на LocalHost

Имам следния ред код в моето Asp.Net приложение:

<a href="/bgmailto:email_address">Click To Email</a>

Моята компания е използвала точно този ред код (където „email_address“ е имейлът на лицето), за да позволи на потребителите да изпращат имейли на хората и работи върху нашите внедрени приложения на уеб сървъра. Въпреки това, когато щракна, за да изпратя имейл, докато отстранявам грешки (Visual Studio 2010, LocalHost), получавам следната грешка:

въведете описание на изображението тук

Някой знае ли на какво се дължи тази грешка?


person Eric R.    schedule 21.09.2012    source източник
comment
Това не е самият ред код - mailto: просто извиква приложението за поща по подразбиране. Outlook е малко необичаен с това, че когато работи с mailto: връзки, диалогът за писане на имейл е модален - нямам представа защо. Възможно е, че ако браузърът е бил стартиран от VS и VS работи с идентификационни данни, различни от вашите, прозорецът на браузъра може да няма разрешения за извикване на Outlook, но не съм сигурен защо това би се случило. Като тест опитайте да стартирате VS като администратор (Щракнете с десния бутон или Shift и щракнете с десния бутон върху иконата в зависимост от това къде се намира). Това може поне да стесни възможностите   -  person Basic    schedule 21.09.2012
comment
Хммм прав си @Basic! Ако стартирам като администратор, връзката изглежда работи. Освен това, когато сменя браузъра, в който се отстраняват грешки, докато не се изпълнява като администратор, връзката работи. Така че трябва да има нещо за браузъра по подразбиране, който VS2010 използва при отстраняване на грешки.   -  person Eric R.    schedule 21.09.2012
comment
‹a href=mailto:email_address target=_blank›Щракнете за имейл‹/a› Опитайте това, ако работи   -  person A Developer    schedule 21.09.2012
comment
Използвате ли удостоверяване в сайта си, по-конкретно, използвате ли Active Directory/интегрирано Windows Auth? Ако е така, страницата приема определени атрибути (от страна на сървъра) и работи като посещаващ потребител, а не като уеб сървър. Не мислех, че същото се прилага от страна на клиента, но трябва да призная, че никога не съм го тествал. Кой браузър има проблеми? IE? И с каква версия на office/outlook имаме работа?   -  person Basic    schedule 22.09.2012


Отговори (1)


{Не е отговор, но е твърде дълъг за коментар}

Не знам какво конкретно причинява проблема, но изглежда вероятно браузърът работи с леко променени разрешения, когато се стартира от VS и следователно няма необходимите привилегии за стартиране на Outlook.

Може да успеете да откриете проблема с помощта на инструмент като ProcMon от SysInternals (сега Microsoft). Всъщност препоръчвам ви да получите целия пакет от инструменти, тъй като има някои наистина удобни .

Във всеки случай стартирайте procmon и добавете филтър, така че да виждате активност само по Outlook. Ще има много записи, но в даден момент, вероятно точно преди да се покаже съобщението за грешка, трябва да видите някои записи, маркирани с FAILED и някои подробности за разрешенията. Това поне ще ви позволи да идентифицирате какво - по-конкретно - outlook се е опитвал да осъществи достъп, когато е срещнал проблема с разрешенията и може също така да ви позволи да идентифицирате дали използваните идентификационни данни са тези, които бихте очаквали (ваши).

person Basic    schedule 21.09.2012
comment
Стартирах инструмента и никакви записи не се върнаха като НЕУСПЕШНИ. Няколко записа се върнаха като NO NAME FOUND при натискане на регистъра. Иначе всички бяха успешни. - person Eric R.; 24.09.2012
comment
Може да искате да проучите No name founds, но те не са особено необичайни - доста често приложението ще се опита да прочете, вместо първо да провери дали съществува ключ, тъй като това е една операция, а не две. Това означава, че няма причина за сигурност на ниво ОС, поради която се проваля (Няма проблем с достъпа до reg/file system). Изглежда, че има някаква логическа проверка, която се случва в Outlook, която се проваля и нарича това грешка на разрешенията. Страхувам се, че не знам защо/какво може да е. Можете да опитате да прикачите дебъгер, но без източника би било кошмар. - person Basic; 24.09.2012