Svar: [AccessD] A2003:Test Voracity of URLS

Darren DICK d.dick at uws.edu.au
Wed Nov 17 21:12:33 CST 2004


Hi Marty
I have Windows Script Host Object Model Referenced
It still fails on the line FSO As New Scripting.FileSystemObject
The reference file is...
C:\Windows\System32\wshom.ocx
I have it at the top (Welll 3rd at least) of the available references

Can you remove you reference to it and decompile to see if it fails on that
line for you??

Many thanks

Darren

 

-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of MartyConnelly
Sent: Thursday, 18 November 2004 1:51 PM
To: Access Developers discussion and problem solving
Subject: Re: Svar: [AccessD] A2003:Test Voracity of URLS

Reference for scripting filesystem object Wshom.ocx Windows Script Host
Model generically known as WSH

You should be getting Http Url printed out with asterix in debug window if
it is working, before it is placed in the memo field, maybe a typo name
error in table or code

The code to test validity of url could be something like this with request
status being returned as 404 or 500 for invalid just like http error codes;
200 for normal or good

The response Debug.Print HttpReq.StatusText will give you a better
explanation.

You should have some version of XML installed if using IE 6.0

'?testurlxml("http://www.microsoft.com")
Function testurlxml(strURL As String) As String
  Dim HttpReq As Object
  Set HttpReq = CreateObject("MSXML2.XMLHTTP")
  HttpReq.Open "GET", strURL, False
  HttpReq.send
  'Debug.Print HttpReq.responseText 'this is returned html string
  Debug.Print HttpReq.Status
  Debug.Print HttpReq.StatusText
  testurlxml = HttpReq.Status '200 normal End Function

You can also verify legality of url string Private Declare Function
PathIsURL Lib "shlwapi.dll" _
   Alias "PathIsURLA" _
  (ByVal pszPath As String) As Long



Private Function IsPathAURL(ByVal sPath As String) As Boolean

  'Tests a given string to determine if it
  'conforms to a valid URL format. Returns
  'True if sPath has a valid URL format,
  'or False otherwise.

  'This function does not verify that the
  'path points to an existing site, only
  'that it has a valid URL format.

   IsPathAURL = PathIsURL(sPath) = 1

End Function

Darren DICK wrote:

