Français
Forum

Hintergrundprozesse, comment richtig?

 

Clemens
Meier
je suis derzeit à einer Internetanwendung tour, chez qui bestimmte Teile aussi la cousine64 kodiert/dekodiert volonté doit. cela Kodieren braucht toujours sa Zeit, besonders chez grand Fichiers. alors voudrais je cet Kodierung im Hintergrund courir laisser, so dass cela Hauptprogramm sans Problem weiterlaufen peux. Daher veux je volontiers une Hintergrundprozess starten.

Folgendes Szenarium:
j'ai une tête.exe , un avec XProfan compiliertes Stück Programme
ensuite habe je une la cousine64.prc . qui communication entre beiden soll via pipe.pcu stattfinden.
Beim finissons de tête.exe soll aussi qui Hintergrundprozess finissez volonté (pas dass cela Ding comme corps d'un mort im grenier bleibt).

Soviel je sais, peux je cela la cousine64.prc comme paramètre de tête.exe starten. et là je ne...aucune la fenêtre generiere, erscheint es aussi nirgendwo, au maximum im Taskmanager comme Prozess. Richtig? Starte je es am Besten avec WinExec ... ? là bekomme je un Handle zurück et pourrait avec Destroy(&handle) den Prozess wieder stoppen. aussi richtig?

j'ai ici im Forum mais aussi autre Opportunités trouvé. Allerdings wurde là seulement jeweils une .exe gestartet, toujours sans paramètre. ensuite wurde dans einem anderen Fil erwähnt, dass es sous Win9X cela Aufrufen plusieurs Profanprogramme gleichzeitig trop Abstürzen führt. malheureusement wurde qui Diskussion là pas trop Ende geführt, so dass je pas sais, si es pour une Workaround gibt.

et letztes: probablement wird qui la cousine64.prc pas qui einzige Prozess rester. Gäbe es Probleme, si es plusieurs volonté?

Salut
 
XProfan 9.1; XP SP2; FF; Editpad
22.05.2006  
 



Hm ici habs la fois zusammengepinselt, cela sollte pour une erste orientation ausreichen:
KompilierenMarqueSéparation
 {$cleq}
def $apptitle ClemensVorlage
cls
 $U pipe.pcu = pipe.
 $U thread.pcu = thread.
declare pipe&

if %parcount

    encode

else

    declare ex&
    app

endif

pipe.close pipe&
end

proc app

    print app
    case pipe.is(myClemensPipe) : error Pipe already exists, abort.
    pipe&:=pipe.create(myClemensPipe)
    declare fle$
    fle$:=dfokk.bmp
    casenot fileexists(fle$) : error File +fle$+ doesnt exist, abort.
    pipe.push pipe&,>+fle$
    shell par$(0)+ -
    thread.start 1,3
    usermessages 1

    whilenot ex&

        waitinput

    wend

    thread.stop 1
    print Tjoar fertig :P [taste]
    waitkey

endproc

proc encode

    print encoder
    casenot pipe.is(myClemensPipe) : error Pipe doesnt exists, abort.
    pipe&:=pipe.create(myClemensPipe)
    declare fle$
    fle$:=del$(pipe.pop(pipe&),1,1)
    casenot fileexists(fle$) : error File +fle$+ doesnt exist, abort.
    declare mem#,siz&
    siz&:=filesize(fle$)
    casenot siz& : error File +fle$+ is without content.
    print File: +fle$
    dim mem#,siz&
    blockread(fle$,mem#,0,siz&)
    declare i&,s$,c&
    for i&:=0 to siz& do begin
    c&+
    s$:=s$+.hexx(byte(mem#,i&))

    if c&>=512

        c&:=0
        pipe.push pipe&,<+s$
        s$:=

    endif

    end
    case len(s$) : pipe.push pipe&,<+s$
    pipe.push pipe&,.//bye

    proc .hexx

        parameters b&
        case b&<16 : return 0+hex$(b&)
        return hex$(b&)

    endproc

endproc

proc thread.do

    parameters n&
    declare s$
    s$:=mid$(pipe.get(pipe&),1,1)

    if n&==1

        if (s$==<)

            print pipe.pop(pipe&)

        elseif (s$==.)

            print done.
            ex&+
            sendmessage(%hwnd,1,0,0)

        endif

    endif

endproc

proc error

    parameters s$
    messagebox s$,$apptitle,0
    end

endproc

cela Demo zeigt aussi, cela Du sehrwohl aussi mehere Prozesse charger peux, Du Dir ensuite mais aussi un eigenes Protokoll créer musst à Inputs trop koordinieren.
 
22.05.2006  
 




Clemens
Meier
Que le Pipe c'est moi bien sûr et une Threadid ist pour cela Protokol avec den eigenständigen Prozessen reserviert. cet Prozesse devoir permanent im Hintergrund courir. Via Pipe et un Handle pro Prozess verläuft qui communication. Doch comment steht es avec den Prozessen selbst. Gibt es Probleme, si Je l' Prozess comment dessus angegeben aufrufe, alors plusieurs Profaninstanzen im grenier habe.

ou bien soll je plutôt sur une Aufruf comment sous [...]  construire? là wird mais seulement une exe aufgerufen. je veux mais pas verschiedene exe anbieten, mais possible comme umbenannte prc-Fichiers,

alors: mon Hauptprogramm est programm.exe
dans diesem Programme volonté deux Prozesse gestartet
cela une hieß prozess1.prc et wurde zuvor umbenannt trop p1.ttt. cet soll avec
programm.exe p1.ttt gestartet volonté
cela zweite hieß prozess2.prc et wurde zuvor umbenannt trop p2.ttt. cet soll ensuite avec
programm.exe p2.ttt gestartet volonté.
Beide Prozesse avons ne...aucune eigenes la fenêtre, il y a alors aussi aucun Fehlermeldungen ou bien Messages. Alles wird via Protokol à cela Hauptprogramm gemeldet, so dass cet puis réagir peux, si nötig.

Gäbe es avec cela Probleme? Welches procéder ist pour den Aufruf qui PRC-Fichiers trop empfehlen? je hoffe, mon Problem ist maintenant bien sûr geworden (quand même merci iF)
 
XProfan 9.1; XP SP2; FF; Editpad
22.05.2006  
 




Gibt es Probleme, si Je l' Prozess comment dessus angegeben aufrufe, alors plusieurs Profaninstanzen im grenier habe.


forfaitaire non.


Gäbe es avec cela Probleme?


forfaitaire non.


ou bien soll je plutôt sur une Aufruf comment sous...


Steht Dir libre.


Welches procéder ist pour den Aufruf qui PRC-Fichiers trop empfehlen?


Siehe Source.

PS: c'est unwichtig comment Votre Exen heissen, et wieviele exen (ou bien prcs) Du erstellst, et wieviele Prozesse courir. mon Source dessus demonstriert: une Exe, deux Prozesse, un Source.
 
22.05.2006  
 




Clemens
Meier
mon Problem était wohl, dass je cela Fil [...]  gelesen habe (System ou bien Programmabsturz, si plusieurs Profanprogramme courir). mais si Du mir maintenant erklärst, dass es là absolu aucun Probleme gibt, égal quelle Methode je verwende, ensuite werde je dir cela seulement einmal croyons. mais wehe, irgendein win95 / 98 User reißt mir den tête ab, ensuite besuche je toi
 
XProfan 9.1; XP SP2; FF; Editpad
23.05.2006  
 



répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

1.064 Views

Untitledvor 0 min.
Sven Bader02.08.2021
Jochen Roxlau24.03.2015
Gary1234506.02.2013
Pedro Miguel20.10.2012
plus...

Themeninformationen

cet Thema hat 2 participant:

Clemens Meier (3x)
iF (2x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie