Funktion schreiben

  • Ich möchte gerne eine komplett eigene Funktion schreiben und zwar befasst die sich mit den Dateierweiterungen z.b. au3, txt, ini, inf. Mit dieser Funktion soll man die Dateiendungen registrieren

  • Nein, ich habe z.b. die Dateiendung *.xpim. Nun möchte ich das die Dateiendung standardmäßig mit Editor aufgemacht wird und das Icon von der Konfigurations-Datei *.ini hat

  • Ja und?

    Dort werden sie registriert. Schnapp dir ein Beispiel und das kannst du dann einfach in die Registry mit regwrite schreiben.

  • Hab ich schon leider funktioniert es nicht. Mein Computer-Spezialist hat mich gefragt ob ich eine Include-datei schreibe.

  • Was funktioniert da nicht?

    Es kann nur so gehen.

    Vermutlich verstehe ich dich nicht, aber ich versuche mal mit meinen Worten zu erklären was du vor hast.

    Du hast eine Datei: Datei.dei

    Diese Datei soll im Windows Explorer so angezeigt werden, das als Symbol ein Symbol einer ini Datei genommen wird und wenn man doppeklickt, dann soll sie mit dem Editor geöffnet werden.

    Richtig so? Wenn ja, diese Infos stehen im besagten Key der registry.

    • Offizieller Beitrag

    Hallo!

    Guck mal im Galenda.. Da gibt es schon soeine funktion:

    Spoiler anzeigen
    [autoit]

    ;===============================================================================
    ;
    ; Description: Verknüpft Dateierweiterung mit Anwendung
    ; Parameter(s): $sFileType = Dateierweiterung
    ; $sDescription = Beschreibung für die Datei
    ; (optional) $sAppName = Anwendung für die Registriert werden
    ; soll, wird keine Anwendung angegeben
    ; wird die aktuelle Anwendung eingetragen
    ; Requirement(s): keine
    ; Return Value(s): bei Erfolg: 1
    ; bei Fehler: 0 und @error = 1
    ; Author(s): bernd670
    ;
    ;===============================================================================
    Func _RegisterFileType($sFileType, $sDescription, $sAppName = "")
    Dim $sTypeName

    If $sFileType = "" Or $sDescription = "" Then
    SetError(1)
    Return 0
    EndIf

    If $sAppName = "" Then $sAppName = @ScriptFullPath

    $sFileType = StringLower($sFileType)

    If StringLeft($sFileType, 1) <> "." Then
    $sTypeName = $sFileType
    $sFileType = "." & $sFileType
    Else
    $sTypeName = StringRight($sFileType, StringLen($sFileType) - 1)
    EndIf

    $sTypeName = $sTypeName & "file"

    RegWrite("HKCR" & $sFileType, "", "REG_SZ", $sTypeName)
    RegWrite("HKCR" & $sTypeName, "", "REG_SZ", $sDescription)
    RegWrite("HKCR" & $sTypeName & "shellopencommand", "", "REG_SZ", $sAppName & " -cal %1")
    RegWrite("HKCR" & $sTypeName & "DefaultIcon", "", "REG_SZ", $sAppName & ",0")

    SetError(0)
    Return 1
    EndFunc ;==>_RegisterFileType

    [/autoit]

    Mfg Spider

  • Das ist doch Prinzipiell genau das was ich gesagt habe oder?
    Gtaspider hat bloss ein konkretes Beispiel gepostet.

  • @DJMANU

    wenn Dein Computer-Spezialist nicht auf autoit besteht, kannst das auch mit assoc machen... sofern winxp verwendet wird.

    Einmal editiert, zuletzt von jonk (5. September 2006 um 17:39)