tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
1
ZUGRIFFE
305
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    DrMueller DrMueller ist offline Mitglied Brokat
    Registriert seit
    Aug 2006
    Beiträge
    396
    Hi Leute,
    ich glaube ich habe so was ähnliches schon mal gefragt:
    Ich müsste herausfinden, ob auf einem PC z.B. Outlook installiert ist.
    Ich habe folgende Funktion, welche das EXE selber ausliest:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    
    Public Function LocateFile(ByVal strFileName As String, ByVal strRootPath As String) As String
      On Error Resume Next
      
      Dim strBuffer As String
      Dim lngResult As Long
      Const MAX_PATH = 260
      LocateFile = ""
      strBuffer = String$(MAX_PATH, 0)
      lngResult = SearchTreeForFile(strRootPath, strFileName, strBuffer)
      If lngResult <> 0 Then
          If InStr(strBuffer, vbNullChar) > 0 Then
              LocateFile = Left$(strBuffer, InStr(strBuffer, vbNullChar) - 1)
          End If
      End If
     End Function


    klappt soweit auch, aber wenn ich z.B. "Outlook.exe" und als Startpfad nur "C:\" mitgebe, dauert die Suche gerade bei älteren PCs eine ganze Weile. Da dies relativ oft aufgerufen wird, kann ich diese Lösung nicht verwenden.

    Ich habe von einer Alternative gehört, und zwar kann man über die Registry bei Microsoft\Uninstall alle Programme auslesen, das Problem ist, es kann jede beliebige Outlook-Version sein. Ich müsste, daher den ganzen Registry-Teil nach Outlook absuchen, was mir auch nicht sauber erscheint.


    Gibt es da möglicherweise nach eine Alternative, welche etwas sauberer und schneller ist?




    Wie immer vielen Dank im Voraus.
     

  2. #2
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Ich weiss grad nicht, was SHGetFileInfo genau für Infos liefert. Aber ev. kannst du darüber uach etwas machen
    http://www.activevb.de/tipps/vb6tipps/tipp0151.html
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

Ähnliche Themen

  1. Installierten Kernel ändern
    Von Serethos im Forum Linux & Unix
    Antworten: 2
    Letzter Beitrag: 25.08.10, 09:07
  2. Pfad des eigenen Programms auslesen (VB.NET)
    Von Der_Wanderer im Forum .NET Windows Forms
    Antworten: 2
    Letzter Beitrag: 07.05.07, 13:15
  3. Zugriff auf die installierten ODBC-Treiber?
    Von Sapperlot im Forum C/C++
    Antworten: 0
    Letzter Beitrag: 25.08.05, 11:32
  4. Shared Memory eines C++-Programms auslesen
    Von MrCruiser im Forum Delphi, Kylix, Pascal
    Antworten: 2
    Letzter Beitrag: 15.08.05, 15:42
  5. Shared Memory eines C++-Programms auslesen
    Von MrCruiser im Forum Visual Basic 6.0
    Antworten: 0
    Letzter Beitrag: 20.05.05, 11:49