Autor
|
Thema: zuletzt gespeichert von (4619 mal gelesen)
|
alterHausmeister Mitglied Hausmeister
Beiträge: 470 Registriert: 02.02.2009
|
erstellt am: 26. Aug. 2009 09:35 <-- editieren / zitieren --> Unities abgeben:
Hallo an alle, aus gegebenen Anlaß würde ich mir gern über VBS die Dateiinfo "zuletzt gespeichert von" auslesen lassen. Gefunden habe ich zu diesem Thema diesen Beitrag ... Set fs = CreateObject("Scripting.FileSystemObject") Set f1 = fs.GetFile("c:\test\test.txt") li = "" li = li & "Existiert Datei?: " & fs.fileexists (f1) & vbcr li = li & "Name: " & f1.Name & vbcr li = li & "Pfad mit Dateiname: " & f1.Path & vbcr li = li & "Dospfadname: "& f1.shortpath & vbcr li = li & "Dosname: "& f1.shortname & vbcr li = li & "Datei-Endung: "& fs.GetExtensionName(f1) & vbcr li = li & "Pfad: " & fs.GetParentFolderName(f1) & vbcr li = li & "Laufwerk: " & fs.GetDriveName(f1) & vbcr li = li & "Typ: " & f1.Type & vbcr li = li & "Erstellt am: " & f1.DateCreated & vbcr li = li & "Letzter Zugriff: " & f1.DateLastAccessed & vbcr li = li & "Letzte Änderung: " & f1.DateLastModified & vbcr li = li & "Grösse: " & f1.Size & " Bytes" & vbcr li = li & "Attribut: " & f1.attributes & vbcr msgbox(li) ... und diesen hier ... Set objShell = CreateObject("Shell.Application") Set objFolder = objShell.NameSpace("c:\test") Set objFolderItem = objFolder.ParseName("test.txt") For i = 0 to 33 strHeader = objFolder.GetDetailsOf(objFolder.Items, i) strValue = objFolder.GetDetailsOf(objFolderItem, i) If strValue <> "" Then Wscript.Echo strHeader & vbTab & strValue End If Next Beide lesen eine Menge Infos aus, aber nicht "zuletzt gespeichert von"! Gibt es da eventuell sowas in der Art : *fantasiemodusan* li & "zuletzt gespeichert von: " & f1.USERLastsaved & vbcr *fantasiemodusaus* Ich kann dazu nichts finden. @edit: ... Tippfehler ------------------ lg, der Hausmeister _______________________________________
Ich bin nicht gestört, ich bin verhaltensoriginell. [Diese Nachricht wurde von alterHausmeister am 26. Aug. 2009 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stelli1 Ehrenmitglied Verm.-Ing.
Beiträge: 1521 Registriert: 17.08.2005 Map 2000-2010, Rasterdesign MapGuide 6.5 - 2010 Oracle 9i,10g Enterprise autodesk Topobase 2-2010 VS6, VS.net 2010
|
erstellt am: 26. Aug. 2009 10:39 <-- editieren / zitieren --> Unities abgeben: Nur für alterHausmeister
|
alterHausmeister Mitglied Hausmeister
Beiträge: 470 Registriert: 02.02.2009
|
erstellt am: 27. Aug. 2009 08:49 <-- editieren / zitieren --> Unities abgeben:
Dann will ich die Frage mal erweitern. Woher weiß denn WinDoof, wer zuletzt gespeichert hat? Sofern eine Datei im Netzwerk gespeichert wurde, erscheint bei den Eigenschaften die Registrierkarte <Statistik> und dort steht, wer (und wann) zuletzt gespeichert hat. Kann man das in irgendeiner Programmiersprache auslesen?
------------------ lg, der Hausmeister _______________________________________ Ich bin nicht gestört, ich bin verhaltensoriginell. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bst Mitglied
Beiträge: 192 Registriert: 31.08.2004
|
erstellt am: 27. Aug. 2009 11:05 <-- editieren / zitieren --> Unities abgeben: Nur für alterHausmeister
|
StefanBerlitz Ehrenmitglied V.I.P. h.c. IT Admin (CAx)
Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 27. Aug. 2009 11:58 <-- editieren / zitieren --> Unities abgeben: Nur für alterHausmeister
Hallo alterHausmeister, Zitat: Original erstellt von alterHausmeister: Woher weiß denn WinDoof, wer zuletzt gespeichert hat? Sofern eine Datei im Netzwerk gespeichert wurde, erscheint bei den Eigenschaften die Registrierkarte <Statistik> und dort steht, wer (und wann) zuletzt gespeichert hat
Hm, bei mir nicht. Ich hab üblicherweise die Reiter "Allgemein", "Sicherheit" und "Dateiinfo", bei SolidWorks Dokumente oder auch Officedokumenten zusätzlich noch "Benutzerdefiniert", aber ich hab noch nirhendwo so etwas wie "Statistik" gesehen. Ich glaube nicht, dass das von Windows kommt, sondern von irgendeiner Zusatzsoftware, die sich da in die Dialogbox der Dateieigenschaften mogelt. Ciao, Stefan ------------------ Inoffizielle deutsche SolidWorks Hilfeseite http://solidworks.cad.de Stefans SolidWorks Blog Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Thomas Harmening Ehrenmitglied V.I.P. h.c. Arbeiter ツ
Beiträge: 2897 Registriert: 06.07.2001 what i think? I think, no skill
|
erstellt am: 27. Aug. 2009 16:33 <-- editieren / zitieren --> Unities abgeben: Nur für alterHausmeister
hilft das? habe es nur mit Excel-vba getestet. Code: Sub auslesen() Set fs = CreateObject("Scripting.FileSystemObject") Set f1 = fs.GetFile("x:\CAD\data\catia\opbox\ma01\Dom_4_holi2.log") li = "" li = li & "Existiert Datei?: " & fs.fileexists(f1) & vbCr li = li & "Name: " & f1.Name & vbCr li = li & "Pfad mit Dateiname: " & f1.Path & vbCr li = li & "Dospfadname: " & f1.shortpath & vbCr li = li & "Dosname: " & f1.shortname & vbCr li = li & "Datei-Endung: " & fs.GetExtensionName(f1) & vbCr li = li & "Pfad: " & fs.GetParentFolderName(f1) & vbCr li = li & "Laufwerk: " & fs.GetDriveName(f1) & vbCr li = li & "Typ: " & f1.Type & vbCr li = li & "Erstellt am: " & f1.DateCreated & vbCr li = li & "Letzter Zugriff: " & f1.DateLastAccessed & vbCr li = li & "Letzte Änderung: " & f1.DateLastModified & vbCr li = li & "Grösse: " & f1.Size & " Bytes" & vbCr li = li & "Attribut: " & f1.Attributes & vbCr li = li & "Dateneigner: " & GetFileOwner(f1) '("x:\CAD\data\catia\opbox\ma01\Dom_4_holi2.log") MsgBox (li)End Sub 'Dieser Quellcode stammt von http://www.activevb.de 'und kann frei verwendet werden. Für eventuelle Schäden 'wird nicht gehaftet. 'Um Fehler oder Fragen zu klären, nutzen Sie bitte unser Forum. 'Ansonsten viel Spaß und Erfolg mit diesem Source! '------------- Anfang Projektdatei Projekt1.vbp ------------- '--------- Anfang Formular "Form1" alias Form1.frm --------- ' Steuerelement: Textfeld "Text1" ' Steuerelement: Schaltfläche "Command1" ' Steuerelement: Beschriftungsfeld "Label1" Private Declare Function GetFileSecurity Lib "advapi32.dll" Alias _ "GetFileSecurityA" (ByVal lpFileName As String, _ ByVal RequestedInformation As Long, pSecurityDescriptor As _ Any, ByVal nLength As Long, lpnLengthNeeded As Long) As Long Private Declare Function GetSecurityDescriptorOwner Lib _ "advapi32.dll" (pSecurityDescriptor As Any, pOwner As Long, _ lpbOwnerDefaulted As Long) As Long Private Declare Function LookupAccountSid Lib "advapi32.dll" Alias _ "LookupAccountSidA" (ByVal lpSystemName As String, ByVal _ lpSid As Long, ByVal Name As String, cbName As Long, ByVal _ ReferencedDomainName As String, cbReferencedDomainName As _ Long, peUse As Long) As Long Private Declare Function IsValidSid Lib "advapi32.dll" (ByVal pSid _ As Long) As Long Private Const OWNER_SECURITY_INFORMATION As Long = 1 Public Function GetFileOwner(ByVal FullFileName As String) As String Dim lngSize As Long Dim bytSecurityDescr() As Byte Dim lpSid As Long Dim lngDummy As Long 'Länge des Security Deskriptors ermitteln: Call GetFileSecurity(FullFileName, OWNER_SECURITY_INFORMATION, _ ByVal 0, 0, lngSize) If lngSize <> 0 Then 'Security Deskriptor lesen: ReDim bytSecurityDescr(lngSize - 1) If GetFileSecurity(FullFileName, OWNER_SECURITY_INFORMATION, _ bytSecurityDescr(0), lngSize, lngSize) <> 0 Then 'Owner SID ermitteln: Call GetSecurityDescriptorOwner(bytSecurityDescr(0), _ lpSid, lngDummy) If lpSid <> 0 Then GetFileOwner = Sid2String(lpSid) Else Err.Raise 513, , "GetSecurityDescriptorOwner Error" End If Else Err.Raise 513, , "GetFileSecurity Error" End If Else Err.Raise 513, , "GetFileSecurity Error" End If End Function Private Function Sid2String(ByVal lpSid As Long, _ Optional ComputerName As String = vbNullString) As String ' Übersetzt den SID in einen Accountnamen ' IN: lpSid: Zeiger auf einen SID ' ComputerName: Computername auf dem der SID (Konto ID) ' zum Kontonamen aufgelöst werden soll ' OUT: Kontoname als String Dim cbAccountName As Long, cbDomainName As Long Dim strAccountName As String, strDomainName As String Dim peUse As Long Dim lngRet As Long If IsValidSid(lpSid) <> 0 Then lngRet = LookupAccountSid(ComputerName, lpSid, 0, cbAccountName, _ 0, cbDomainName, peUse) strAccountName = Space(cbAccountName + 1) strDomainName = Space(cbDomainName + 1) lngRet = LookupAccountSid(ComputerName, lpSid, strAccountName, _ cbAccountName, strDomainName, cbDomainName, peUse) If lngRet <> 0 Then Sid2String = Left(strDomainName, cbDomainName) & "\" & _ Left(strAccountName, cbAccountName) Else Sid2String = "<UNKNOWN SID>" End If Else Sid2String = "<INVALID SID>" End If End Function
http://www.activevb.de/tipps/vb6tipps/tipp0683.html Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bst Mitglied
Beiträge: 192 Registriert: 31.08.2004
|
erstellt am: 27. Aug. 2009 17:47 <-- editieren / zitieren --> Unities abgeben: Nur für alterHausmeister
|
| Konstrukteur Maschinenbau (m/w/d) | Menschen und Technologien zu verbinden, den Perfect Match für unsere Kunden zu gestalten, immer die richtigen Expert:innen für die jeweilige Herausforderung zu finden - das ist unser Anspruch bei FERCHAU und dafür suchen wir dich: als ambitionierte:n Kolleg:in, der:die wie wir Technologien auf die nächste Stufe bringen möchte. Wir realisieren spannende Projekte für namhafte Kunden in allen Technologiebereichen ... | Anzeige ansehen | Konstruktion, Visualisierung |
|
alterHausmeister Mitglied Hausmeister
Beiträge: 470 Registriert: 02.02.2009 Hardwareprobleme: keine Softwareprobleme: P3D-2023
|
erstellt am: 28. Aug. 2009 00:12 <-- editieren / zitieren --> Unities abgeben:
So, nach diversen Versuchen und viel gelesenem Text scheint der erste Hinweis von BST vielversprechend. Allerdings habe ich das Geheimnis von Dsofile noch nicht lösen können. Ich will im vorliegendem Fall Dateien aus ACAD + Aufsatz beobachten, dabei wird (warum auch immer) der Name von dem, der speichert, mitgespeichert. Siehe Bildchen (@Stefan)... Die Dateien, die die Anwendung selbst speichert (LOG usw.) tragen diese Info nicht. Da es sich wie gesagt nicht um Office-Dateien handelt, nützt der Hinweis von Thomas nichts. Hebe ich mir aber auf, bei Office-Dateien sehr hilfreich. Und wenn ich eine Lösung finde, werde ich die Meinung von Stelli1 ändern ... Danke für die Bemühungen! ------------------ lg, der Hausmeister _______________________________________ Ich bin nicht gestört, ich bin verhaltensoriginell. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|