Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Word Dateien nach Vorlage suchen

Mitglied: MTM

MTM (Level 1) - Jetzt verbinden

05.10.2005, aktualisiert 10.10.2005, 5502 Aufrufe, 16 Kommentare

Wir haben hier in der Firma demnächst wieder eine Änderung der Dokumentenvorlagen. Im gleichen Zug wollen wir die Anzahl von 130 auf ca. 40 zurückschrauben. Das Problem ist nun rauszufinden, welche Vorlagen wirklich benutzt werden. Die Dateien liegen lokal bei jedem User unter D:\DokVorlagen (als Beispiel) und da in den entsprechenden Ordnern (Intern / Extern / Abteilung). Wir können daher (weil lokal) nicht scannen, wann welche Datei das letzte mal genutzt wurde bzw. ob es überhaupt noch genutzt wird.

Die derzeit einzige Möglichkeit die mir eingefallen ist: Scannen der Abteilungs- / User- / Ablagelaufwerke (am Wochenende) nach .doc Dateien. Ist es möglich zu sehen, welche Dateien aus welcher Vorlage erzeugt wurden und gibt es Tools / Scripte dafür? Dann könnte man eine Nutzungsstatistik erstellen und danach aussortieren. Hat sowas schonmal wer gemacht?

Für jeden andere Idee bin ich im übrigen auch dankbar...
Mitglied: 16640
05.10.2005 um 14:06 Uhr
Wenn ihr die lokalen Pfade kennt, dann bau doch in das Loginscript ein DIR auf diese Pfade ein mit einer Umleitung in eine Textdatei auf dem Server.

Und alternativ: warum gehst Du nicht über die administrativen Freigaben auf die Clientrechner zum Scannen der Vorlagen?


hand/dba
Bitte warten ..
Mitglied: MTM
05.10.2005 um 14:14 Uhr
Weil es 2500 Clientrechner sind, das wäre mir händisch zuviel Arbeit. Auch eine Auswertung der DIR Befehle wäre arg umfangreich, aber eine erste Idee, danke.
Bitte warten ..
Mitglied: Swissler
05.10.2005 um 14:33 Uhr
Warum um Gottes Willen sind bei 2500 Rechner die Vorlagen lokal ?????????

Ich würde das so schnell als möglich ändern, z. B. über Logon-Scripts o. ä. Dann hast Du nachher wenigsten Ruhe.

greets
Bitte warten ..
Mitglied: MTM
05.10.2005 um 14:38 Uhr
Ja, leider. Ich habe das Gebiet übernommen und bisher wurde es so gemacht. Deswegen will ich auch die Anzahl jetzt mal reduzieren. Es wurde irgendwann mal beschlossen, dass die lokal liegen und damit ist's dann gut. Verteilung usw. ist kein Thema (diverse Methoden, je nachdem ob WinXP, Citrix, Laptop usw.), aber lokal ist erstmal gegeben. Frag mich nicht warum.

Ändern kann ich es erstmal nicht auf die Schnelle, das würde hier im Haus ewig dauern. Aber langfristig bestimmt mein Ziel, ja
Bitte warten ..
Mitglied: Swissler
05.10.2005 um 14:49 Uhr
Mein Beileid!

