INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Thema geschlossen 

Dateiattribute ändern (Datum)



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

16.05.2007, 11:12
Beitrag #1

Oliver Listing Offline
LVF-Freak
****


Beiträge: 721
Registriert seit: Sep 2004

2012 und 2014 (Windows und Linux)
1998
EN

22844
Deutschland
Dateiattribute ändern (Datum)
Hi all,

ich habe folgendes Problem:
Nach dem Einlesen von Messdaten und bearbeiten, sollen diese mit den gleichem Datum (Erstellt, Geändert) gespeichert werden wie die Original Datei.

Bei OpenG gibt es eine Funktion (DLL-Aufruf) dafür. Diese möchte ich aber wegen geänderter Lizenzbedingungen nicht mehr verwenden.

Ich habe in der kernel32.dll die Funktion SetFileTime gefunden, die genau dies tut, bekomme sie aber nicht zum laufen...

Hat jemand eine andere Lösung dafür, oder die o.g. Funktion zum Laufen bekommen??

Gruß
Oliver

P.s.: die ErrorOutManager.vi Funktion in den angehängten VIs kann disabled werden


Angehängte Datei(en)
Sonstige .vi  SetFileTime.vi (Größe: 32,09 KB / Downloads: 594)

Sonstige .vi  SystemTimeToFileTime.vi (Größe: 22,99 KB / Downloads: 525)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
to top
Anzeige
22.05.2007, 07:58 (Dieser Beitrag wurde zuletzt bearbeitet: 22.05.2007 08:02 von IchSelbst.)
Beitrag #2

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.696
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Dateiattribute ändern (Datum)
Probier mal mit SetFileTime wie folgt:

Hier ein Auschnitt aus der PSDK:

[code]SetFileTime

The SetFileTime function sets the date and time that a file was created, last accessed, or last modified.


