Verfolgung Speicherorte einer Datei

Hallo Zusammen!
Hoffe, ich habe jetzt alles richtig gemacht.

Mich würde interessieren, ob es möglich ist festzustellen, ob eine Datei in einen anderen Ordner verschoben wurde bzw. ob ich sehen kann, ob diese Datei vorher einen anderen Speicherort hatte und dann verschoben wurde. Ausserdem wäre für mich interessant, ob man auch erkennen kann wer dieses durchgeführt hat.
(Mehrere Nutzer arbeiten bzw. benutzen ein gleiches Laufwerk)

Danke für die Hilfe!

Hallo Emphe,

Hoffe, ich habe jetzt alles richtig gemacht.

möglich, zuviel sicher nicht :smile:

Mich würde interessieren, ob es möglich ist festzustellen, ob
eine Datei in einen anderen Ordner verschoben wurde bzw. ob
ich sehen kann, ob diese Datei vorher einen anderen
Speicherort hatte und dann verschoben wurde. Ausserdem wäre
für mich interessant, ob man auch erkennen kann wer dieses
durchgeführt hat.

Geht es um Offioceprogramme? Welches Office, MS,OO, Bildzeitungs Office, sonstiges Office?

Wie soll Office mitkriegen wenn es nicht läuft und jmd. bverschiebt Dateien?
Selbst wenn es läuft, irgednwie brauchst du da Windowsübergreifende Log-Programme.

In MS-Office könntest du jetzt bei XL oder Word prüfen wenn jmd, auf "Speichern klickt, welche Datei da wohin gespeichert wird.
Wird sie wieder geöffnet könntest du den Pfad verifizieren.

Wird schon kompliziert wenn jmd "Speeichern „unter“ anklickt.

Also ein bisschen was könnte man da mitloggen,a ber 100 %ig, viel Aufwand falls überhaupt 100 %ig möglich aus Office heraus.

Gibts da nicht bei Word Änderungsprotokollierung?

Gruß
Reinhard

Hi,

Mich würde interessieren, ob es möglich ist festzustellen, ob eine Datei in einen anderen Ordner verschoben wurde bzw. ob ich sehen kann, ob diese Datei vorher einen anderen Speicherort hatte und dann verschoben wurde.

  • Prinzipiell ist das Sache eines Netzwerkbetriebssystems. Aber ich rate 'mal (da Du in einem Office-, genauer Word-Forum, postest), daß Du innerhalb der Office-Datei dieses Protokoll führen willst.
  • Generell könnte das in Word97+höher so klappen, daß man in der Document_Open-Prozedur abfragt, wo die Datei sich gerade befindet.

Das setzt aber voraus, daß die Office-Datei Makros enthalten darf. Darf sie? Wenn ja, scheinst Du ja in Eurem Netz der absolute Herrscher über diese Datei zu sein. Dann würde ich so vorgehen:

  • Document_Open fragt ThisWorkbook.Path ab und vergleicht ihn mit dem letzten Eintrag in der Liste der Pfade.
  • Gibt’s diesen letzten Eintrag nicht oder ist er anders als der aktuelle Pfad, wird der aktuelle Pfad mit Datum und Uhrzeit in der Liste abgespeichert.
  • Diese Liste könnte man in verschiedenen Teilen dieser Datei führen, bspw. als Fußnoten, am Dokumentende etc. Hauptsache: alles ist verborgen formatiert und wird deshalb nicht angezeigt.

Die Programmierung einer solchen Liste ist nicht so furchtbar aufwendig, aber in meinen Augen zu aufwendig für den gewünschten Zweck. Denn:

Ausserdem wäre für mich interessant, ob man auch erkennen kann wer dieses durchgeführt hat. Mehrere Nutzer arbeiten bzw. benutzen ein gleiches Laufwerk.

  • Mit Application.UserName kann man zwar den User der Datei auslesen. Das ist aber der, der die Datei öffnen und bearbeiten darf.
  • Mit VBA von der Office-Datei aus den User auszulesen, der diese verschoben hat, geht meines Wissens nicht.

Summa summarum: für beide Anfragen gibt es keine Lösung. Es bleibt eine Sache des Netzwerkbetriebssystems.

