Íme a legújabb tipp arra, hogyan toljunk ki felebarátainkkal: küldjük neki az anyagainkat XPS formátumban ÉS adjunk a fájlnak ékezetes fájlnevet. Míg egy ékezet nélküi fájlt simán megnyitott nálam Vista alatt az IE-be integrálódó XPS viewer, addig egy á.xps vagy egy é.xps fájl így nyílt meg:
Látszik, hogy nehezen tanulok, mert először a fájl tulajdonságlapján kerestem a megoldást, az ugyanis CHM fájlok esetén már többször megkeserítette az életemet, de aztán ráböktem a More Information linkre és kitárult előttem a világ, de inkább csak a lényeget másolom ide a négyszer ilyen hosszú, teljes stack trace-t és referencia listát tartalmazó hibaüzenetből:
System.Security.SecurityException: Request for the permission of type 'System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.
at System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet)
at System.Security.CodeAccessPermission.Demand()
at System.Runtime.InteropServices.RuntimeEnvironment.GetRuntimeDirectory()
at System.Uri.GetConfig(UriIdnScope& idnScope, Boolean& iriParsing)
at System.Uri.InitializeUriConfig()
at System.Uri.InitializeUri(ParsingError err, UriKind uriKind, UriFormatException& e)
at System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind)
at System.Uri..ctor(SerializationInfo serializationInfo, StreamingContext streamingContext)
at MS.Internal.AppModel.ApplicationProxyInternal.Run(InitData initData)
...
A System.Uri miatt kezdtem el gyanakodni a fájl nevére és láss csodát, bejött. Tényleg mennyi köze van a SecurityExceptionhöz...
Ennyire fogynak a magyarok Redmondban?!
Kiegészítés 2007.10.30:
Nagy Levente barátom jelezte, hogy neki működik, így hát kipróbáltam más gépeken is, íme az összesített eredmény:
- Windows Vista RTM: OK (by Levi)
- Windows Vista RTM+SP1 béta: OK
- Windows XP+minden patch: OK
- Windows Vista RTM+Visual Studio 2008 és .NET 3.5 RC: hiba
Azt is kizárhatjuk, hogy a konkrét XPS fájllal van probléma, próbáltam másokkal is. Szóval lehet, hogy a hiba a Visual Studio 2008 RC változatára korlátozódik. Köszi a tippet, Levi!