Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Error 12029 - Has to be something simple

1,510 views
Skip to first unread message

John Covert

unread,
Mar 29, 2004, 4:50:06 PM3/29/04
to
I have what I think is a relatively simple piece of code. It uses WININET
to "contact" a URL and then grab the ASP.NET generated XML. As is typical
with many of these bugs that make me tear at my hair, this works on two
hundred machines, and fails on one. Therefore I am thinking it to be
environmental. Here is the code:

===============================

hOpen = InternetOpen(scUserAgent, INTERNET_OPEN_TYPE_PRECONFIG,
vbNullString, vbNullString, 0)

If hOpen = 0 Then
glErrNbr = Err.LastDllError
gsErrMsg = "Error in InternetOpen call"
GoTo GetSourceErr
End If

hOpenUrl = InternetOpenUrl(hOpen, URL, vbNullString, 0,
INTERNET_FLAG_RELOAD, 0)

If hOpenUrl = 0 Then
glErrNbr = Err.LastDllError
gsErrMsg = "Error in InternetOpenURL call"
GoTo GetSourceErr
End If

===============================

InternetOpenUrl causes the error 12029.

The call is to an https: address.

That same URL functions perfectly on that machine if pasted into Internet
Explorer. The machine is WindowsXP, OfficeXP, IE 6.0.2800.1106.

I'd appreciate any ideas at all on what to look for.

Thank you, all.

John

buzz

unread,
Mar 29, 2004, 5:16:35 PM3/29/04
to
If it works on "200 hundred" machines and not one, and since the error is
ERROR_INTERNET_CANNOT_CONNECT, perhaps you may want to look at something
other than code.

1. Can you hit the page URL with a browser?
2. Just for kicks...is the clock on the machine set to the correct date? I
have had HTTPS/SSL errors with invalid certificates, but usually this yields
a 12037 error.


"John Covert" <jxco...@comcast.net> wrote in message
news:eCz6SfdF...@TK2MSFTNGP11.phx.gbl...

John Covert

unread,
Mar 29, 2004, 5:47:18 PM3/29/04
to
Don't know about the clock issue.

Yes, the URL works perfectly inside IE6.

Thanks for the reply.


"buzz" <bu...@buzz.com> wrote in message
news:eyBgAudF...@TK2MSFTNGP11.phx.gbl...

Brian Combs

unread,
Apr 5, 2004, 4:35:22 PM4/5/04
to
Hello
You can use network monitor and debug build of winInet to find the problem.
WinInet Debug
You can download debug builds of WinInet.Dll from the following location:
ftp://ftp.microsoft.com/PSS/Tools/Developer%20Support%20Tools/WinInet/
You should use the build number that is closest to the version of WinInet
that is on your system.

On Win ME/ Windows 2000/ Windows XP and greater OSs with Windows File
Protection

1. Configure Internet Explorer to use a default Start Page as close to the
page as possible. This eliminates much unnecessary logging that will add
additional size to the output log.
2. Close Internet Explorer as well as any other Internet-based applications
(additional applications that use WININET for connectivity may generate
extra traffic within the log).
3. Navigate to the location of where Internet Explorer is installed.
Typically this is either the \Program Files\Internet Explorer folder or the
\Program Files\Plus!\Microsoft Internet folder.
4. You must have extensions viewable so that the proper extension is
assigned to your file. You can turn on the extensions for all files by
going into the Folder Options from within Windows Explorer and choosing the
View tab and selecting to ‘Show all files’ and to not “Hide extensions of
known file types”.
5. Create a dummy file out of a new text file. Rename the file to the
following filename and extension:

IEXPLORE.EXE.LOCAL

The proper extension for this file is .local If you create this file and
you still have a Notepad icon for the file, re-do step 4 above.
6. Once the file has been created successfully, copy a suitable logging
version of WININET.DLL into the same directory as the file you created in
step 5.
7. Once the logging version of WININET is in place, open a CMD prompt.
Navigate to the location of where Internet Explorer is installed.
Typically this is either the \Program Files\Internet Explorer folder or the
\Program Files\Plus!\Microsoft Internet folder.
8. At the CMD prompt, type the following and hit <enter>:

SET WININETLOG=1

9. Now that the logging environment variable is set, you can now start the
logging by typing the following and hitting <enter>:

IEXPLORE.EXE

10. Internet Explorer should now open on the desktop and navigate to the
Start Page. It is important that you do not close either the CMD window or
Internet Explorer. As soon as Internet Explorer starts navigation, a
WININET.LOG file will be created on the desktop. Do not attempt to open
this log while it is being written to.
11. Recreate the problem. Once the behavior is observed, you can now
safely close Internet Explorer, as well as the CMD window. Logging should
cease. The log file should be zipped up and forwarded to a support
professional that has been trained to read these logs. If the log is too
large to send via Microsoft email (5mb), then it must be placed on the
FTPPSS FTP site (ftp://ftppss.microsoft.com)
12. Very Important: once logging is complete, you should remove the
logging version of WININET.DLL and the IEXPLORE.EXE.LOCAL file. Leaving
the logging version of WININET.DLL in place can affect overall browsing
performance because of the numerous checks written into that version.

TIP: For contrast purposes, it would be advisable to have a log of the
problem occurring and one of a normal condition, if possible. Also, a
Network Monitor packet trace that is taken at the same time as the WININET
log may also be beneficial when attempting to correlate network patterns
during the WININET communication.

NOTE: All of Microsoft’s operating systems from Windows 2000 and forward
support the use of IEXPLORE.EXE.LOCAL. This concept is called Dynamic Link
Library Redirection and documented online at http://msdn.microsoft.com.

NOTE: If you are using a custome WinInet application you can replace
IEXPLORE.EXE.LOCAL with your Application file name. And then run your
application from the command prompt.

NOTE: You can change where the log file is saved by setting environment
variable WininetLogFile, like this:
"set wininetlogfile=c:\temp\MyNewLog.log" with out the quotes.

Thanks
Brian [MSFT]
Microsoft Developer Support
This posting is provided "AS IS" with no warranties, and confers no rights.
--------------------
| From: "John Covert" <jxco...@comcast.net>
| References: <eCz6SfdF...@TK2MSFTNGP11.phx.gbl>
<eyBgAudF...@TK2MSFTNGP11.phx.gbl>
| Subject: Re: Error 12029 - Has to be something simple
| Date: Mon, 29 Mar 2004 17:47:18 -0500
| Lines: 73
| X-Priority: 3
| X-MSMail-Priority: Normal
| X-Newsreader: Microsoft Outlook Express 6.00.2800.1158
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
| Message-ID: <uLHqQ$dFEHA...@TK2MSFTNGP11.phx.gbl>
| Newsgroups: microsoft.public.inetsdk.programming.wininet
| NNTP-Posting-Host: pcp01506679pcs.kenets01.pa.comcast.net 68.82.147.93
| Path: cpmsftngxa06.phx.gbl!TK2MSFTNGP08.phx.gbl!TK2MSFTNGP11.phx.gbl
| Xref: cpmsftngxa06.phx.gbl
microsoft.public.inetsdk.programming.wininet:10876
| X-Tomcat-NG: microsoft.public.inetsdk.programming.wininet

0 new messages