Allgemeine Fragen zur PROFAN Programmierung

Views (Heute): 252070 (13506)

| Suchen
| Zurück zur Übersicht

Autor | Thema: Dateiformate verknüpfen
Martin Pohl
| Datum:01.10.02 16:03 (martin_pohl@msn.com) |
Hallo! Wie kann ich mit Profan² 5.0 das Profan²-Programm selbst mit bestimmten Dateitypen verknüpfen?
Thorsten
| Datum:01.10.02 16:15 (galaxy@mrk-soft.de) |
Weniger ein Profan Problem !!! Windows - - Menü Ordneroptionen -> Dateitypen : dort über NEU einen neuen Datei-Typ festlegen, und das entsprechende Programm auswählen ... hier wird z.b für die Profan Quellcodes der Typ .P32 benutzt, und automatisch der Profan-Pad Editor geladen, da die kennung .PRF schon in Win ME belegt ist.
Martin Pohl
| Datum:01.10.02 17:33 (martin_pohl@msn.com) |
So meinte ich das nicht. Ich will, dass mein Programm sich bei anderen Leuten automatisch mit bestimmten Dateitypen verknüpft, ohne dass die das machen müssen. Wie z.B. WinZip, wo alle ZIP-Dateien automatisch zum Start von WinZip führen.
Rolf Koch
| Datum:01.10.02 21:14 (webmaster@rokosoft.de) |
Hi Martin, ich hoffe es läuft so - Profan 5.0 war doch schon 32 Bit. Passe aber bitte hier für das Beispiel die Pfade an. (Also Profed32.exe) - oder gib testhalber mal Notepad, Wordpad oder ein anderes Programm an. Im Ernstfall, musst Du nur an diese Stellen, den Exepfad Deiner Software eintragen lassen (per Variable am besten). Habe hier einfach testhalber mal *.rko genommen.
    declare test$
    test$="C:\PROGRAMME\PROFAN70\PROFED32.EXE %1"
    WriteIni "HKEY_0",".rko",""="Rokodatei"
    WriteIni "HKEY_0","ROKODATEI",""="Roko's Quelldatei"
    WriteIni "HKEY_0","ROKODATEI\DefaultIcon",""="C:\PROGRAMME\PROFAN70\PROFED32.EXE %1"
    WriteIni "HKEY_0","ROKODATEI\shell\open\command",""=test$
.... natürlich muss Dein Hauptprgramm auch empfänglich für externe Aufrufe sein (also wenn einer die verknüpfte Datei z.B. doppelklickt). Hier nur ein Beispiel, wie das Hauptprogramm z.B. Zeile für Zeile aus der verknüpften Datei einliest und dann in einer Proc etwas damit anstellen sollte.
    declare programm%,programm$
    declare zeile$
    Declare t$,n$

    PROC AUSWERTUNG
    'hier die Aktionen die Dein Programm von dem Externen aufruf
    'abarbeiten soll.
    ENDPROC

    let programm%=%ParCount
    let programm$=@Par$(programm%)

    if @neq$(programm$,"")
    ASSIGN #1,programm$
    RESET #1
    whilenot @eof(#1)
    input #1,zeile$
    Auswertung
    wend
    close #1

    else
    Let t$="Parameter (*.RKO Datei) fehlt!"
    Let n$="Starten Sie Ihr erzeugtes Programm *.RKO indem Sie es doppelklicken."
    MessageBox(n$,t$,16)
    endif
Rolf ;)
Rolf Koch
| Datum:01.10.02 22:03 (webmaster@rokosoft.de) |
Nochmal ich - habs etwas verbessert, waren kleine Fehler drin. Nimm dies dann einfach als Hauptprogramm. Dort wo die Messagebox ist, kannst Du ja das z.B. ausführen, wenn der User das Programm ohne Dateiaufruf startet.
    declare test$
    test$="C:\PROFAN\QUELLTEXTE\PARA.EXE %1"
    WriteIni "HKEY_0",".rko",""="Rokodatei"
    WriteIni "HKEY_0","ROKODATEI",""="Roko's Quelldatei"
    WriteIni "HKEY_0","ROKODATEI\DefaultIcon",""="C:\PROFAN\QUELLTEXTE\PARA.EXE %1"
    WriteIni "HKEY_0","ROKODATEI\shell\open\command",""=test$
    '******************************
    declare programm%,programm$,prog$
    declare zeile$
    Declare t$,n$

    PROC AUSWERTUNG
    Print zeile$
    ENDPROC

    let programm%=%ParCount
    let programm$=@Par$(programm%)
    let programm%=@Instr(".",Programm$)
    let prog$=@mid$(programm$,programm%,4)

    'Wenn die zugehörende Datei gestartet wird
    'z.B. Doppelklick auf *.rko Datei
    if @equ$(prog$,".rko")
    ASSIGN #1,programm$
    RESET #1
    whilenot @eof(#1)
    input #1,zeile$
    Auswertung
    wend
    close #1

    ' Hier kann das eigentliche Hauptprogramm hin!
    ' Wenn der User dieses Programm alleine startet.
    elseif @neq$(prog$,".rko")
    Let t$="Parameter (*.RKO Datei) fehlt!"
    Let n$="Starten Sie Ihr erzeugtes Programm *.RKO indem Sie es doppelklicken."
    MessageBox(n$,t$,16)
    endif
Hoffe es ist richtig so.. Rolf
Jörg Sellmeyer
| Datum: 02.10.02 00:16 (joerse@gmx.de) |
Hallo Martin, ...und wenn Du diese Zeile etwas änderst, kann Dein Programm auch mit Leerzeichen im Dateipfad umgehen: >test$="C:\PROFAN\QUELLTEXTE\PARA.EXE %1" test$="C:\PROFAN\QUELLTEXTE\PARA.EXE ";Chr$(34);"%1";Chr$(34)'=Anführungszeichen Gruß Jörg

| Zurück zur Übersicht