Automation Error Cannot Find The File Specified .net
here for a quick overview of the site Help Center Detailed answers to any questions you might have Meta Discuss the workings and policies of this site About Us Learn more about Stack Overflow the company Business Learn more about hiring developers or posting ads with us Stack Overflow Questions Jobs Documentation Tags Users Badges Ask Question x Dismiss Join the Stack Overflow Community Stack Overflow is a community of 4.7 million programmers, just like you, helping each other. Join them; it only takes a minute: Sign up COM registration fails: “Automation error: the system cannot find the file specified”, when installing dll into other folder than the tlb file up vote 3 down vote favorite We have a COM component (let's call it MyLib) developed in VB.NET, for our Access application (let's call it MyApp) to use. In order to do that, we need to do COM registration using the generated MyLib.dll and MyLib.tlb files. When I am installing both files into our MyApp's folder, everything is working fine, the COM function is invoked correctly. However, I am having an error mentioned in the title when I am installing the dll into a common folder - the reason I am doing it is because we want to allow different versions of MyApp to be installed on the same machine. So if the COM component doesn't change, we of course want to share it among these different versions and let Windows do the reference count. I am not sure where I should put the MyLib.tlb file, either in MyApp's installation folder, or the same common folder as MyLib.dll. But anyway, I tried both locations, and they all gave the same error. I tried to compare the registry files between the case when I put MyLib.* into MyApp's folder, and the case when I put MyLib.dll into common folder. I can't see any difference except of course the CodeBase of the Class I am trying to register under HKCR\Wow6432nodes\CLSID{MYCLSID}\InprocServer32. Another thing I don't understand is there is no sub-key named TypeLib under HKCR\Wow6432nodes\CLSID{MYCLSID} in both cases, which in my understanding is the way to link the TypeLib to the dll (but why is is still working when I put tlb and dll into the same folder?) since in MyApp it only knows that th
here for a quick overview of the site Help Center Detailed answers to any questions you might have Meta Discuss the workings and policies of this site About Us Learn more about Stack Overflow the company Business Learn more about hiring developers or posting ads with us Stack Overflow Questions Jobs Documentation Tags Users Badges Ask Question x Dismiss Join the Stack Overflow Community Stack Overflow is a community of 4.7 million programmers, just like you, helping each other. Join them; it only takes a minute: http://stackoverflow.com/questions/11673878/com-registration-fails-automation-error-the-system-cannot-find-the-file-speci Sign up Registering a .NET dll for use in VB6 application up vote 7 down vote favorite I have a DLL I wrote in C# which I want to use in my VB6 application. In VS2008 the project property "Register for COM interop" is checked, and when I compile the DLL and try to use it on my development machine - it runs http://stackoverflow.com/questions/6522318/registering-a-net-dll-for-use-in-vb6-application ok. I need to run it on a computer which does not have VS2008, so I tried to register this DLL like so: C:\WINDOWS\system32>..\Microsoft.NET\Framework\v2.0.50727\regasm myDLL.dll /tlb: myDLL.tlb /codebase but then when I try to run it I get this error: Automation Error The system cannot find the file specified. Can anybody tell me what I'm doing wrong? .net com vb6 regasm share|improve this question asked Jun 29 '11 at 14:26 La La La 3617 Did you move it after you registered it? Is the file definitely available on the machine? –Jeff Jun 29 '11 at 14:53 See here: stackoverflow.com/questions/881750/… –Jeff Jun 29 '11 at 14:55 You will need to run RegAsm with elevated privileges on Windows Vista/7 by running your command prompt as admin –Matt Wilko Jun 30 '11 at 15:18 Did you Ever Find an Answer?? –Christopher Chase Jul 26 '11 at 2:22 add a comment| 2 Answers 2 active oldest votes up vote 4 down vote Just like you specified the full path to regasm.exe, you need to specify the full path to your .dl
in VB6 Dev environ If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start http://www.vbforums.com/showthread.php?561154-COM-interop-automation-err-in-VB6-Dev-environ viewing messages, select the forum that you want to visit from the selection below. Results 1 to 7 of 7 Thread: COM interop; automation err in VB6 Dev environ Tweet Thread Tools Show Printable Version Subscribe to this http://www.xtremevbtalk.com/general/321056-call-net-vb6.html Thread… Display Linear Mode Switch to Hybrid Mode Switch to Threaded Mode Mar 10th, 2009,06:34 PM #1 KeyNoteSteve View Profile View Forum Posts Thread Starter New Member Join Date Jan 2008 Posts 6 COM interop; automation err in automation error VB6 Dev environ I have written a vb.net (VS2008) .dll sample. I have built these with the swithes for 'COM Interop'. I move this DLL from my VS2008 machine to my VB6 dev machine; run regasm xxx /tlb; and then write a little sample program to test the DLL. The significant parts of the program program are: ------------------------------------------ << reference is added to the dll>> Public M10 As Mar10Class.Mar10Class Private Sub cmdMar10Class_Click() Set M10 = New automation error cannot Mar10Class.Mar10Class M10.HelloMsg ("Mar10 class Msg from VB6 ") End Sub --------------------------------------- If I compile the program, it behaves as expected, but if I try to run it in the dev environment, it gets Automation error The system cannot find the specified file The error happens on line "Set M10 = New Mar10Class....." I have thried this with 4 test dlls. The first one I wrote works in both the comile and dev mod. All others only work in compile mode. I moved one of the test projects to another machine that had the VB6 dev environment and on that machine none worked in the dev environ (and all worked when compiled). I can't see anything in the .net source code or project properties that would make a diference. Can anyone shed some light? Much appreciated. Reply With Quote Mar 10th, 2009,06:54 PM #2 dee-u View Profile View Forum Posts Visit Homepage Software Carpenter Join Date Feb 2005 Location Candon City, Ilocos Sur, Phils. Posts 10,924 Re: COM interop; automation err in VB6 Dev environ It should help to see your .net code for the dll. Regards, ™ As a gesture of gratitude please consider rating helpful posts. c",) Some stuffs: Mouse Hotkey | Compress file using SQL Server! | WPF - Rounded Combobox | WPF - Notify Icon and Balloon | NetVerser - a WPF chatting
General > Call .NET from VB6 Thread Tools Display Modes #1 04-27-2011, 07:40 AM rbrodbeck Freshman Join Date: Jun 2008 Posts: 33 Call .NET from VB6 I have an old VB6 project that needs to reference/call a new .NET project. My .NET project (ImportProspects) was built with the 'Register for COM interop' box checked on machine A. I copied the ImportProspects.dll and ImportProspects.tlb files to machine B (the dev machine for the VB6 project). In the VB6 project I added a reference to ImportProspects.tlb and added the following code: Code: Private Sub mnuUtilitiesImportProspectsTemplates_Click() Dim oImportTemplates As ImportProspects.ImportProspectsEntry Set oImportTemplates = New ImportProspects.ImportProspectsEntry MsgBox oImportTemplates.myFunction End Sub When I execute that code I receive the following error message: Run-time error '429': ActiveX component can't create object What am I doing wrong? rbrodbeck View Public Profile Find all posts by rbrodbeck #2 04-27-2011, 07:50 AM Gruff Bald Mountain Survivor Retired Moderator* Expert * Join Date: Aug 2003 Location: Oregon, USA Posts: 6,440 COM components Need to be registered with Windows on the target PC. Did you run RegSvr32 on the files you copied? __________________ Burn the land and boil the sea You can't take the sky from me ~T Gruff View Public Profile Find all posts by Gruff #3 04-27-2011, 07:53 AM rbrodbeck Freshman Join Date: Jun 2008 Posts: 33 The TLB cannot be registered. When I try to register the the DLL I get: "...ImportProspects.dll was loaded, but the DLLRegisterServer entry point was not found. The file can not be registered." rbrodbeck View Public Profile Find all posts by rbrodbeck #4 04-27-2011, 07:57 AM rbrodbeck Freshman Join Date: Jun 2008 Posts: 33 Correction, I registered the TLB using regtlib.exe but still can't register the DLL. rbrodbeck View Public Profile Find all posts by rbrodbeck #5 04-27-2011, 08:04 AM rbrodbeck Freshman Join Date: Jun 2008 Posts: 33 Still n