CryptIni.inc

'CryptIni.inc - Copyright © 2012 by Julian Schmidt
'Kontakt und Support über:
'http://julian-schmidt.xprofan.com/
Def DateiName(1) SubStr$(@$(1),-1,"\\")
Def DateiPfad(1) Translate$(@$(1),("\\" + DateiName(@$(1))),"")

Proc WriteCryptIni

    Parameters ini_datei$,rubrik$,eintrag$,wert$
    CryptINI(ini_datei$,$TempDir+"~"+DateiName(ini_datei$),"DECODE")
    WriteIni $TempDir+"~"+DateiName(ini_datei$),rubrik$,eintrag$,wert$
    CryptINI($TempDir+"~"+DateiName(ini_datei$),ini_datei$,"ENCODE")
    Erase $TempDir+"~"+DateiName(ini_datei$)

EndProc

Proc ReadCryptIni

    Parameters ini_datei$,rubrik$,eintrag$
    CryptINI(ini_datei$,$TempDir+"~"+DateiName(ini_datei$),"DECODE")
    Var wert$=ReadIni$($TempDir+"~"+DateiName(ini_datei$),rubrik$,eintrag$)
    Erase $TempDir+"~"+DateiName(ini_datei$)
    Return wert$

EndProc

Proc CryptINI

    Parameters Datei$, Datei2$, Modus$
    Declare tmp$
    Assign #1,Datei$
    Reset #1
    Assign #2, Datei2$
    ReWrite #2
    Close #2

    WhileNot eof(#1)

        Input #1,tmp$
        Assign #2,Datei2$
        Append #2
        case Upper$(Modus$)="ENCODE" : Print #2,Translate$(encode64(pwd$(tmp$)),"=","#")
        case Upper$(Modus$)="DECODE" : Print #2,pwd$(decode64(translate$(tmp$,"#","=")))
        Close #2

    EndWhile

    Close #1

EndProc