Jeg er i gang med at lave en internet explorer, og så ville jeg gerne ha´ at man kan gå ind i Outlook Express fra Exploren, ligesom i Microsoft Internet Explorer, nogen der har en kode, så den selv finder stien til programmet?
Jeg har søgt og søgt og søgt på internettet og ikke fundet særlig meget. Det bedste jeg fandt var et kode-eksempel der var så dårlig programmeret at det ikke virkede. Men idéen var god nok. Man skal faktisk blot hente værdien af følgende sti i registreringsdatabasen:
HKEY_CLASSES_ROOT\\mailto\\shell\\open\\command og her læse standard-værdien
Et kode-eksempel med brug af VBAccelerators cRegistry-Class:
Private Function GetEmailAppPath() As String
Dim Reg As New cRegistry
Dim Path As String
Dim Pos As Long
GetEmailAppPath = ""
Path = ""
With Reg
.Default = ""
.ClassKey = HKEY_CLASSES_ROOT
.SectionKey = "mailto\\shell\\open\\command"
.ValueKey = ""
Path = .Value
End With
If Path = "" Then
Exit Function
End If
If Left(Path, 1) = """" Then
Pos = InStr(2, Path, """")
If Pos > 1 Then
Path = Mid(Path, 2, Pos - 2)
End If
Else
Pos = InStr(Path, " ")
If Pos > 0 Then
Path = Left(Path, Pos - 1)
End If
End If
GetEmailAppPath = Path
End Function
Jeg ved dog ikke hvordan man skal få returneret titlen på email-programmet. Den er jo netop angivet, når man går ind i sine Internetindstillinger. Ikonet kan du dog få fat i ved at bruge Windows API-funktionen ExtractAssociatedIcon.
Håber du kan få det til at virke!
/ Bjarke
--------------------------------------------------
[THIS IS A SIGNATURE VIRUS! PLEASE COPY IT INTO YOUR OWN SIGNATURE(S)]
--------------------------------------------------
Naturvidenskab er interessant:
http://www.unf.dk/