IE Lesezeichen auslesen

    • VB6

      IE Lesezeichen auslesen

      Viellt. kann das ja jmd gebrauchen. (Sollte leicht zu .NET umwandelbar sein)

      Quellcode

      1. Option Explicit
      2. Public Enum SpecialFolderIDs
      3. sfidDESKTOP = &H0
      4. sfidPROGRAMS = &H2
      5. sfidPERSONAL = &H5
      6. sfidFAVORITES = &H6
      7. sfidSTARTUP = &H7
      8. sfidRECENT = &H8
      9. sfidSENDTO = &H9
      10. sfidSTARTMENU = &HB
      11. sfidDESKTOPDIRECTORY = &H10
      12. sfidNETHOOD = &H13
      13. sfidFONTS = &H14
      14. sfidTEMPLATES = &H15
      15. sfidCOMMON_STARTMENU = &H16
      16. sfidCOMMON_PROGRAMS = &H17
      17. sfidCOMMON_STARTUP = &H18
      18. sfidCOMMON_DESKTOPDIRECTORY = &H19
      19. sfidAPPDATA = &H1A
      20. sfidPRINTHOOD = &H1B
      21. sfidProgramFiles = &H10000
      22. sfidCommonFiles = &H10001
      23. End Enum
      24. Private Type SHITEMID
      25. cb As Long
      26. abID As Byte
      27. End Type
      28. Private Type ITEMIDLIST
      29. mkid As SHITEMID
      30. End Type
      31. Private Declare Function SHGetSpecialFolderLocation Lib "shell32.dll" (ByVal hwndOwner As Long, ByVal nFolder As Long, pidl As ITEMIDLIST) As Long
      32. Private Declare Function SHGetPathFromIDList Lib "shell32.dll" Alias "SHGetPathFromIDListA" (ByVal pidl As Long, ByVal pszPath As String) As Long
      33. Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationname As String, ByVal lpKeyName As String, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
      34. Private Sub Form_Load()
      35. GetIEFavorites (GetSpecialFolder(sfidFAVORITES))
      36. End Sub
      37. 'http://www.shadoware.de/vb/foreachsubpath.html
      38. Private Sub GetIEFavorites(StartFolder As String)
      39. Dim sName As String
      40. Dim Filename As String
      41. Dim FolderName As String
      42. Dim Dirs() As String
      43. Dim DirsNo As Integer
      44. Dim i As Integer
      45. If Right(StartFolder, 1) <> "\" Then StartFolder = StartFolder & "\"
      46. If DirExists(StartFolder) = False Then Exit Sub
      47. sName = Dir(StartFolder & "*.url")
      48. While Len(sName) > 0
      49. Filename = StartFolder & sName
      50. List1.AddItem GetINISetting(Filename, "InternetShortcut", "URL", "Error")
      51. sName = Dir
      52. Wend
      53. 'subfolder
      54. DirsNo = 0
      55. sName = Dir(StartFolder, vbDirectory)
      56. While Len(sName) > 0
      57. If sName <> "." And sName <> ".." Then
      58. DirsNo = DirsNo + 1
      59. ReDim Preserve Dirs(DirsNo) As String
      60. Dirs(DirsNo - 1) = sName
      61. End If
      62. sName = Dir
      63. Wend
      64. For i = 0 To DirsNo - 1
      65. FolderName = StartFolder & Dirs(i) & "\"
      66. GetIEFavorites (FolderName)
      67. Next
      68. End Sub
      69. 'http://www.vbarchiv.net/tipps/tipp_273-standard-system-ordner-ermitteln.html
      70. Public Function GetSpecialFolder(CSIDL As SpecialFolderIDs) As String
      71. Dim lResult As Long
      72. Dim IDL As ITEMIDLIST
      73. Dim sPath As String
      74. lResult = SHGetSpecialFolderLocation(100, CSIDL, IDL)
      75. If lResult = 0 Then
      76. sPath = Space$(512)
      77. lResult = SHGetPathFromIDList(ByVal IDL.mkid.cb, ByVal sPath)
      78. GetSpecialFolder = Left$(sPath, InStr(sPath, Chr$(0)) - 1)
      79. End If
      80. End Function
      81. 'http://www.activevb.de/rubriken/kolumne/kol_1/fileexists.html
      82. Private Function DirExists(ByVal DirectoryName As String) As Boolean
      83. On Error Resume Next
      84. DirExists = CBool(GetAttr(DirectoryName) And vbDirectory)
      85. On Error GoTo 0
      86. End Function
      87. 'http://www.shadoware.de/vb/ini.html
      88. Function GetINISetting(ByVal Filename As String, ByVal Key As String, ByVal Setting As String, ByVal Default As Variant) As Variant
      89. Dim Temp As String * 1024
      90. Call GetPrivateProfileString(Key, Setting, Default, Temp, Len(Temp), Filename)
      91. GetINISetting = Mid(Temp, 1, InStr(1, Temp, Chr(0)) - 1)
      92. End Function


      Funktioniert mit momentan neuester Version.
      Für ein Mindestmaß an Rechtschreibung, Interpunktion und Majuskeln!