Nur eine Frage hätte ich da noch:
Wenn denn „Mehrere Nutzer arbeiten bzw. benutzen ein gleiches Laufwerk.“, wie können sie das tun? Du willst doch ein eventuelles Verschieben protokollieren. Wenn das einer aus der Gruppe der berechtigten User macht, wäre die Datei für die anderen ja verschwunden und sie könnten nicht mehr damit arbeiten.

Rücke doch bitte mit genaueren Informationen heraus. Nach dem vorstehenden erscheint mir Deine Anfrage ein wenig unausgegoren.

HTH.

Markus

Hallo Emphem., Markus,

das Nachfolgende ist primär an Markus gerichtet.
Alles was ich mit VBA erwähne geht, teilweise aber recht aufwendig, keine Sache die man mal so eben codiert.
Also nix für eine Forumsanfrage.

  • Generell könnte das in Word97+höher so klappen, daß man in
    der Document_Open-Prozedur abfragt, wo die Datei sich gerade
    befindet.

Man kann noch mmehr, man kann das Erstelldatum usw. auslesen. Und das über ein Klassenmodul in der Normal.dot bzw. Personl.xls von jeder Datei die geöffnet gespeichert wird.
Dabei kann man dann festhalten, in welchem Speicherort gespeichert wird, von welchem User, unter welchem neuen Namen.

Somit kann man dann schon eine Art Überwachungslogbuch aufbauen für jede datei.
Wie schon angedeutet, möglicherweise problematisch alle dateien zu erfassen siehe „Speichern unter“

Alles was dann User außerhalb von Office mit den dateien machen, umbenennen verschieben, mehrfach kopieren kriegt man nicht mit.

Das setzt aber voraus, daß die Office-Datei Makros enthalten
darf. Darf sie? Wenn ja, scheinst Du ja in Eurem Netz der
absolute Herrscher über diese Datei zu sein. Dann würde ich so
vorgehen:

Ich kenne haslt mehr Möglichkeieten in VBa, dein Ansatz ist völlig richtig, bei Word würde ich da diese Logdaten in einer txt-Datei o.ä. „Pflegen“.
Oder in einer doc die immer minimiert bzw. unsichtbar geöffntet ist, aber das sind Feinheiten.

Die Programmierung einer solchen Liste ist nicht so furchtbar
aufwendig,

für sdas was du schilderst ist das richtig.

  • Mit VBA von der Office-Datei aus den User auszulesen, der
    diese verschoben hat, geht meines Wissens nicht.

Auch richtig, dazu braucht man einWindowsübergreifendes Überwachungsprogramm. Das kann schon jeden Usernamen protokollieren der dateien verschiebt.
Problem ist, das ist der Windows-Username.
Okay, in VBa kann man auch den auslesen.
Aber, ich sehe da schon wieder mögliche Schwierigkeiten

Summa summarum: für beide Anfragen gibt es keine Lösung.

Das kann ich so nicht unterschreiben.
Möglicherweise keine die alles erfasst, aber schon nahe 100% geht.
Allerdings nur mit mir fremden Fremdprogrammen und dann doch viel Aufwand in Vba.

Rücke doch bitte mit genaueren Informationen heraus. Nach dem
vorstehenden erscheint mir Deine Anfrage ein wenig
unausgegoren.

„ein wenig“ *lächel*

Ich denke, der Anfrager muß gewaltig viel von seinen Hoffnungen begraben oder mich privat anmailen, dann aknn man ihm was kleines basteln mit Path Vergleich o.ä.

Gruß
Reinhard

Moin, Emphemera,

nachträglich geht das nicht, weil diese Information vom Betriebssystem nicht festgehalten wird. In Zukunft auch nicht, weil dazu das Betriebssystem erweitert werden müsste. Jedenfalls nicht ohne weiteres - ich glaube nicht, dass wir einen Spezialisten an Bord haben, der das hinkriegt.

Alles VBA hilft da nicht, wenn der Anwender eine Datei per Explorer verschiebt, per EIngabeaufforderung oder gar per selbstgeschriebener Software.

Gruß Ralf

Hallo Reinhard,

Man kann noch mmehr, man kann das Erstelldatum usw. auslesen. Und das über ein Klassenmodul in der Normal.dot bzw. Personl.xls von jeder Datei die geöffnet gespeichert wird. Dabei kann man dann festhalten, in welchem Speicherort gespeichert wird, von welchem User, unter welchem neuen Namen.

Genau das hat der Anfrager m.E. nicht wissen wollen. Ich habe die Anfrage so verstanden, daß man innerhalb einer Office-Datei protokolliert, wer die Datei wann verschoben hat.

Alles was dann User außerhalb von Office mit den dateien machen, umbenennen verschieben, mehrfach kopieren kriegt man nicht mit.

Sag’ ich doch mit meinem Hinweis auf die Abfrage in der Document_Open-Prozedur.

Das setzt aber voraus, daß die Office-Datei Makros enthalten darf. Darf sie? Wenn ja, scheinst Du ja in Eurem Netz der absolute Herrscher über diese Datei zu sein.

Das ist der springende Punkt. Wenn der Anfrager das darf, kann er gleich den Admin bitten, netzwerkbetriebssystemseitig die fragliche Datei zu überwachen.

bei Word würde ich da diese Logdaten in einer txt-Datei o.ä. „Pflegen“.

Ich nicht. Der Anfrager will ja jemandem auf die Spur kommen, der die Datei ohne sein Wissen kopiert oder verschiebt. Einen anderen Sinn ergibt seine Anfrage für mich nicht. Nach dem Kopieren/Verschieben der Datei wäre die Verbindung zur Textdatei aber getrennt.

Summa summarum: für beide Anfragen gibt es keine Lösung.

Das kann ich so nicht unterschreiben.

Ich für meine Interpretation der Anfrage schon.
Der Anfrager hat allerdings nicht genau beschrieben, was er will.
Vor allem stört mich folgender Gedanke: einer aus der Gruppe der Berechtigten verschiebt die Datei irgendwohin. Die Datei ist also nicht mehr an ihrem alten Platz. Was machen dann die anderen Berechtigten?

Gruß

Markus

Alles VBA hilft da nicht, wenn der Anwender eine Datei per
Explorer verschiebt, per EIngabeaufforderung oder gar per
selbstgeschriebener Software.

Hallo Ralf,

ich bin sicher, prinzipiell geht totale Kontrolle. Klar ist Vba da eingeschränkt. Immerhin kann man mit Vba z.B. in Outlook Ordner „überwachen“ und wenn da eine neue Mail reinkommt code starten.

Ansonsten muß nach natürlich Big Brother immer dann laufen wenn auch Windows läuft.
Dann kann man schon alles überwachen.

Kennst du fielmon.exe und regmon.exe? Beides kostenlos von MS, jetzt nicht mehr, jetzt haben sie etwas anders kostenlos, das verbindet beide Features in einem Programm.

Regmon schreibt permanent alle Zugriffe auf die Registry mit, also welches Programm verändert da wo was usw.

Filemaon macht das für alle Ordner und Verzeichnisse und Dateien auf den FPn.

Damit habe ich mal vor langer Zeit, NATÜRLICH NUR zu Lernzwecken :smile:)herausfinden wollen wohin eigentlich Trialsoftware ihre erste Benutzung hinschreiben um dann nach 40 tagen sagen zu können, Zeit abgelaufen.
Bzw. wenn man dann die Software enfernt und wieder auffspielt, läuft die Software gar nicht sondern sagt, nö, hier war ich schon 40 tage.

Wenn man dann noch, sagen wir mal in Word mitprotokolliert, das kann Vba, welcher Worduser bzw. Windows-Useer zu welchen Zeiten Zeiten Word benutzt hat, kann man klitzeklein belegen wer wann was verschob usw.
Die Möglichkeiten eines Admins in einem Netztwerk kenne ich nicht.

Zu den beiden Programmen, für so eine 24h Aufzeichnung müßte deren Aufzeichungswut stark gedrosselt werden, sonst haste Terabyte an daten pro tag *gg*

Kaum zu glauben was da wind erkennbar an lese- und Schreibzugriffen binnen einer Sekunde wo gar kein User was macht so alles protokolliert.

Gruß
Reinhard