webForumDet fria alternativet

Partial trust assembly

.NETur .NET

6 svar · 811 visningar · startad av Uwe

Medlem sedan nov. 2003181 inlägg
Frågan#1

Jag håller på att skapa en site som ska ligga på ett webhotell vars servrar är satta att köra på "Medium trust" vilket gör att man inte kan använda assemblies som gör anrop med "Partial trust". Eftersom jag får följande felmeddelande antar jag att den assembly (iTextSharp) som jag tänkt använda gör just det:

Exception Details: System.Security.SecurityException: That assembly does not allow partially trusted callers.

Jag har sökt lite och sett att någon föreslagit att skapa en wrapper. Wrappern ska då kunna sätta en högre trust-level på koden, men jag har inte fått det att funka. Den såg ut nåt såhär:

[assembly:AllowPartiallyTrustedCallers]
namespace Wrapper
{
    public class PDF
    {
        
        public PDF()
        {

        }
	....

Finns det några bra förlsag på hur det ändå går att använda denna assembly?

/Uwe

Medlem sedan nov. 20011 551 inlägg
#2

Ingen med någon ide? jag sitter i samma knipa :)

Medlem sedan dec. 19996 721 inlägg
#3

Vad gäller just iTextSHarp så finns ju källkoden tillgänglig och man kan kompilera om den med egna trustkrav.

Medlem sedan maj 2003352 inlägg
#4

Var finns källkoden?

Medlem sedan sep. 20011 914 inlägg
#5

Solution:

Dino skrev:

1. Download the source code and samples at
http://www.sharpdevelop.net/OpenSource/SharpZipLib/Download.aspx

2. Unzip and open ICSharpCode.SharpZLib.sln

3. Open the AssemblyInfo.cs file and comment out or remove this section:
#if (CLI_1_0 || NET_1_0 || NET_1_1 || NETCF_1_0 || SSCLI)
[assembly: AssemblyDelaySign(false)]
#if VSTUDIO
[assembly: AssemblyKeyFile("../../ICSharpCode.SharpZipLib.key")]
#elif AUTOBUILD
[assembly: AssemblyKeyFile("ICSharpCode.SharpZipLib.key")]
#else
[assembly: AssemblyKeyFile("../ICSharpCode.SharpZipLib.key")]
#endif
#endif

4. Rebuild the project and use the new ICSharpCode.SharpZipLib.dll file

Medlem sedan maj 2003352 inlägg
#6

Vad ska jag använda "ICSharpCode.SharpZipLib.dll" till?
Ska jag ersätta "itextsharp.dll" med denna?

Medlem sedan maj 2003352 inlägg
#7

Löste det genom att ladda ned källkoden och lägga till raden:

[assembly: AllowPartiallyTrustedCallers]

... och sedan kompilera om.

132 ms totalt · 3 externa anrop · v20260731065814-full.55e59744
129 ms — hämta forumlista (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)