BOOL SetFileTime(

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
to top
22.05.2007, 09:05
Beitrag #3

Oliver Listing Offline
LVF-Freak
****


Beiträge: 721
Registriert seit: Sep 2004

2012 und 2014 (Windows und Linux)
1998
EN

22844
Deutschland
Dateiattribute ändern (Datum)
Hi IchSelbst,

habe in der Firma gerade anderes zu tun, gucke mir morgen aber mal deinen Post intensiver an.

Problem ist ja immer die richtigen Schlüsselworte beim Suchen einzugeben.
Ich hatte die angehängte llb gefunden und darüber dann die Informationen über die Funktion unter msdn gefunden.
Das VI SystemTime2FileTime.vi funktioniert auch richtig - habe ich mit Hilfe der Umkehrfunktion aus der llb getestet.

Ich denke aber, das meine übergebene Filereferenz nicht stimmt.
Leider kriege ich die Funktion GetLastError.vi auch nicht zum laufen. Sie gibt mir keinen Fehler zurück.

Gruß
Oliver


Angehängte Datei(en)
Sonstige .llb  Get_Windows_File_Info.llb (Größe: 91,34 KB / Downloads: 352)

Sonstige .vi  GetLastError.vi (Größe: 16,54 KB / Downloads: 365)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
to top
22.05.2007, 22:16 (Dieser Beitrag wurde zuletzt bearbeitet: 22.05.2007 22:17 von IchSelbst.)
Beitrag #4

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.696
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Dateiattribute ändern (Datum)
' schrieb:Ich denke aber, das meine übergebene Filereferenz nicht stimmt.
Der Handle wird als Wert übergeben, nicht als Pointer. Vom Rest denk ich mal wird wohl passen: Sieht wie Pointer aus, wird dann wohl einer sein.

Zitat:Leider kriege ich die Funktion GetLastError.vi auch nicht zum laufen. Sie gibt mir keinen Fehler zurück.
Kann daran liegen, dass auch SetFileTime keinen Fehler zurückbringt - obwohl müsste, wenn der Handle falsch ist.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
to top
23.05.2007, 10:54
Beitrag #5

Oliver Listing Offline
LVF-Freak
****


Beiträge: 721
Registriert seit: Sep 2004

2012 und 2014 (Windows und Linux)
1998
EN

22844
Deutschland
Dateiattribute ändern (Datum)
' schrieb:Der Handle wird als Wert übergeben, nicht als Pointer. Vom Rest denk ich mal wird wohl passen: Sieht wie Pointer aus, wird dann wohl einer sein.
Habe ich probiert... geht aber auch nicht.

Die Funktion GetFileTime benötigt ebenso einen Handle auf die Datei, den ich vermutlich falsch habe.
Die Funktion "CreateFile" hat es leider "in sich", so daß ich da auch nicht weitergekommen bin.
(Dachte ich könne einen Handle per kernel32.dll erzeugen.)

Sucht man bei NI-Zone nach "SetFileTime LabVIEW" so erhält man leider nur einen Link zu einem kostenpflichtigem Toolkit...

Gruß
langsam verzweifelnder Oliver


Angehängte Datei(en)
Sonstige .vi  GetFileTime.vi (Größe: 35,8 KB / Downloads: 383)

Sonstige .vi  FileTimeToSystemTime.vi (Größe: 24,63 KB / Downloads: 305)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
to top
23.05.2007, 11:07
Beitrag #6

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.696
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Dateiattribute ändern (Datum)
' schrieb:Habe ich probiert... geht aber auch nicht.
Was mich auch etwas verwundert hat ist, dass die Funktion trotz fehlerhafter Parameter als result Null ergibt. Wacko

Vielleicht schau ich noch mal.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
to top
23.05.2007, 11:10
Beitrag #7

Dennis.Moser Offline
Administrator
Administrators

Beiträge: 3.045
Registriert seit: Aug 2004

5.1 : 7.1 : 8.x : 20xx
1997
DE_EN

57589
Deutschland
Dateiattribute ändern (Datum)
Siehe http://msdn2.microsoft.com/de-debrary/s...ime(vs.80).aspx

Wink

Wissen ist das einzige Gut das sich vermehrt, wenn man es teilt!

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!

BC: 14vqy6mgfswpX6z7HLVxk1h3sHAvzE4aZG
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
to top
23.05.2007, 11:29
Beitrag #8

VDB Offline
LVF-Stammgast
***


Beiträge: 426
Registriert seit: Oct 2005

2010-2011
1997
kA

52134
Deutschland
Dateiattribute ändern (Datum)
Hier ist ein schnell zusammengeflicktes Beispiel für CreateFileA

VDB


Sonstige .vi  dll_call.vi (Größe: 10,52 KB / Downloads: 365)
Alle Beiträge dieses Benutzers finden
to top
23.05.2007, 12:29
Beitrag #9

Oliver Listing Offline
LVF-Freak
****


Beiträge: 721
Registriert seit: Sep 2004

2012 und 2014 (Windows und Linux)
1998
EN

22844
Deutschland
Dateiattribute ändern (Datum)
Hi all,

@Dennis:
danke für die Info, nur:
Kann ich den Cluster DateTime nicht entschlüsseln.
Ich werden nicht schlau daraus, von welchem Datentyp die Felder sind und welchen Inhalt sie haben müssen.

@VDB:
schau ich mir gleich mal an.

@IchSelbst:
die Funktionen geben im Fehlerfall immer "0" zurück. Nur wenn sie erfolgreichwaren ">0" - verwirrend Hmm
Deshalb soll man bei einer "0" ja auch mit "GetLastError" den letzten Fehler auswerten...

Gruß
Oliver
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
to top
23.05.2007, 12:53
Beitrag #10

Oliver Listing Offline
LVF-Freak
****


Beiträge: 721
Registriert seit: Sep 2004

2012 und 2014 (Windows und Linux)
1998
EN

22844
Deutschland
Dateiattribute ändern (Datum)
Hi all,

hat geklappt.
Mit den DLL Aufrufen von VDB, um einen handle auf eine Datei zu bekommen, läufts...

Ich mache die VIs noch rund, dann stelle ich sie hier ein.

Gruß und Danke an alle Mitwirkenden
Oliver
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
to top
Thema geschlossen 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Dateiname mit Datum Garth 2 9.661 08.01.2010 18:13
Letzter Beitrag: Garth

Gehe zu: