Error - can not create enum dynamically
-
Hi All, I am trying to create Enum Dynamically. When I try to Save dll It gives me error - "Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))" I am also writing code snippet :- AppDomain currentDomain = AppDomain.CurrentDomain; AssemblyName aName = new AssemblyName("TempAssembly"); AssemblyBuilder ab = currentDomain.DefineDynamicAssembly(aName, AssemblyBuilderAccess.RunAndSave); ModuleBuilder mb = ab.DefineDynamicModule(aName.Name, aName.Name + ".dll"); EnumBuilder eb = mb.DefineEnum("Elevation", TypeAttributes.Public, typeof(int)); eb.DefineLiteral("Low", 0); eb.DefineLiteral("High", 1); Type finished = eb.CreateType(); ab.Save(aName.Name + ".dll"); I got error at last line. Please help me. your help is appreciated. Regards, Sunil Dhiman
-
Hi All, I am trying to create Enum Dynamically. When I try to Save dll It gives me error - "Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))" I am also writing code snippet :- AppDomain currentDomain = AppDomain.CurrentDomain; AssemblyName aName = new AssemblyName("TempAssembly"); AssemblyBuilder ab = currentDomain.DefineDynamicAssembly(aName, AssemblyBuilderAccess.RunAndSave); ModuleBuilder mb = ab.DefineDynamicModule(aName.Name, aName.Name + ".dll"); EnumBuilder eb = mb.DefineEnum("Elevation", TypeAttributes.Public, typeof(int)); eb.DefineLiteral("Low", 0); eb.DefineLiteral("High", 1); Type finished = eb.CreateType(); ab.Save(aName.Name + ".dll"); I got error at last line. Please help me. your help is appreciated. Regards, Sunil Dhiman
Is it your web application ? if yes then where the application is hosted ? Do you have the write permission on that dll ?
Abhijit Jana | Codeproject MVP Web Site : abhijitjana.net Don't forget to click "Good Answer" on the post(s) that helped you.
-
Hi All, I am trying to create Enum Dynamically. When I try to Save dll It gives me error - "Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))" I am also writing code snippet :- AppDomain currentDomain = AppDomain.CurrentDomain; AssemblyName aName = new AssemblyName("TempAssembly"); AssemblyBuilder ab = currentDomain.DefineDynamicAssembly(aName, AssemblyBuilderAccess.RunAndSave); ModuleBuilder mb = ab.DefineDynamicModule(aName.Name, aName.Name + ".dll"); EnumBuilder eb = mb.DefineEnum("Elevation", TypeAttributes.Public, typeof(int)); eb.DefineLiteral("Low", 0); eb.DefineLiteral("High", 1); Type finished = eb.CreateType(); ab.Save(aName.Name + ".dll"); I got error at last line. Please help me. your help is appreciated. Regards, Sunil Dhiman
The code seems to be fine. It should work. The problem definitely is the FileIOPermission. Check if
ASP.NET
has write permission to the folder where the dll is created. :(Abhishek Sur
My Latest Articles **Create CLR objects in SQL Server 2005 C# Uncommon Keywords Read/Write Excel using OleDB
**Don't forget to click "Good Answer" if you like to.