Deutsch
Quelltexte/ Codesnippets

Kurzpfad Langpfad Umsetzer

 

Michael
Wodrich
Dieser (PGM) Schnibbel ist für alle, die Probleme mit langen Pfaden haben.

Es dürfen auch Pfade aus dem Environment, die mit %VAR% durchsetzt sind angegeben werden. Alles mit ROC erstellt (nur ExpandEnvStr$ nachträglich eingefügt).

Hineinkopieren (oder Schreiben) des Pfades und in die andere Form übersetzen. Muß evtl. ein wenig angepaßt werden. MATCH$ enthalten.
KompilierenMarkierenSeparieren
 $P+
SetErrorLevel 0
********************** HINWEISE ********************************
CODE ERZEUGT MIT ROKOS OBJECT CREATOR 4.4c
DATUM  12.10.2006    um  19:53 Uhr
VERWENDETE PROFANVERSION IST 10.0ß-NT RC8 XPROFAN
CODE ERSTELLT UNTER UNBEKANNTER WINDOWSVERSION
(Aha ROC bereitet sich auf Vista vor und vergißt schon XP)
!!! Dieser Code wird von Roc immer neu erzeugt!!!
!!! Erst bearbeiten, wenn alle Objekte erzeugt wurden !!!
!!! Verändern Sie ggf. feste Pfade in variable Pfade
Autor: Michael Wodrich
********************** DATEN ***********************************
>>>>> AB HIER KOPIEREN UND IN EIGENEN CODE EINBINDEN <<<<<<<<<<<<
DEF GETSYSCOLOR(1) !"USER32","GetSysColor"
SETTRUECOLOR 1
 $I C:PROFANLIBBILDBUTTON.INC (Für Bildbuttons/Iconbuttons)

PROC DIALOG  ---------------------------------------------------------------------------> Dialoganfang

    DECLARE DLG&, DIALOGENDE%
    DECLARE LongVar&
    DECLARE ShortVar&
    DECLARE LabelLong&
    DECLARE LabelShort&
    DECLARE Button_L2S&
    DECLARE Button_S2L&
    DECLARE ICONBUTTON1&
    DECLARE Label_LangErg&
    DECLARE Label_KurzErg&

    PROC ExpandEnvStr$

        Parameters S$
        Declare Var$
        Var$ = Match$("(?i)%{1}[a-z]{1}[a-z_0-9]*%{1}",S$)

        While %MatchLen > 0

            Var$ = Mid$(Var$,2,%MatchLen - 2)
            Var$ = GetEnv$( Var$ )
            S$ = Del$(S$,%MatchPos,%MatchLen)
            S$ = Ins$(Var$,S$,%MatchPos)
            Var$ = Match$("(?i)%{1}[a-z]{1}[a-z_0-9]*%{1}",S$)

        EndWhile

        Return S$

    ENDPROC

    PROC L2S$

        Parameters L$
        Declare S$
        L$ = ExpandEnvStr$( L$ )
        S$ = ShortName$( L$ )
        Return S$

    ENDPROC

    PROC S2L$

        Parameters S$
        Declare L$
        S$ = ExpandEnvStr$( S$ )
        L$ = LongName$( S$ )
        Return L$

    ENDPROC

    PROC ICONBUTTON1_ONCLICK

        GETMESSAGE
        DIALOGENDE% = 1

    ENDPROC

    PROC BUTTON1_ONCLICK

        GETMESSAGE
        Declare TmpStr$
        TmpStr$ = GetText$( LongVar& )
        TmpStr$ = L2S$( TmpStr$ )
        SetText ShortVar&, TmpStr$
        SetText Label_KurzErg&, TmpStr$

    ENDPROC

    PROC BUTTON2_ONCLICK

        GETMESSAGE
        Declare TmpStr$
        TmpStr$ = GetText$( ShortVar& )
        TmpStr$ = S2L$( TmpStr$ )
        SetText LongVar&, TmpStr$
        SetText Label_LangErg&, TmpStr$

    ENDPROC

    DLG&=CREATE("WINDOW",%HWND,"LongName / ShortName",22,20,964,297)
    USEFONT "MS Sans Serif",13,0,0,0,0
    SETDIALOGFONT 1
    LongVar& =@CREATE("EDIT",DLG&,"C:ProgrammeAvant BrowserAvant.exe",0021,0041,0910,0020)
    Create("Tooltip",DLG&,LongVar&,"LongName$")
    ShortVar& =@CREATE("EDIT",DLG&,"C:Progra~1AvantB~1Avant.exe",0021,0121,0910,0020)
    Create("Tooltip",DLG&,ShortVar&,"ShortName$")
    LabelLong& =@CREATE("TEXT",DLG&,"Bitte hier den LongName$ eingeben:",0021,0011,0178,0020)
    LabelShort& =@CREATE("TEXT",DLG&,"Bitte hier den ShortName$ eingeben:",0021,0081,0185,0020)
    Button_L2S& =@CREATE("BUTTON",DLG&,"LangName -> KurzName",0021,0161,0160,0030)
    Create("Tooltip",DLG&,Button_L2S&,"ShortName$")
    Button_S2L& =@CREATE("BUTTON",DLG&,"KurzName -> LangName",0021,0221,0160,0030)
    Create("Tooltip",DLG&,Button_S2L&,"LongName$")
    ICONBUTTON "7","C:PROFANROCICON.DLL",DLG&,0472,0070,0040,0040
    LET ICONBUTTON1&=@&(0)
    Label_LangErg& =@CREATE("TEXT",DLG&,"...",0191,0151,0736,0043)
    Label_KurzErg& =@CREATE("TEXT",DLG&,"...",0191,0211,0736,0043)
    SETFOCUS(DLG&)
    LET DIALOGENDE%=0

    WHILENOT DIALOGENDE%

        WAITINPUT

        If @EQU(%KEY,2)

            LET DIALOGENDE%= 1

        ELSEIF GETFOCUS(LongVar&) EDIT

        ELSEIF GETFOCUS(ShortVar&) EDIT

        ELSEIF GETFOCUS(Button_L2S&) BUTTON

            BUTTON1_ONCLICK

        ELSEIF GETFOCUS(Button_S2L&) BUTTON

            BUTTON2_ONCLICK

        ELSEIF GETFOCUS(ICONBUTTON1&) ICONBUTTON

            ICONBUTTON1_ONCLICK

        ENDIF

    WEND

    @DESTROYWINDOW(DLG&)
    ENDPROC --------------------------------------------------------------------------------> Dialogende
    SETAUTOPAINT 2
    >>>>> HIER KOPIERENDE FÜR EIGENEN CODEEINBAU <<<<<<<<<<<<<<<<<<<<
    Das folgende Hauptfenster ist nur zum Testen:
    WINDOWTITLE "DUMMYHAUPTFENSTER"
    WINDOWSTYLE 63
    WINDOW sub(%maxx,300),10-280,80
    CLS RGB(0,0,0)
    Color 10,0
    PRINT "Bitte aufs Systemmenükreuz klicken "
    DIALOG Dialog aufrufen!
    END

Schöne Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
13.10.2006  
 



Zum Quelltext


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

3.345 Betrachtungen

Unbenanntvor 0 min.
rquindt23.01.2018

Themeninformationen

Dieses Thema hat 1 Teilnehmer:

Michael Wodrich (1x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie