Kurzanleitung im Script selbst hinterlegen


VBScript
'** Start Kurzbeschreibung *********************************
' Kurzbeschreibung
' ================
' Dies ist ein Beispiel für eine Kurzbeschreibung in einem FF-Skript. Dies
' ist ein Beispiel für eine Kurzbeschreibung in einem FF-Skript. Dies ist
' ein Beispiel für eine Kurzbeschreibung in einem FF-Skript. Dies ist ein
' Beispiel für eine Kurzbeschreibung in einem FF-Skript.
'
' Erläuterung
' -----------
' Die Beschreibung wird direkt in das Skript geschrieben und dann mit
' FileSytemObject dort ausgelesen. Das hat den Vorteil, dass der Text flüssig
' geschrieben werden kann und er auch direkt im Skript leicht lesbar ist.
' Außerdem kann er beliebig lang sein (fast beliebig lang).
'
'** Ende Kurzbeschreibung **********************************

Dim objFs, Kurzbeschreibung, KBvorhanden, LaengeMax
const SkriptName = "FFCFmt_Namensbestandteil.vbs"            ' Skriptname

Sub Hilfetext                                    ' <-- Aufruf der Hilfe
    if not KBvorhanden then    call KurzbeschreibungLesen
    if KBvorhanden then
        call KurzbeschreibungAnzeigen
    else
        msgbox "Keine Kurzbeschreibung gefunden!",,"Meldung"
    end if
End Sub
 
Sub KurzbeschreibungLesen
    on error resume next
    Const ForReading = 1
    Dim Skript, Anfang, Ende, Zeile
 
    Set objFS = CreateObject("Scripting.FileSystemObject")     ' FileSystemObject
    Set Skript = objFS.OpenTextFile(FF_GetScriptPath & "\" & SkriptName, ForReading, False)
 
    if err.number = 53 then
        msgbox "Wahrscheinlich wurde der Originalskriptname " & """" & SkriptName & """" & " abgeändert." & vbNewLine & _
               "Die Kurzbeschreibung kann daher nicht angezeigt werden.",,"Meldung"
        exit sub
    end if
 
    Do While Skript.AtEndOfStream <> True
        Zeile = Skript.ReadLine
 
        if instr(Zeile,"** Ende Kurzbeschreibung") > 0 then Ende = true
        if Ende then exit do
 
        if Anfang then Kurzbeschreibung = Kurzbeschreibung & mid(Zeile,2) & vbNewLine
        if len(Zeile)-1 > LaengeMax then LaengeMax = len(Zeile)-1
 
        if instr(Zeile,"** Start Kurzbeschreibung") > 0 then Anfang = true
    Loop
        msgbox LaengeMax
    if Anfang and Ende then KBvorhanden = true
    Skript.Close
End Sub
 
Sub KurzbeschreibungAnzeigen
    Dim Taste
    Dim Breite    : Breite = LaengeMax * 2.6 +15
    const Hoehe = 100
    const ES_READONLY = 2048
    const WS_VSCROLL = 2097152
 
    FF_AddDialog "Kurzbeschreibung",Breite,Hoehe
    FF_AddControl "Kurzbeschreibung","Beschreibung","EDIT",0,0,Breite,Hoehe-20
    FF_SetControlStyle "Kurzbeschreibung","Beschreibung", ES_READONLY + WS_VSCROLL
    FF_AddControl "Kurzbeschreibung","OK","BUTTON",Breite/2-15,Hoehe-15,30,10
    FF_SetControl "Kurzbeschreibung","Beschreibung",Kurzbeschreibung
 
    do
        Taste = FF_ShowDialog("Kurzbeschreibung")
        if Taste = "CANCEL" or Taste = "OK" then exit do
    loop
    call FF_CloseDialog("Kurzbeschreibung")
End Sub