I have been working on converting a assembly of mine to be usable through Delphi. I was able to convert the assembly to a PAS file and call the method in my delphi application. But i ran into a problem where my PAS file is asking for System_Windows_Forms_TLB which i was able to find and add. But then that file uses Accessibility_TLB and i have no clue where that is? Does anyone know wherethat is or am i doing something wrong here? Sorry i'm not experienced at all dealing with COM's.
+5
A:
The System_Windows_Forms_TLB
unit comes from the System.Windows.Forms.dll assembly. The Accessibility_TLB
unit, likewise, comes from the Accessibility.dll assembly. I have two copies on my system:
C:\WINDOWS\Microsoft.NET\Framework>dir /a /s Accessibility.dll Volume in drive C is TPT60-1106 Volume Serial Number is 148C-7498 Directory of C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322 02/21/2003 10:24 AM 7,680 Accessibility.dll 1 File(s) 7,680 bytes Directory of C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 07/25/2008 12:17 PM 10,752 Accessibility.dll 1 File(s) 10,752 bytes Total Files Listed: 2 File(s) 18,432 bytes 0 Dir(s) 49,421,320,192 bytes free
Rob Kennedy
2009-08-10 19:39:23
+3
A:
I found out that the reason it was asking for System_Windows_Forms_TLB and Accessibility_TLB was because i had the whole assembly set to COMVIsible instead of just the interface. This was in turn asking for those assemblies instead of letting the GAC take care of the rest. I removed COMVisible from the assembly and added it to just the Interface and it all worked correctly.
Andy Xufuris
2009-08-10 20:31:22