home *** CD-ROM | disk | FTP | other *** search
/ Chip 2002 November / CHIP1102.ISO / exe / scanFav.exe / scanFav.vbs
Encoding:
Text File  |  2002-07-20  |  2.5 KB  |  80 lines

  1.  
  2. Option Explicit
  3.  
  4. Dim listArgs
  5. Dim objWSHShell, objFileSystem
  6. Dim objFolder, objSubFolder, objFile, objShortcut, objHtmlFile
  7.  
  8. Dim szFolder
  9. Dim szHtmlFile, szTempFile
  10. Dim szLinkName
  11.  
  12. Dim intLevel
  13.  
  14. Set listArgs = WScript.Arguments
  15. Set objWSHShell = WScript.CreateObject("WScript.Shell")
  16. Set objFileSystem = CreateObject("Scripting.FileSystemObject")
  17.  
  18. intLevel = 1
  19.  
  20. ' Welcher Ordner ist die Grundlage fⁿr die neue Link-Seite?
  21. If listArgs.Count = 0 Then
  22.    szFolder = objWSHShell.RegRead("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Favorites")
  23.    szFolder = InputBox("Aus welchem Ordner wollen Sie die Links HotLink-Seite generieren?","Ordner auswΣhlen",szFolder)
  24. Else
  25.    szFolder = listArgs(0)
  26. End If
  27.  
  28. ' Name der HTML-Datei ermitteln
  29. szHtmlFile = objFileSystem.GetSpecialFolder(2).Path
  30. szHtmlFile = szHtmlFile & "\HotLinks.html"
  31. szHtmlFile = InputBox("Name der HTML-Seite?","HTML benennen", szHtmlFile)
  32.  
  33. ' HTML-Satei erzeugen
  34. Set objHtmlFile = objFileSystem.CreateTextFile(szHtmlFile,true)
  35.    
  36. ' HTML-Datei beginnen
  37. objHtmlFile.Write "<HTML>" & vbNewLine 
  38. objHtmlFile.Write "<HEAD>" & vbNewLine 
  39. objHtmlFile.Write "</HEAD>" & vbNewLine 
  40. objHtmlFile.Write "<BODY>" & vbNewLine 
  41.  
  42. ' Im Ordner szFolder enthaltene Links und Unterordner verarbeiten... 
  43. ListLinks szFolder, intLevel
  44.  
  45. ' HTML-Datei abschlie▀en
  46. objHtmlFile.Write "</BODY>" & vbNewLine 
  47. objHtmlFile.Write "</HTML>" & vbNewLine 
  48. objHtmlFile.Close
  49.  
  50.  
  51.  
  52. function ListLinks(szFolder, intLevel)
  53.  
  54.    If objFileSystem.FolderExists(szFolder) Then
  55.  
  56.       Set objFolder = objFileSystem.GetFolder(szFolder)
  57.    
  58.       objHtmlFile.Write "<H" & intLevel & ">" & objFolder.Name & "</H" & intLevel & ">" & vbNewLine 
  59.  
  60.       For Each objFile In objFolder.Files
  61.       
  62.          ' Shortcut muss auf .LNK (Verknⁿpfung) oder .URL (Internetverknⁿpfung) enden!
  63.          ' Wir interessieren uns allerdings nur fⁿr Internetverknⁿpfungen 
  64.          if objFile.type = "Internetverknⁿpfung" then
  65.             set objShortcut=objWSHShell.CreateShortcut(objFile.Path)
  66.             szLinkName = Left(objFile.Name, Len(objFile.Name)-4)
  67.             objHtmlFile.Write "<A HREF='" & objShortcut.TargetPath &"'>" & szLinkName & "</A><BR>" & vbNewLine 
  68.          end if
  69.  
  70.       Next 
  71.    
  72.       For Each objSubFolder In objFolder.SubFolders
  73.          ListLinks objSubFolder.path, intLevel+1
  74.       Next 
  75.       
  76.    else
  77.       MsgBox "Angegebener Ordner " & szFolder & " existiert nicht!"
  78.    end if 
  79.    
  80. end function