Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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
GELÖST

Ersteller einer Datei oder eines Ordners auslesen Visual Basic

Frage Entwicklung Visual Studio

Mitglied: callback

callback (Level 1) - Jetzt verbinden

16.04.2010, aktualisiert 11:34 Uhr, 9258 Aufrufe, 4 Kommentare

Hallo,

Zuerst mal mein Problem,

Auf einem Netzlaufwerk liegen sehr viele ordner, unterordner, und verschiedene Dateien (.doc,docx,xls,pdf,txt,csv......)
Nun versuche ich irgendwie ein Programm zu schreiben, dass am anfang eine Eingabemaske öffnet, wo man den Pfad zu einem Ordner angibt (soweit ja kein Problem).
Und Nun will ich, dass das Programm aus diesem Ordner und aus allen Unterordnern alle Dateien, egal was für eine Datei, mir auflistet, mit exaktem Pfad und dem Ersteller dieser Datei.

Ich habe das ganze schon mal in batch versucht, allerdings zeigt mir "dir /q" nicht den ersteller einer Datei, sondern nur den letzten der diese Datei bearbeitet hat.

Und da ich dass ganze für alle beliebigen ordner verwenden will, und es auch benutzerfreundlich gestalten will, versuche ich dass ganze nun in Visual Basic.

Danke für Euer HIlfe

CALLBACK

Edit:

Sorry hab ich vergessen:

BS: Win Xp Pro SP3
Mitglied: ChrFriedel
16.04.2010 um 11:23 Uhr
Hallo Callback,

also ich hab da gerade mal ein wenig gespielt. Im Windows7 Explorer kann man sich ja den Ersteller anzeigen lassen. Bei Word und Excel ist das auch problemlos machbar. Wobei allerdings der Ersteller erst angezeigt wird wenn ich die mit Rechtsklick -> neues Worddokument erstellte Datei einmal öffne und speichere.
Bei *.txt hab ich es aber absolut nicht hinbekommen mir von Windows anzeigen zu lassen wer diese Datei erstellt hat. Deswegen vermute ich jetzt einfach mal das der Ersteller nicht von Windows gespeichert wird sondern höchstens von einer Anwendung wie eben z.B Word und Excel. Ich lasse mich da aber gerne eines Besseren belehren.

grüße
Bitte warten ..
Mitglied: callback
16.04.2010 um 11:32 Uhr
also unter xp ist es möglich den User anzuzeigen, der eine .txt datei zuletzt bearbeitet hat, dass geht über den cmd befehl "dir /q", allerdings zeigt es mir hier nicht den ersteller sondern nur den User an, der die Datei zuletzt bearbeitet hat. Über rechtsklick funktioniert dies bei txt dateien wirklich nicht, da diese rein in ASCII Code geschrieben sind, hier ist der ersteller bzw. bearbeiter im NTFS Dateiverzeichnis gespeichert.

Danke für deine Hilfe, allerdings suche ich einen Weg dies zu automatiesieren, da des ein sehr Großer Ordner ist, ich sags mal so als ich mir aus einem der zehn unterordner die verzeichnisstruktur auslessen lies, (nur Unterordner, keine Dateien) was ein excel Sheet fast voll, Sprich so um die 50000 Unterordner, und der Ordner war noch relativ klein, also wäre es von Hand ziemlich viel arbeit.

Ich habe in der zwischenzeit nochmal was in VBS gefunden:
01.
set shell = CreateObject("Shell.Application") 
02.
 
03.
set folder = shell.NameSpace("D:\") 
04.
set folderitems = folder.items 
05.
 
06.
fmtid = "{9B174B34-40FF-11D2-A27E-00C04FC30871}" 
07.
 
08.
if folderitems.Count>0 then 
09.
   for each folderitem in folderitems 
10.
      besitzer = (folderitem.ExtendedProperty(fmtid & ",4")) 
11.
      list = list & folderitem.name & _ 
12.
         ": Besitzer ist " & besitzer & vbCr 
13.
   next 
14.
end if 
15.
 
16.
MsgBox list, vbInformation
Allerdings steht hier bei mir am schluss kein User dran, sondern nur "/name Ordner/: Besitzer ist:", aber danach kein User, vlt. kann mir hier jemand weiterhelfen.

MfG
CALLBACK


[Edit Biber] Codetags nachgetragen. [/Edit]
Bitte warten ..
Mitglied: ChrFriedel
16.04.2010 um 12:41 Uhr
Ich hab dich schon verstanden Und genau das ist ja das Problem das ich gemeint habe. Ich glaube das Windows den Ersteller nicht selbst im Dateiverzeichnis mit speichert sondern das das höchstens Anwendungen beim speichern eines Dokumentes machen... und du somit chancenlos bist bei den *.txt da diese Informationen eben einfach nicht vorliegen...

Stell mal im WinExplorer ein das er dir den Ersteller eines Dokuments anzeigt. Dann leg mit rechter Maustaste ein neues Worddokument an. Du wirst sehen das der Ersteller leer bleibt. Erst wenn du diese neue Datei mit Word öffnest und speicherst erscheint dein Username unter Ersteller.... deswegen meine Vermutung das Windows einfach egal ist wer die Datei anlegt...


Aber wie gesagt... keine Garantie
Bitte warten ..
Mitglied: callback
21.04.2010 um 14:06 Uhr
schade, dass das nicht geht aber ich hab mir jetzt ein batchfile gebasstelt, das mir die Besitzer aller Dateien eines Ordners in eine .txt datei auflistet
Code:
01.
echo off 
02.
cls 
03.
set /P pfadtorun=Bitte den Pfad zum Ordner angeben, der gescannt werden soll: 
04.
set /P pfadtolog=Bitte den Pfad zur logdatei angeben: 
05.
dir "%pfadtorun%" /A:-D /S /Q > "%pfadtolog%" 
06.
exit
MfG

CALLBACK


^[Edit Biber] Codetags. [/Edit]
Bitte warten ..
Ähnliche Inhalte
VB for Applications
gelöst Visual Basic persönliche MSTSC Verbindung (3)

Frage von florianza zum Thema VB for Applications ...

Visual Studio
gelöst Remotedienst prüfen mit Visual Basic (1)

Frage von flyingmichael zum Thema Visual Studio ...

Visual Studio
Mit Visual Basic auf Shopware 5 API zugreifen (9)

Frage von SmogKiel zum Thema Visual Studio ...

Batch & Shell
gelöst Datei aus Verzeichnis auslesen? (4)

Frage von freshman2017 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Backup

Veeam-Fehler bei Bandwechsel: Timed out waiting for tape

Tipp von goRaini zum Thema Backup ...

Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(29)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Internet
gelöst Mitarbeiter surft auf unerwünschter Seite - Wie damit umgehen? (54)

Frage von sabines zum Thema Internet ...

Netzwerke
LAN2LAN Verbindung sehr langsam flaschenhals gesucht (27)

Frage von PixL86 zum Thema Netzwerke ...

Router & Routing
PFsense - Netzverbindung steht, aber kein Internet vorhanden (25)

Frage von aschmid zum Thema Router & Routing ...

LAN, WAN, Wireless
Rogue Access Point (20)

Frage von Axel90 zum Thema LAN, WAN, Wireless ...