Versuch mal Treesize (http://www.jam-software.de/treesize/ ), vielleicht hilft Dir das Tool weiter. Du kannst damit auch auf jeden PC (über Admin-Shares), aber ist trotzdem Knochenarbeit.
Bitte warten ..
Mitglied: 8644
05.10.2005 um 15:11 Uhr
Hi,

ich hab da mal ein bisschen probiert (Delphi). Mit etwas Zeit, kriege ich da was hin.
Ich könnte auf die Schnelle eine Textdatei zaubern, die du dann in Excel auswerten kannst.
Falls Interesse besteht, gib mal Bescheid!

Psycho
Bitte warten ..
Mitglied: MTM
05.10.2005 um 15:14 Uhr
Kannst du auch den Dateinamen der Vorlagedatei auslesen (wird von Word gespeichert)? Dann wäre es eine echte Hilfe.
Bitte warten ..
Mitglied: 8644
05.10.2005 um 15:18 Uhr
So ungefähr würde es aussehen

D:\Dokumente\xyz.doc;Template: c:\Vorlagen\normal.dot

Man kann da auch noch mehr Infos raus holen (letzte Änderung usw.)

Ich denke mal, dass ich das bis morgen hin bekommen könnte.

Psycho
Bitte warten ..
Mitglied: MTM
05.10.2005 um 15:23 Uhr
Ideal wäre folgendes:

Pfad inkl. Dateiname;Vorlage;letzte Änderung (TT.MM.JJJJ)

Wenn du das hinkriegen könntest, wäre das doch eine arge Hilfe für mich.
Bitte warten ..
Mitglied: 8644
05.10.2005 um 15:56 Uhr
ein paar Fragen noch:

->Ich würde alle lokalen Platten scannen?
->Soll das Proggi automatisch loslegen?
->Gibt es ein gemapptes Laufwerk für alle?

Dann könnte es so gehen: Progi in jenes LW legen und per Richtlinie( ist nicht mein Fach) starten. Für jeden Rechner eine Datei erstellen bzw. alles in eine schmeißen (ich weiß ja nicht wie viele das werden!) Die einträge per ";" trennen, damit kommt Excel dann klar.

Das Proggi an sich geht schon, muß nur noch ein paar Feinheiten ändern!

Psycho
Bitte warten ..
Mitglied: Biber
05.10.2005 um 22:17 Uhr
Moin MTM,

wenns mal etwas länger dauert....

bzw. bis Psycho was Professionelles hat, hab ich solange einen Batch-Oneliner für Dich:
(ist alles in einer Zeile!)
01.
--------snipp ListAllDocNDots.bat
02.
@echo off & for /r E:\ %%i in (*.doc) do for /f %%a in ('type "%%i"^|find /i ".DOT"') do if errorlevel 0 echo %%~i;%%a;%%~ti
03.
----------snapp ListAllDocNDots.bat
Ausgabe bei mir:

01.
E:\Microsoft\rk\W2KSupporttools\ldp.doc;Normal.dot;28.05.2001 23:05
02.
E:\Microsoft\rk\W2KSupporttools\dskprtrb.doc;Normal.dot;28.05.2001 23:00
03.
E:\Microsoft\rk\W2KSupporttools\dommig.doc;Normal.dot;20.03.2002 06:39
04.
E:\Microsoft\rk\W2KSupporttools\dommig.doc;Windows;20.03.2002 06:39
05.
E:\Microsoft\rk\W2KSupporttools\sreadme.doc;Normal.dot;19.04.2002 15:41
06.
E:\Microsoft\rk\W2KSupporttools\iadstools.doc;Normal.dot;28.05.2001 23:06
07.
E:\jokes\Windows_fehlermeldungen.doc;Normal.dot;30.08.2005 15:58
08.
E:\jokes\revengeo.doc;Normal.dot;22.08.2005 10:38
09.
....
einige Word-*docs haben mehrere Vorlagen, deshalb die innere FOR-Schleife.
(siehe die dommig.doc oben)

HTH
Frank / der Biber aus Bremen
Bitte warten ..
Mitglied: 8644
06.10.2005 um 07:11 Uhr
Guten Morgen,

wenns mal etwas länger dauert....

... man hat ja noch andere Vepflichtungen!

Ich wäre dann aber auch soweit!
Das Proggi speichert die Ausgabe im Programmverzeichnis unter [Computername].csv
Es legt beim Start sofort los und beendet sich wieder, der User merkt kaum was - es geht recht schnell.

Falls Interesse besteht; PN mit Mail-Addi an mich und ab gehts.

Psycho
Bitte warten ..
Mitglied: MTM
06.10.2005 um 07:46 Uhr
Am idealsten per Parameter, also Programm.exe <Pfad> <Logdatei>

Die Logdatei wird per Append geöffnet, notfalls lösch ich sie von Hand vorher.

Kommst du bei Pfad auch mit \\Server\Volume klar oder muss es gemappt sein?
Bitte warten ..
Mitglied: 8644
06.10.2005 um 07:52 Uhr
Gib mir mal deine Mail-Adresse durch, dann schicke ich dir was zum testen.
Ist dann einfacher, für mich, deine Wünsche einzubauen!

Psycho
Bitte warten ..
Mitglied: 8644
10.10.2005 um 10:04 Uhr
Guten Morgen,

auf Wunsch der Batch-Fraktion stelle ich mal vor, wie sowas unter Delphi aussehen könnte:

function GetFileProperty(const FileName: WideString): string;
var
i : Integer;
PropSetStg : IPropertySetStorage;
PropSpec : array[2..19] of TPropSpec;
PropStg : IPropertyStorage;
PropVariant : array[2..19] of TPropVariant;
Rslt : HResult;
S : string;
Stg : IStorage;
begin
Result := '';
try
OleCheck(StgOpenStorage(PWideChar(FileName), nil, STGM_READ or
STGM_SHARE_DENY_WRITE,
nil, 0, Stg));
PropSetStg := Stg as IPropertySetStorage;
OleCheck(PropSetStg.Open(FmtID_SummaryInformation,
STGM_READ or STGM_SHARE_EXCLUSIVE, PropStg));
for I := 2 to 19 do
begin
PropSpec[I].ulKind := PRSPEC_PROPID;
PropSpec[I].PropID := I;
end;
Rslt := PropStg.ReadMultiple(18, @PropSpec, @PropVariant);
OleCheck(Rslt);
if Rslt <> S_FALSE then for I := 2 to 19 do
begin
S := '';
if PropVariant[I].vt = VT_LPSTR then
if Assigned(PropVariant[I].pszVal) then
S := PropVariant[I].pszVal;
case I of
2: S := Format('Title: %s', [S]);
3: S := Format('Subject: %s', [S]);
4: S := Format('Author: %s', [S]);
5: S := Format('Keywords: %s', [S]);
6: S := Format('Comments: %s', [S]);
7: Begin
S := Format(';%s', [S]);
Result := S;
End;
8: S := Format('Last saved by: %s', [S]);
9: S := Format('Revision number: %s', [S]);
10: S := Format('Total editing time: %g sec',
[Comp(PropVariant[I].filetime) / 1.0E9]);
11: S := Format('Last printed: %s',
[FileTimeToDateTimeStr(PropVariant[I].filetime)]);
12: S := Format('Create time/date: %s',
[FileTimeToDateTimeStr(PropVariant[I].filetime)]);
13: Begin
S := Format(';%s',
[FileTimeToDateTimeStr(PropVariant[I].filetime)]);
result := result + S;
End;
14: S := Format('Number of pages: %d', [PropVariant[I].lVal]);
15: S := Format('Number of words: %d', [PropVariant[I].lVal]);
16: S := Format('Number of characters: %d',
[PropVariant[I].lVal]);
17:; thumbnail
18: S := Format('Name of creating application: %s', [S]);
19: S := Format('Security: %.8x', [PropVariant[I].lVal]);
end;

end;
finally
end;
end;

procedure GetAllFiles(mask: string);
var
search : TSearchRec;
directory : string;
property : String;
sl : TStringList;
i : Integer;
begin
sl := TStringList.Create;
directory := ExtractFilePath(mask);

find all files
if FindFirst(mask, $23, search) = 0 then
begin
repeat
Try
property := GetDocInfo(directory + search.Name);
Except
property := ';;';
End;
sl.Add(directory + search.Name + property);
until FindNext(search) <> 0;
end;
if FindFirst(directory + '*.*', faDirectory, search) = 0 then
begin
repeat
if ((search.Attr and faDirectory) = faDirectory) and (search.Name[1] <> '.') then
GetAllFiles(directory + search.Name + '\' + ExtractFileName(mask));
until FindNext(search) <> 0;
FindClose(search);
end;
sl.SaveToFile(ausgabe);
sl.Destroy;
end;

Mein Dank geht hierbei auch an eine sehr gute Delphi-Seite : http:
www.delphi-tipps.de

Psycho
Bitte warten ..
Mitglied: Biber
10.10.2005 um 10:08 Uhr
Die Batch-Fraktion dankt!

Biber, 2. Stellvertretender Sprecher und Alterspräsident
Bitte warten ..
Ähnliche Inhalte
Mac OS X

Word-Datei wurde zur Editor-Datei, Fußnoten weg

Frage von welo123Mac OS X1 Kommentar

Hi Leute, ich arbeite mit meinem MAC BOOK PRO und Microsoft Word 2007 an einer wissenschaftlichen Arbeit. Vor Kurzem ...

Exchange Server

Such-Index nach Neuerstellung defekt

Frage von CoverianExchange Server

Guten Morgen zusammen, wir haben hier aktuell ein Problem das mir schlaflose Nächte bereitet. Es handelt sich um einen ...

Batch & Shell

Batch: Word Datei kopieren und umbennen

Frage von ExcelNoob177Batch & Shell9 Kommentare

Hallo Gemeinde, ich möchte mir die Arbeit sparen 200 mal ein Worddokument zu kopieren und umzubenennen. Die Namen habe ...

iOS

Word-Datei in Word App (iPad) aktualisieren und mit NAS synchronisieren

Frage von JacenCaedusiOS1 Kommentar

Hallo zusammen Wir haben bei uns privat folgende Konstellation: Wir nutzen ein NAS, wessen Daten auf den iPhones und ...

Neue Wissensbeiträge
Windows Server

Zähe Update-Installation auf Windows Server 2016

Information von kgborn vor 5 StundenWindows Server1 Kommentar

Mir sind in der Vergangenheit immer wieder Beschwerden von Admins unter die Augen gekommen, die sich über die doch ...

Humor (lol)
Turnschuhe per Firmware lahmlegen
Information von Henere vor 7 StundenHumor (lol)3 Kommentare

Und was kommt demnächst ? Bekomme ich kein Klopapier mehr, weil der Spender einem DDOS unterliegt ? :-) Ich ...

Sicherheit

Sicherheitsrisiko in WinRAR und Co. durch Schwachstelle in UNACEV2.DLL

Information von kgborn vor 11 StundenSicherheit

In der seit 2005 nicht mehr aktualisierten Bibliothek UNACEV2.DLL gibt es eine Path-Traversal-Schwachstelle. Diese ermöglicht es, bei ACE-Archiven Dateien ...

Internet

CDU Propaganda: Urheberschutz im Internet - Ende des digitalen Wild-West

Information von Frank vor 1 TagInternet4 Kommentare

Hallo Administratoren, aus einem Kommentar heraus habe ich folgenden Beiträge von Herr Sven Schulze und Axel Voss (beide CDU ...

Heiß diskutierte Inhalte
Hardware
Frage an Kenner von 5,25 Zoll Laufwerken
Frage von DerWoWussteHardware43 Kommentare

Moin Kollegen. Hier wird gerade im Archiv gewühlt und 5,25 Zoll Disketten ("2S/HD", 96TPI) sollen eingelesen werden. Ich habe ...

Datenbanken
PHP Fatal error: Uncaught Error: Call to undefined function oci connect
gelöst Frage von PlanitecXDatenbanken22 Kommentare

Hallo Zusammen, ich sitze seit Tagen am Problem das ich keine PHP Anwendung mit Anbindung zu Oracle zum laufen ...

Hardware
PC im Selbstbau, Workstation, mittelklasse Gaming
gelöst Frage von MrRobot1997Hardware21 Kommentare

Hallöchen Leute, ich bin seit einigen Jahren leider nicht mehr wirklich im Bild, wenn es um die Hardware und ...

Windows Server
User auf Server Install-Rechte geben
gelöst Frage von killtecWindows Server17 Kommentare

Hi, ich möchte auf mehreren W2016 Servern einem bestimmten User das Recht zum Installieren von Programmen geben. Er soll ...