[Windows Phone 7 Development and Hacking] Heathcliff74:
Mango is freakin' annoying! :mad:

I thought it could help if I registered my COM classes in the registry (that would possibly skip some steps in the validation of the dll).

Registry.ClassesRoot.OpenSubKey("TypeLib").CreateSubKey("{44DA0399-A834-4BEA-ABAA-59C7EE2D1ED7}");
Registry.ClassesRoot.OpenSubKey("TypeLib").OpenSubKey("{44DA0399-A834-4BEA-ABAA-59C7EE2D1ED7}").CreateSubKey("1.0");
Registry.ClassesRoot.OpenSubKey("TypeLib").OpenSubKey("{44DA0399-A834-4BEA-ABAA-59C7EE2D1ED7}").OpenSubKey("1.0").CreateSubKey("0");
Registry.ClassesRoot.OpenSubKey("TypeLib").OpenSubKey("{44DA0399-A834-4BEA-ABAA-59C7EE2D1ED7}").OpenSubKey("1.0").OpenSubKey("0").SetValue("Default", "WP7Native01ARM.dll");
Registry.ClassesRoot.OpenSubKey("TypeLib").OpenSubKey("{44DA0399-A834-4BEA-ABAA-59C7EE2D1ED7}").OpenSubKey("1.0").OpenSubKey("0").CreateSubKey("win32");
Registry.ClassesRoot.OpenSubKey("TypeLib").OpenSubKey("{44DA0399-A834-4BEA-ABAA-59C7EE2D1ED7}").OpenSubKey("1.0").OpenSubKey("0").OpenSubKey("win32").SetValue("Default", "WP7Native01ARM.dll");
Registry.ClassesRoot.OpenSubKey("TypeLib").CreateSubKey("{C41E4139-1594-4048-B629-E8BCB0FAE8B0}");
Registry.ClassesRoot.OpenSubKey("TypeLib").OpenSubKey("{C41E4139-1594-4048-B629-E8BCB0FAE8B0}").CreateSubKey("1.0");
Registry.ClassesRoot.OpenSubKey("TypeLib").OpenSubKey("{C41E4139-1594-4048-B629-E8BCB0FAE8B0}").OpenSubKey("1.0").CreateSubKey("0");
Registry.ClassesRoot.OpenSubKey("CLSID").CreateSubKey("{61FA3121-640E-4DD6-B9DE-EE29F3CB12F1}");
Registry.ClassesRoot.OpenSubKey("CLSID").OpenSubKey("{61FA3121-640E-4DD6-B9DE-EE29F3CB12F1}").SetValue("Default", "NativeCommon Class");
Registry.ClassesRoot.OpenSubKey("CLSID").OpenSubKey("{61FA3121-640E-4DD6-B9DE-EE29F3CB12F1}").CreateSubKey("TypeLib");
Registry.ClassesRoot.OpenSubKey("CLSID").OpenSubKey("{61FA3121-640E-4DD6-B9DE-EE29F3CB12F1}").OpenSubKey("TypeLib").SetValue("Default", "{44DA0399-A834-4BEA-ABAA-59C7EE2D1ED7}");
Registry.ClassesRoot.OpenSubKey("CLSID").OpenSubKey("{61FA3121-640E-4DD6-B9DE-EE29F3CB12F1}").CreateSubKey("InprocServer32");
Registry.ClassesRoot.OpenSubKey("CLSID").OpenSubKey("{61FA3121-640E-4DD6-B9DE-EE29F3CB12F1}").OpenSubKey("InprocServer32").SetValue("ThreadingModel", "Free");
Registry.ClassesRoot.OpenSubKey("CLSID").OpenSubKey("{61FA3121-640E-4DD6-B9DE-EE29F3CB12F1}").OpenSubKey("InprocServer32").SetValue("Default", "WP7Native01ARM.dll");
Registry.ClassesRoot.OpenSubKey("CLSID").OpenSubKey("{61FA3121-640E-4DD6-B9DE-EE29F3CB12F1}").CreateSubKey("Programmable");
Registry.ClassesRoot.OpenSubKey("CLSID").OpenSubKey("{61FA3121-640E-4DD6-B9DE-EE29F3CB12F1}").CreateSubKey("VersionIndependentProgID");
Registry.ClassesRoot.OpenSubKey("CLSID").OpenSubKey("{61FA3121-640E-4DD6-B9DE-EE29F3CB12F1}").OpenSubKey("VersionIndependentProgID").SetValue("Default", "WP7Native01.NativeCommon");
Registry.ClassesRoot.OpenSubKey("CLSID").OpenSubKey("{61FA3121-640E-4DD6-B9DE-EE29F3CB12F1}").CreateSubKey("ProgID");
Registry.ClassesRoot.OpenSubKey("CLSID").OpenSubKey("{61FA3121-640E-4DD6-B9DE-EE29F3CB12F1}").OpenSubKey("ProgID").SetValue("Default", "WP7Native01.NativeCommon.1");
Registry.ClassesRoot.CreateSubKey("WP7Native01.NativeCommon");
Registry.ClassesRoot.OpenSubKey("WP7Native01.NativeCommon").SetValue("Default", "NativeCommon Class");
Registry.ClassesRoot.OpenSubKey("WP7Native01.NativeCommon").CreateSubKey("CurVer");
Registry.ClassesRoot.OpenSubKey("WP7Native01.NativeCommon").OpenSubKey("CurVer").SetValue("Default", "WP7Native01.NativeCommon.1");
Registry.ClassesRoot.OpenSubKey("WP7Native01.NativeCommon").CreateSubKey("CLSID");
Registry.ClassesRoot.OpenSubKey("WP7Native01.NativeCommon").OpenSubKey("CLSID").SetValue("Default", "{61FA3121-640E-4DD6-B9DE-EE29F3CB12F1}");
Registry.ClassesRoot.CreateSubKey("WP7Native01.NativeCommon.1");
Registry.ClassesRoot.OpenSubKey("WP7Native01.NativeCommon.1").SetValue("Default", "NativeCommon Class");
Registry.ClassesRoot.OpenSubKey("WP7Native01.NativeCommon.1").CreateSubKey("CLSID");
Registry.ClassesRoot.OpenSubKey("WP7Native01.NativeCommon.1").OpenSubKey("CLSID").SetValue("Default", "{61FA3121-640E-4DD6-B9DE-EE29F3CB12F1}");

Now ComBridge.RegisterComDll() returns 0x80004005, which is just another freakin' way of "Access Denied" :mad:

By the way.. I'm pretty sure that the previous 0x8007007E (ERROR_MOD_NOT_FOUND) is from LoadLibrary(), which is just saying "I can't load this module".

HACK HARDER!

Heathcliff74