Type a page name and press Enter. You'll jump to the page if it exists, or you can create it if it doesn't.
To create a page in a module other than kernel32, prefix the name with the module name and a period.
SetFileTime (kernel32)
.
C# Signature:
[DllImport("kernel32.dll", SetLastError = true)]
[return: MarshalAs(UnmanagedType.Bool)]
static extern bool SetFileTime(IntPtr hFile, ref long lpCreationTime, ref long lpLastAccessTime, ref long lpLastWriteTime);
VB.Net Signature:
<DllImport("kernel32.dll", SetLastError := True)> _
Private Shared Function SetFileTime(ByVal hFile As IntPtr, ByRef lpCreationTime As Long, ByRef lpLastAccessTime As Long, ByRef lpLastWriteTime As Long) As Boolean
End Function
User-Defined Types:
None.
Notes:
None.
Tips & Tricks:
Please add some!
C# Sample Code:
public static void SetFileTimes(IntPtr hFile, DateTime creationTime, DateTime accessTime, DateTime writeTime)
public static void SetFileTimes(intPtr hFile, DateTime creationTime, DateTime accessTime, DateTime writeTime)
{
long lCreationTime = creationTime.ToFileTime();
long lAccessTime = accessTime.ToFileTime();
long lWriteTime = writeTime.ToFileTime();
long lWriteDTime = writeTime.ToFileTime();
''' -----------------------------------------------------------------------------
''' <summary>
''' Will transfer the Time Stamps from the Source file to the Target file.
''' </summary>
''' <param name="oSource_File_Info">The file that the time stamps will be transfered from.</param>
''' <param name="oTarget_File_Info">The file that the time stamps will be transfered to.</param>
''' <remarks>
''' Will transfer the Time Stamps from the Source file to the Target file.
''' </remarks>
''' <history>
''' [CHope] 3/2/2006 Created
''' </history>
''' -----------------------------------------------------------------------------
Public Shared Sub Synchronize_Time_Stamps(ByVal oSource_File_Info As System.IO.FileInfo, ByVal oTarget_File_Info As System.IO.FileInfo)
Dim oFile_Stream As System.IO.FileStream
' Open The File So The Time Stamps Can Be Updated
oFile_Stream = System.IO.File.Open(oTarget_File_Info.FullName, System.IO.FileMode.Open, System.IO.FileAccess.Write)
' Call The API That Should Set The Time Stamps For The File
If Not SetFileTime(oFile_Stream.Handle, oSource_File_Info.CreationTime.ToFileTime, oSource_File_Info.LastAccessTime.ToFileTime, oSource_File_Info.LastWriteTime.ToFileTime) Then
System.Windows.Forms.MessageBox.Show("Unable to set " & oTarget_File_Info.Name & " time stamps.", "Synchronization Error")
End If
' Close The Stream
oFile_Stream.Close()
End Sub
Alternative Managed API:
Do you know one? Please contribute it!
The SetFileTime API
3/16/2010 6:11:36 PM - -192.25.142.225
Please edit this page!
Do you have...
helpful tips or sample code to share for using this API in managed code?
corrections to the existing content?
variations of the signature you want to share?
additional languages you want to include?
Select "Edit This Page" on the right hand toolbar and edit it! Or add new pages containing supporting types needed for this API (structures, delegates, and more).