2013-07-02 17 views
8

Jest to aplikacja kliencka dla IE 11 na Windows 8.1 (Preview)App_Browsers plik definicji dla IE 11

Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; Touch; rv:11.0) like Gecko 

szukam pliku .browser dla obu folderze App_Browsers w mojej aplikacji lub C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Config \ Browsers, aby poprawnie wykryć IE11.

Ponieważ środek użytkownik zmienił się z „MSIE” zawierający takie jak ten IE10 agenta użytkownika

Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0; Touch) 

próbowałem około 100 odmian bez powodzenia.

+1

Dlaczego potrzebny jest plik .browser? Wędzenie przeglądarki jest znane z łamania zabezpieczeń, a .Net jest jeszcze bardziej znany z tego, że przeglądarka źle wyszukuje (to był cały powód, dla którego zmieniliśmy ciąg znaków UA w Operze, gdy tam pracowaliśmy, ponieważ wykryła Operę 10 jako Operę 1). Jeśli chcesz użyć podsłuchiwania przeglądarki, prawdopodobnie istnieje inny sposób. –

+0

@DavidStorey: Jednym z powodów może być to, że .NET określa, co działa dla klienta, wykrywając przeglądarkę. Kiedy IIS nie rozpoznaje IE11, nie zezwala na pliki cookie sesji dla jednej. –

Odpowiedz

0

Ten sam problem występuje w IE11 na IIS.

Była oficjalna łatka MS dla IE10, ale wydaje się, że naprawiła ją tylko dla tej jawnej wersji, a nie dla przyszłych (i, jakby oczekiwanych) rewizji przeglądarki.

Scott Hanselman dostarczył lokalny projekt dla IE10 i być może zaktualizuje go do IE11.

Here jest link do patcha dla IE10 w .NET/IIS

NuGet package dla IE 10

Jeśli chodzi o komentarz na temat nie potrzebuje użyć pliku .browsers, I całkowicie zgadzam się jednak, ten problem jest (wierzę) problem z IIS/.NET 4

Cheers

Andy

+0

Uważam, że http://support.microsoft.com/kb/2836947 jest zaktualizowaną wersją wcześniejszej łaty. – EricLaw

7

stworzyłem plik zawierający

<browsers> 

    <browser id="IE11" parentID="Mozilla"> 
     <identification> 
      <userAgent match="Trident\/7.0; rv:(?'version'(?'major'\d+)(\.(?'minor'\d+)?)(?'letters'\w*))(?'extra'[^)]*)" /> 
      <userAgent nonMatch="IEMobile" /> 
     </identification> 
     <capture> 
      <userAgent match="Trident/(?'layoutVersion'\d+)" /> 
     </capture> 
     <capabilities> 
      <capability name="browser" value="IE" /> 
      <capability name="layoutEngine" value="Trident" /> 
      <capability name="layoutEngineVersion" value="${layoutVersion}" /> 
      <capability name="extra" value="${extra}" /> 
      <capability name="isColor" value="true" /> 
      <capability name="letters" value="${letters}" /> 
      <capability name="majorversion" value="${major}" /> 
      <capability name="minorversion" value="${minor}" /> 
      <capability name="screenBitDepth" value="8" /> 
      <capability name="type" value="IE${major}" /> 
      <capability name="version" value="${version}" /> 
     </capabilities> 
    </browser> 

    <!-- Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11,0) like Gecko --> 
    <browser id="IE110" parentID="IE11"> 
     <identification> 
      <capability name="majorversion" match="11" /> 
     </identification> 
     <capabilities> 
      <capability name="ecmascriptversion" value="3.0" /> 
      <capability name="jscriptversion" value="5.6" /> 
      <capability name="javascript" value="true" /> 
      <capability name="javascriptversion" value="1.5" /> 
      <capability name="msdomversion" value="${majorversion}.${minorversion}" /> 
      <capability name="w3cdomversion" value="1.0" /> 
      <capability name="ExchangeOmaSupported" value="true" /> 
      <capability name="activexcontrols" value="true" /> 
      <capability name="backgroundsounds" value="true" /> 
      <capability name="cookies" value="true" /> 
      <capability name="frames" value="true" /> 
      <capability name="javaapplets" value="true" /> 
      <capability name="supportsCallback" value="true" /> 
      <capability name="supportsFileUpload" value="true" /> 
      <capability name="supportsMultilineTextBoxDisplay" value="true" /> 
      <capability name="supportsMaintainScrollPositionOnPostback" value="true" /> 
      <capability name="supportsVCard" value="true" /> 
      <capability name="supportsXmlHttp" value="true" /> 
      <capability name="tables" value="true" /> 
      <capability name="supportsAccessKeyAttribute" value="true" /> 
      <capability name="tagwriter" value="System.Web.UI.HtmlTextWriter" /> 
      <capability name="vbscript" value="true" /> 
     </capabilities> 
    </browser> 

</browsers> 

i pracował dla mnie. Na podstawie odpowiedzi Sistemas-infoe na to pytanie: doPostback failing in IE 11+ Windows 8.1

+0

zmienić "IE110" parentID = "IE11"> na "IE10" parentID = "IE11"> – anotherdie

+0

Witaj Wprowadzam te zmiany działa na moim komputerze lokalnym (Windows 7 z IE11), ale zmień nie są odzwierciedlane na serwerze (Windows Server 2008 R2). –

Powiązane problemy