|
-
Jul 6th, 2006, 01:52 PM
#1
Thread Starter
Lively Member
msinet.ocx (InetCtls) problem
I am having a problem with the Internet Transfer Control in VB6. I know about the fix for design time liscening for this control (vb6cli.exe):
http://support.microsoft.com/kb/194751/
I am late binding the object in my program using:
Set oInetFTP = CreateObject("InetCtls.Inet")
This works fine on the development machine but when I move it to the server I get an "ActiveX cannot create object" error.
I can't run vb6cli.exe on the server because VB6 is not installed, what is the problem here? how can I fix it?
-
Jul 6th, 2006, 02:39 PM
#2
Re: msinet.ocx (InetCtls) problem
Create an installation package, and install the program on the server, don't just copy it across. 
If you need help with doing it, see this FAQ thread.
-
Jul 7th, 2006, 10:15 AM
#3
Thread Starter
Lively Member
Re: msinet.ocx (InetCtls) problem
how would an install package help in this case? this control is late binded at it exists on any computer with VB runtime installed.
-
Jul 7th, 2006, 10:30 AM
#4
Re: msinet.ocx (InetCtls) problem
The error "ActiveX cannot create object" basically means that it is not installed (or not installed properly) on that computer.
As far as I am aware, Inet (like many other things) is not part of the standard VB runtimes - it needs to be installed properly.
-
Jul 7th, 2006, 03:38 PM
#5
Re: msinet.ocx (InetCtls) problem
INet is MSINET.OCX. VB6 can be completely installed and there can still be a bad (or missing) ocx file. MSINET.OCX may not be part of some VB6 versions.
The most difficult part of developing a program is understanding the problem.
The second most difficult part is deciding how you're going to solve the problem.
Actually writing the program (translating your solution into some computer language) is the easiest part.
Please indent your code and use [HIGHLIGHT="VB"] [/HIGHLIGHT] tags around it to make it easier to read.
Please Help Us To Save Ana
-
Jul 7th, 2006, 03:41 PM
#6
Re: msinet.ocx (InetCtls) problem
Which version of VB 6 are you using? The Learning Edition?
VB/Office Guru™ (AKA: Gangsta Yoda™ ®)
I dont answer coding questions via PM. Please post a thread in the appropriate forum. 
Microsoft MVP 2006-2011
Office Development FAQ (C#, VB.NET, VB 6, VBA)
Senior Jedi Software Engineer MCP (VB 6 & .NET), BSEE, CET
If a post has helped you then Please Rate it! 
• Reps & Rating Posts • VS.NET on Vista • Multiple .NET Framework Versions • Office Primary Interop Assemblies • VB/Office Guru™ Word SpellChecker™.NET • VB/Office Guru™ Word SpellChecker™ VB6 • VB.NET Attributes Ex. • Outlook Global Address List • API Viewer utility • .NET API Viewer Utility •
System: Intel i7 6850K, Geforce GTX1060, Samsung M.2 1 TB & SATA 500 GB, 32 GBs DDR4 3300 Quad Channel RAM, 2 Viewsonic 24" LCDs, Windows 10, Office 2016, VS 2019, VB6 SP6 
-
Jul 7th, 2006, 04:37 PM
#7
Thread Starter
Lively Member
Re: msinet.ocx (InetCtls) problem
VS6 Enterprise, but the problem is not on the development machine its on the server the app is being deployed to.
msinet.ocx exists in system32 and is properly registered on the server.
-
Jul 7th, 2006, 04:41 PM
#8
Re: msinet.ocx (InetCtls) problem
Is it the same version as you have on the development machine? (it can make a big difference - sometimes the object names change).
Does it work if you use an early-bound version?
-
Jul 7th, 2006, 04:58 PM
#9
Thread Starter
Lively Member
Re: msinet.ocx (InetCtls) problem
It's not the same version of the ocx but I checked and "InetCtls.Inet" is the version independant class name.
It doesn't work early bound either unless I host it on a form (which I don't want to do).
-
Jul 7th, 2006, 05:03 PM
#10
Re: msinet.ocx (InetCtls) problem
So your using
Dim oInet As Object
oInet = CreateObject("InetCtls.Inet")
'...
VB/Office Guru™ (AKA: Gangsta Yoda™ ®)
I dont answer coding questions via PM. Please post a thread in the appropriate forum. 
Microsoft MVP 2006-2011
Office Development FAQ (C#, VB.NET, VB 6, VBA)
Senior Jedi Software Engineer MCP (VB 6 & .NET), BSEE, CET
If a post has helped you then Please Rate it! 
• Reps & Rating Posts • VS.NET on Vista • Multiple .NET Framework Versions • Office Primary Interop Assemblies • VB/Office Guru™ Word SpellChecker™.NET • VB/Office Guru™ Word SpellChecker™ VB6 • VB.NET Attributes Ex. • Outlook Global Address List • API Viewer utility • .NET API Viewer Utility •
System: Intel i7 6850K, Geforce GTX1060, Samsung M.2 1 TB & SATA 500 GB, 32 GBs DDR4 3300 Quad Channel RAM, 2 Viewsonic 24" LCDs, Windows 10, Office 2016, VS 2019, VB6 SP6 
-
Jul 7th, 2006, 05:07 PM
#11
Thread Starter
Lively Member
Re: msinet.ocx (InetCtls) problem
yep, see my original post.
-
Jul 7th, 2006, 05:09 PM
#12
Re: msinet.ocx (InetCtls) problem
See if you can re-register the ocx on the server. You will need to location of the file as an argument in using regsrv32.exe.
Or maybe if your comfortable with using the registry you can verify that the class exists "InetCtls.Inet"
VB/Office Guru™ (AKA: Gangsta Yoda™ ®)
I dont answer coding questions via PM. Please post a thread in the appropriate forum. 
Microsoft MVP 2006-2011
Office Development FAQ (C#, VB.NET, VB 6, VBA)
Senior Jedi Software Engineer MCP (VB 6 & .NET), BSEE, CET
If a post has helped you then Please Rate it! 
• Reps & Rating Posts • VS.NET on Vista • Multiple .NET Framework Versions • Office Primary Interop Assemblies • VB/Office Guru™ Word SpellChecker™.NET • VB/Office Guru™ Word SpellChecker™ VB6 • VB.NET Attributes Ex. • Outlook Global Address List • API Viewer utility • .NET API Viewer Utility •
System: Intel i7 6850K, Geforce GTX1060, Samsung M.2 1 TB & SATA 500 GB, 32 GBs DDR4 3300 Quad Channel RAM, 2 Viewsonic 24" LCDs, Windows 10, Office 2016, VS 2019, VB6 SP6 
-
Jul 7th, 2006, 05:19 PM
#13
Thread Starter
Lively Member
Re: msinet.ocx (InetCtls) problem
I already did both of those checks, the file registered fine and the class exists in the registry.
-
Aug 29th, 2008, 06:04 AM
#14
New Member
Re: msinet.ocx (InetCtls) problem
This problem may be to do with MSINET.OCX and it's licence. I have just had to fix this problem and I thought I'd add my solution to this thread in case others find it on Google.
Instead of trying to instantiate the MSINET.OCX control by executing
Set thing = CreateObject("InetCtls.Inet")
actually create an invisible form. Drag an Inet from the toolbar onto the form and in your code try this...
Set thing = Form1.Inet1 ' whatever you called the Form and the control. This seems to "trick" the MSINET.OCX into realising it IS in a run-time environment, damnit.
This worked for me inside of an otherwise Formless VB6 program being executed within a Service.
The only other solution would be to install VB6. Something most customers won't be happy doing on a production server.
I hope this helps anyone else frustrated by their MSINET.OCX using executable behaving differently in a production environment to on their development machine.
Cheers all.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|