Español
Fuente/ Codesnippets

Auslesen Ermitteln Exe Kompilat Versión Xprofan

 
Tiempo como kleine Función chkXProfanVersionByExe el como Parámetro una Dateinamen esperado y el Versionsnummer zurückliefert:
KompilierenMarcaSeparación
'{$cleq}
CLS
print chkXProfanVersionByExe(loadfile$("","*.exe"))
waitinput
end

proc chkXProfanVersionByExe

    parameters fle$
    var vers&=0
    var ofm&=SET("FileMode",0)
    var fh&=assign(fle$)

    if fh&

        openRW fh&

        ifnot %ioResult

            seek fh&,128
            seek fh&,getLong(fh&)+7
            case getlong(fh&) = $4E41464F : vers&=instr(chr$(getByte(fh&)),"0000000003456789ABCDEFGHIJKLMNOPQRSTUVWXYZ")*0.5
            close fh&

        endif

        assign fh&,""

    endif

    SET("FileMode",ofm&)
    return vers&

ENDPROC


Umgesetzt basierend en Informationen de una Code de Roland
RGH

KompilierenMarcaSeparación
Declarar Expediente$, hDatei&, Versión$, Adresse&
CLS
Datei$ = LoadFile$("Profn-Programa abierto:", "*.exe")

If Expediente$ > ""// Lo wurde una Expediente ausgewählt

    hDatei& = Asignar(Expediente$)
    OpenRW hDatei&// Expediente binär abierto
    Seek hDatei&, $80// An dieser Position es el Adresse des Compilates
    Adresse& = GetLong(hDatei&)
    Seek hDatei&, Adresse&// hier beginnt el Compilat
    Versión$ = GetChar$(hDatei&, 18)
    // El ersten 11 Signo siempre " RGH-PROFAN"

    If Mid$(Versión$, 1, 11) <> " RGH-PROFAN"

        MessageBox("Kein con PROFAN² oder XProfan erzeugtes Programa!", "Hinweis:", 16)
        Cerrar hDatei&
        End

    EndIf

    // Das 12. Signo Es el Versión des Compilates y lässt Rückschlüsse en el
    // XProfan-Versión a
    Versión$ = Substr$(Versión$, 12)

    Select Versión$

        CaseOf "3" : Imprimir "Profan² 5 (32 Bit)"

        CaseOf "4" : Imprimir "Profan² 5 (32 Bit) con $P* verschlüsselt"

        CaseOf "5" : Imprimir "Profan² 6 (32 Bit)"

        CaseOf "6" : Imprimir "Profan² 6 (32 Bit) con $P* verschlüsselt"

        CaseOf "7" : Imprimir "Profan² 7"

        CaseOf "8" : Imprimir "Profan² 7 con $P* verschlüsselt"

        CaseOf "9" : Imprimir "XProfan 8"

        CaseOf "A" : Imprimir "XProfan 8 con $P* verschlüsselt"

        CaseOf "B" : Imprimir "XProfan 9"

        CaseOf "C" : Imprimir "XProfan 9 con $P* verschlüsselt"

        CaseOf "D" : Imprimir "XProfan 10"

        CaseOf "E" : Imprimir "XProfan 10 con $P* verschlüsselt"

        CaseOf "F" : Imprimir "XProfan 11 oder X2"

        CaseOf "G" : Imprimir "XProfan 11 oder X2 con $P* verschlüsselt"

        Otherwise  : Imprimir "Unbekannte Versión " + Versión$

    EndSelect

    Cerrar hDatei&
    WaitInput

EndIf

End


Wegen uno Fehlers en XPSE bezüglich el Función GetLong por XPSE (momentan) sólo GetWord-Workaround posible:
KompilierenMarcaSeparación
 {$cleq}
CLS
imprimir chkXProfanVersionByExe(loadfile$("","*.exe"))
waitinput
end

proc chkXProfanVersionByExe

    parámetros fle$
    var vers&=0
    var ofm&=SET("FileMode",0)
    var fh&=assign(fle$)

    if fh&

        openRW fh&

        ifnot %ioResult

            seek fh&,128
            seek fh&,getWord(fh&)+getWord(fh&)*65536+7
            caso getWord(fh&)+getWord(fh&)*65536 = $4E41464F : vers&=instr(chr$(getByte(fh&)),"0000000003456789ABCDEFGHIJKLMNOPQRSTUVWXYZ")*0.5
            close fh&

        endif

        assign fh&,""

    endif

    SET("FileMode",ofm&)
    volver vers&

ENDPROC


311 kB
Hochgeladen:14.12.2010
Ladeanzahl108
Descargar
 
14.12.2010  
 



Zum Quelltext


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

3.254 Views

Untitledvor 0 min.
Member 862464113.05.2024
Sven Bader09.03.2021
Matzbub29.12.2018
AndreasS27.11.2018
Más...

Themeninformationen

Dieses Thema ha 1 subscriber:

iF (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie