Autor | Thema: Daten nach Gebrauch wieder löschen | | Datum:30.08.02 23:11 
| |
ich habe ein Programm das Bilder, die es anzeigt, vorher auf die Platte speichert. Nun möchte ich diese Datein automatisch wieder löschen, sobald das Programm beendet wird. Dabei sollten die Datein sofort gelöscht werden wenn das Programm nicht mehr aktiv ist d.h. im grund, das auch die Dateien entfernt werden sollen, wenn ich das programm über den taskmanager [strg+alt+entf] beende oder ich den pc neustarte. ist es möglich das ganze auf irgend eine weise zu erledigen ohne dabei auf ein weiteres programm zurück zu greifen.
wäre es vielleicht möglich, eine art schalter zu programmierenm, die die dateien hält und, sobald das programm beendet wird, löscht?
ich habe sowas schon mal gesehen nur weis ich nicht wie die person diese möglichkeit bewerstelligt hat......
über brauchbare informationen, ratschläge oder quelltexte :) würde ich mich sehr freuen.
mfg flo
|
| | Datum:31.08.02 08:01 
(galaxy@mrk-soft.de) | |
Hi Floh,
dieses Thema hatten wir doch in ähnlicher Form schon mal von
dir.
Das beenden eines Progrmams lässt sich auf 2 arten Sicher
abfangen:
a). du verwendest den Window-Stype 512, das Programm beenden
must du aber nun üner %Key=2 auf jedenfalls selber abfangen.
diese wird beim X ausgelöst, danach kannste ja noch eine
Lösch-routiene oder anderes aufrufen.
b) ab Profan 7.0 geht das auch über eine Message $10. Diese
gesetzt, musss das beenden mit %UMessage = $10 auch hier
selber abgefragt werden.
So, wenn jedoch das Programm mit gewalt einfach Terminiert
wird, oder gar der Rechner Resetet, läsat sich NICHTS
abfangen.
|
| | Datum:31.08.02 12:12 
| |
Ich weis das dieses thema schon mal behandelt wurde, doch wurde dieses auch befriedigend beantwortet? ich denke nicht. deine antwort hat mir nun wieder einige gute ideen gebracht ......
ich danke dir
a). du verwendest den Window-Stype 512, das Programm beenden
must du aber nun üner %Key=2 auf jedenfalls selber abfangen.
diese wird beim X ausgelöst, danach kannste ja noch eine
Lösch-routiene oder anderes aufrufen.
ich benutze kein normales fenster sondern ein fenster ohne titelleiste, dabei möchte ich den style 240 beiberhalten. Ist es bei diesen windowstyle noch nötig/möglich die message abzufangen und vorallen, wie mache ich das?
b) ab Profan 7.0 geht das auch über eine Message $10. Diese
gesetzt, musss das beenden mit %UMessage = $10 auch hier
selber abgefragt werden.
diese methode höre ich heute zum ersten mal. Aus diesem grund habe ich nicht die leiseste Ahnung wie das funzen soll...Kannst du das erklären, muss ich die mesage beim starten setzen.......ec.?
mfg
|
| | | Datum:01.09.02 18:45 
(galaxy@mrk-soft.de) | |
USERMESSAGES $10
WINDOWSTYLE 26
WINDOW 5,5-200,200
WHILE 1
WAITINPUT
CASE %UMESSAGE = $10 : BREAK
WEND
BEEP
Siehe auch in der Profanhilfe unter User-Messages !!!
|
| | Datum:02.09.02 16:37 
| |
danke
|
| | Datum:02.09.02 18:17 
| |
Nochmal zum thema taskmanager:
den taskmanager sollten man auch nicht abschalten können, dafür ist win einfach zu instabiel, aus diesem grund, habe ich mal etwas anderes versucht:
ich möchte meine benutzer schon die möglichkeit geben das programm übe den taskmanager zu beenden, doch soll ich die mögllichkeit haben, dies "mit zu bekommen". also frage ich die tasten ab uns sobald diese gedrückt werden beende ich mein programm, ich weiss, nicht die beste lösung, aber vielleicht ja mal ein anreiz oder so.........
hier bitte mal testen
http://mitglied.lycos.de/loay/test.zip
ist nur wenige kb gross
|
| | Datum:02.09.02 21:17 
(schmidts@flat2serv.de) | |
Konnte das Programm problemlos über den Taskmanager beenden, auch als da "Geht jetzt nicht mehr" stand. Windows 2000, abgeschossen im Manager über den Tab "Prozesse", Taskman gestartet mit "STRG+LSHIFT+ESC". Dort heisst es zwar "Test", aber unter "Prozesse" ordnungsgemäss "PROFRUN32".
Warum sind hier eigentlich alle ganz geil drauf, dass man die Programme nicht beenden kann?
|
| | Datum:02.09.02 22:18 
(carlo.keil@web.de) | |
> Warum sind hier eigentlich alle ganz geil drauf, dass man
> die Programme nicht beenden kann?
Fast alle, bitte.
Ich verstehe das auch nicht und hoffe deshalb auf ein paar ernst gemeinte Antworten.
In freudiger Erwartung
Carlo
|
| | Datum:03.09.02 08:44 
(galaxy@mrk-soft.de) | |
>Warum sind hier eigentlich alle ganz geil drauf, dass man die
>Programme nicht beenden kann?
Hi Sven,
Die Frage läst sich leicht beantworten. Vor länger Zeit
hatte ich auch mal eine Anfrage, ob es möglich sei, einem
Rechner derart zu schützen, das nur der eigene Benutzer
diesen Benutzen kann. Dazu hat jeder Benutzer eine Chip-Karte
mit Verschlüsselter Kenung drauf bekommen, und jeder Rechner
hatte ein Chip-Drive. Sobald die Karte nicht im ChipDrive
steckte, sollte der Screen Schwarz werden, Karte wieder drinn,
mit zugehörigen Kennwort, Rechner wieder frei.
Und jetzt der Hacken: Das Programm darf NICHT beendet werden,
ewgal wie, weder über Task-Manager, noch mit gewalt. Denn
sonst wäre das ganze relativ sinsoll mit dem Schutz.
Das ganze war für Win98 Relativ leicht zu lösen, das kleine
Programm wird in der RegEdit gesatartet, und fragt ab, ob
Karte im ChipDrive. Wennn nicht, sperre die Kombination
CTRL + ALT + DEL, und prüfe, ob Karte eingeschoben wird.
Bei richtigem Kennwort wieder CTRL + .... freigeben.
Tja, aber dann sollte das unter Win NT auch gelöst werden,
bekam dazu sogar nen Rechner gestellt für die Test-Zeit,
fand aber keine Lösung zum Problem, den bekanntlich
funktioniert das abstellen der 3 Tasten unter NT nicht.
Letztentlich hab ichs aufgegeben, die bisherige Lösung als
Doku dem auftraggeber überreicht und das wars dann.
Die neue Lösung sah dann wohl so aus, das unter NT ein VXD
Treiber oder sowas in der richtung erstellt wurde, der in
der Tasten-Routiene mit drinn sass und die Tastatur sowie
Maus komplett gespert hat, wenn keine Karte im ChipDrive
war, bzw. die richtige Karte.
Vieleicht ist es ja wieder genau so ein Problem, leider kann
ich aber zu VXD !! Lösung nix sagen.
|
| | Datum:03.09.02 09:02 
(schmidts@flat2serv.de) | |
Hallo Thorsten,
die Sache ist genauso einfach wie kompliziert: Du brauchst keinen VXD Treiber (den kannst Du auch nicht mit Delphi programmieren, brauchst C). Nutze einen Service (Dienst), der wird vor dem Login geladen. Jeder Dienst hat Eigenschaften wie "AllowPause", "AllowStop" (SERVICE_ACCEPT_SHUTDOWN, SERVICE_ACCEPT_STOP, SERVICE_ACCEPT_PAUSE_CONTINUE) usw. Wenn Du die auf "False" setzt dann kannst Du den Dienst nicht beenden (Fehlermeldung: Konnte ... nicht beenden). Testhalber kannst Du die flat2serv-Dienste vom Postman bzw. Softroute nutzen, die können auch andere Programme starten. Da wäre halt nur das Problem, dass die Dienste mit Profan² so eine Sache sind ...
Mfg.
Sven Schmidts
|
| | Datum:03.09.02 18:13 
| |
@ Sven Schmidts
das programm beendet sich nach dem :
"Geht jetzt nicht mehr"
automatisch d.h. wenn du task startest, wird das programm vom rpogramm selber beendet.........
sollte es eigentlich...
hier der quelltext:
Def HiByte(1) Div&(&(1),$100)
Def LoByte(1) And(&(1),$FF)
Def Sleep(1) !"KERNEL32","Sleep"
Def MakeWord(2) Or(%(1),Mul(%(2),$0100))
Def MapVirtualKey(2) !"USER32","MapVirtualKeyA"
Def GetHK_VKeyValue(1) LoByte(MapVirtualKey(SendMessage(&(1),1026,0,0),2))
Def GetHK_Modifier(1) HiByte(SendMessage(&(1),1026,0,0))
Def GetHK_Char(1) Chr$(LoByte(MapVirtualKey(SendMessage(&(1),1026,0,0),2)))
Def SetHotKey(3) SendMessage(&(1),1025,MakeWord(%(2),%(3)),0)
Declare hk&
WindowTitle "test"
windowstyle $F0
Cls
SetWindowPos %hwnd=0,0-10,10;-1
print " die Datei heisst im taskmanager ''Test''"
print " beim ersten versuch ist die datei eingetragen und könnte beendet werden"
Print " bitte beenden sie das programm aber nicht sondern kommen sie in das programm ''test'' zurück"
Print " drücken sie anschließend eine beliebige taste"
waitkey
waitkey
waitkey
Print " probiere sie nun das programm über den taskmanager zu beenden"
Let hk&=Control("msctls_hotkey32","",$54010200,0,0,0,0,%hwnd,2000,%hinstance)
While 1
SetFocus(hk&)
If Equ(GetHK_Modifier(hk&),6)
end
endif
Wend
|
| | Datum:03.09.02 18:17 
| |
vergesss wir das thema.........
|
| | Datum:03.09.02 18:39 
(schmidts@flat2serv.de) | |
Stimmt ;)
Eines noch: Woher willst Du wissen, ob sich das Programm selbst beendet oder vom Taskman beendet wird?
|
| | Datum: 03.09.02 19:59 
| |
also bei mri funzt das so:
wenn der benutzer str + alt eingibt, erkennt dies das programm und weiss nun will der benutzer mich beenden, also beende ich mich voprher selber und kann so auch die zu schützenden dateien entfernen
|
|
|