>Hi Marty
>Thanks for the reply
>Couple of Q's though :-))
>
>I can't compile past the...
>
>Dim FSO  as New Scripting.FileSystemObject
>
>What do I need to ref to get this to work?
>
>I tried alternative of....
>
>Set fso = CreateObject("Scripting.FileSystemObject")
>
>and managed to get it to compile and the code 'seemed' to work. In that 
>it filled the temp table with what looked to be correct values - but 
>Dunno if this is the same
>
>The Public Function GetHTTPfromURL didn't seem to populate the HTTP 
>Column the temp table
>
>Once I do have all the relevant information in the table - how do I 
>actually tell if The link is live (or have I missed it in the code)
>
>Many thanks
>
>Darren
>
>
>-----Original Message-----
>From: accessd-bounces at databaseadvisors.com
>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of 
>MartyConnelly
>Sent: Thursday, 18 November 2004 7:11 AM
>To: Access Developers discussion and problem solving
>Subject: Re: Svar: [AccessD] A2003:Test Voracity of URLS
>
>I have some really rough code written for Win 95, let me see if I can 
>upgraded it but just grab all the ".url"  files in the sub directories 
>below that contain your favourites in win xp or win 2000 C:\Documents 
>and Settings\usename\Favorites then pass your .url filename to this 
>routine to drag out the http address Then pass http url string to 
>xmlhttp or winhttp this will return a 404 if not valid or 500 if server
gone etc.
>
>Public Function GetHTTPfromURL(FileNaam As String) As String Dim FSO As 
>New Scripting.FileSystemObject Dim oFile As file Dim oText As 
>TextStream Dim strLine As String
>
>'grab the folder already so just get FileName 'Set oFolder =
>FSO.GetFolder(Path) Set oFile = FSO.GetFile(FileNaam)
>      Set oText = oFile.OpenAsTextStream
>      Do
>         strLine = oText.ReadLine 'contains [InternetShortcut]
>      Loop Until strLine = "[InternetShortcut]"
>      strLine = oText.ReadLine 'should contains URL=
>      oText.Close
>     
>   ' Open "C:\Windows\Favorites\" & Text1.Text & ".url" For Binary 
>Access Write As #1 ' Save the file.
>   'Open FileNaam For Binary Access Read As #1 ' Read the file.
>   ' Put #1, , "[InternetShortcut]" & vbNewLine & "URL=" & Text1.Text
>   'Get #1, , VarBuf
>   Debug.Print "**" & strLine & "**"
>   ' Close #1
>   ' MsgBox "URL sucessfully added to Favorites!", vbInformation
>   GetHTTPfromURL = strLine
>End Function
>
>Erwin Craps - IT Helps wrote:
>
>  
>
>>Seeing this, I wunder if there is someone who has some code (and wants 
>>to share it) to check all hyperlinks in the favorites of IE to see if 
>>the page/website still exists?
>>
>>Beeing on the internet for probably about 10 years now got me a lot of 
>>favorites that are aged and no longer exists...
>>
>>I like to clean up (sometimes).
>>
>>Erwin
>>
>>
>>
>>
>>-----Original Message-----
>>From: accessd-bounces at databaseadvisors.com
>>[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Gustav 
>>Brock
>>Sent: Wednesday, November 17, 2004 10:36 AM
>>To: accessd at databaseadvisors.com
>>Subject: Svar: [AccessD] A2003:Test Voracity of URLS
>>
>>Hi Darren
>>
>>We use these functions:
>>
>><code module>
>>
>>Private Declare Function URLDownloadToFile Lib "urlmon" Alias 
>>"URLDownloadToFileA" ( _  ByVal pCaller As Long, _  ByVal szURL As 
>>String, _  ByVal szFileName As String, _  ByVal dwReserved As Long, _  
>>ByVal lpfnCB As Long) _  As Long
>>
>>Public Function IsURL(ByVal strURL As String) As Boolean
>>
>>' Usage: Check if URL strURL is alive and reachable.
>>'   booURL = IsURL("http://www.ibm.com")
>>'   booURL = IsURL("ftp://ftp.novell.com")
>>'
>>' Note: Protocol header like "http://" must be provided.
>>'
>>' 2001-12-09. Cactus Data ApS. CPH.
>>
>> ' File found at most URLs.
>> Const cstrFileIndex As String = "index.htm"
>>
>> IsURL = (URLDownloadToFile(0, strURL, cstrFileIndex, 0, 0) = 0)
>> 
>>End Function
>>
>></code module>
>>
>>If your URLs contains html document name you will have to modify the 
>>code to use that and not append index.html.
>>
>>/gustav
>>
>> 
>>
>>    
>>
>>>>>d.dick at uws.edu.au 17-11-2004 05:03:08 >>>
>>>>>       
>>>>>
>>>>>          
>>>>>
>>I have an educational client who has a CD full of Education URL's 
>>(Zillion's of 'em) Occasionally someone has to test to see if the 
>>links are broken or not (Manually <yuk>)
>>
>>I thought this would be a perfect application for Access Set up a 
>>table of URLs and loop through 'em and return TRUE or FALSE
>>
>>So...Is there a way I can type in
>>say...http://somewebsite.someserver.com.au
>>and return "true" if the site exists or "false" if the site does not 
>>exist.
>>
>>--
>>_______________________________________________
>>AccessD mailing list
>>AccessD at databaseadvisors.com
>>http://databaseadvisors.com/mailman/listinfo/accessd
>>Website: http://www.databaseadvisors.com
>> 
>>
>>    
>>
>
>--
>Marty Connelly
>Victoria, B.C.
>Canada
>
>
>
>  
>

--
Marty Connelly
Victoria, B.C.
Canada



-- 
_______________________________________________
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com




More information about the AccessD mailing list