PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : "Programm in Benutzung" Tool - gibt es so etwas?



TLab3000
22.06.2012, 03:44
Hallo liebe Mit-Forenten,

das Problem gibt es eigentlich schon, seit es Netzwerke gibt, aber trotzdem finde ich keine Lösung:
Auf mehreren Rechnern ist ein Programm installiert, dessen Datenbank auf einem NAS liegt. Die DB ist nicht netzwerkfähig, es dürfen nicht mehrere User gleichzeitig auf sie zugreifen, sonst rumpelt es.
Gibt es denn kein Tool, dass mir in einem Windows-Rechner im Netzwerk zeigt, ob auf einem der anderen Rechner das Programm oder der entsprechende Prozess läuft und mir im Idealfall verbietet, selbst dass Programm zu starten, wenn bereits ein anderer Rechner auf die DB zugreift? Kennt jemand so etwas?

Vielen Dank und Grüße

Timo

amokkx
22.06.2012, 06:37
Das müsste man selbst programmieren oder eventuell bei der Datenbank einstellen, dass nur 1 User angemeldet sein darf.
Ich habe so ein ähnliches Problem über die Datenbank selber gemacht:
- User 1 startet Programm
- Beim Anmelden an der Datenbank wird eine Transaction gesetzt und ein update auf eine dummy-Tabelle gemacht.
- User 2 versucht sich anzumelden und macht das gleiche update-statement
-> update-statement fliegt auf die Fresse, da bereits eine andere Transaction darauf zugreift
Das müsstest du dann eigentlich nur abfangen und eine entsprechende Fehlermeldung ausgeben.

easy.2ci
22.06.2012, 07:50
Kannst du nicht den Aufruf des Programmes in eine Batch packen, die vorher eine Temp Datei neben der Datenbank ablegt?

Die Batch müsste dann zuerst ob diese Temp Datei schon besteht, wodurch klar ist das jemand anders gerade arbeitet.

Dann könntest du einen entsprechenden Text ausgeben.


Ist zwar keine 100%ige Lösung, aber wenn dir quick & dirty schon reicht...