Autor Beitrag
Andysaw
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 30



BeitragVerfasst: Do 28.11.02 00:41 
hi,
Ich hab ne Datei auf die schreibt ein proggi und ein zweites delphi
proggi soll lesen davon.
wie verhindere ich konflickte ?
MfG
Andy
Andreas Pfau
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 997



BeitragVerfasst: Do 28.11.02 23:12 
tja, da müsstest du diene Progs kommnizieren lassen, z.B. Messages posten, wenn das andere Prog schreiben darf oder so. Du kannst das auch über DDE machen.
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 28.11.02 23:27 
Das setzt aber vorraus, dass bei de Programme von ihm sind und den Eindruck habe ich nicht.
Andreas Pfau
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 997



BeitragVerfasst: Fr 29.11.02 12:27 
Ach so, du willst verhindern, dass wenn fremdes Prog A aus Datei X list, fremdes Prog B nicht reinschreiben kann? Sorry, das war mir nicht klar.

OK, Vorausgesetzt, du weißt, wenn Prog A list, kannst du gleichzeitig die Datei öffnen und zwar im Modus "OF_SHARE_DENY_WRITE" (mit OpenFile). Dann kann Prog B nicht mehr schreiben (Danach wieder Datei freigeben).

Wenn du allerdings nicht weißt, wann Prog A liest, dann habe ich auch keine Ahnung...
Udontknow
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2596

Win7
D2006 WIN32, .NET (C#)
BeitragVerfasst: Fr 29.11.02 12:53 
Genau das Gegenteil ist gefordert! Ein Programm soll schreiben, das andere ohne Konflikte lesen. Also fmShareDenyNone. Das Topic ist ein bisschen unglücklich gewählt, er will Konflikte verhindern, nicht die Lese-/Schreibvorgänge an sich.

BTW: Wofür ist eigentlich fmShareCompat?

Cu,
Udontknow
Andysaw Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 30



BeitragVerfasst: Fr 29.11.02 14:49 
hi leute,

das proggy das schreibt kann ich nichtbeeinflussen, ich weiss auch nicht wann es schreibt. ich könnte höchstens meinem delphi proggy sagen wann es lesen könnte. (Wer weiss wie???) Hab nur keinen plan davon. sowas wie if dátei schon open lass finger weg, wenn datei zu dann lies. aber was mach ich wenns zeitlich so doof kommt, dass delphi noch am lesen ist und das andere proggy will schreiben? dann wieder konfl... das schreibproggy beendet sich einfach bei konflikt..... und ich kann das schreibproggy nich ändern. kann ich nich iigendwie so lesen das es niemanden stört? (verzweifel)

MfG
ANdy
ase
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 203

Gentoo, Windows 9X, ME, 2k, NT, XP
Delphi 7 Prof., PHP 5 (Eclipse 3 SDK)
BeitragVerfasst: Do 19.12.02 17:44 
Titel: vorschlag
servus!

ich weiß nicht ob es weiterhilft...

wenn du weißt in welchem modus das fremde programm die datei öffnet, dann weißt du auch in welchem modus du die datei öffnen musst. wenn also der schreiber die datei mit share_exclusive öffnet/erstellt, dann hast du schonmal keine chance. dann kannst du das nicht realisieren. wenn der schreiber aber mit share_deny_write oder so öffnet, dann kannst du mit fmRead öffnen. wenn du das machst, dann gibt es denke ich 2 dateizeiger. jeder zeiger für ein programm - sicher bin ich mir da aber nicht. dann kannst du lesen wann du willst. wie gesagt, probier erst indem du dir selber einen schreiber schreibst!!! ;)