나는 SetFileTime이나 비슷한 것을 ASP Classic에서 호출하여 지정된 시간 동안 날짜와 시간을 수동으로 변경하고 싶습니다. 내가 아는 한, ASP File Object은 파일에 대한 수정 시간 & 수정 시간을 검색하는 방법을 제공하지만 실제로 설정하는 방법은 제공하지 않습니다.수동으로 파일의 날짜와 시간을 변경하십시오.
어떻게하면됩니까?
나는 SetFileTime이나 비슷한 것을 ASP Classic에서 호출하여 지정된 시간 동안 날짜와 시간을 수동으로 변경하고 싶습니다. 내가 아는 한, ASP File Object은 파일에 대한 수정 시간 & 수정 시간을 검색하는 방법을 제공하지만 실제로 설정하는 방법은 제공하지 않습니다.수동으로 파일의 날짜와 시간을 변경하십시오.
어떻게하면됩니까?
나는 상대적으로 빠르게 해답을 발견 :
Sub ModifyLastAccessedDate(emlFilePath, newDate)
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
Set file = objFSO.GetFile(emlFilePath)
Set app = Server.CreateObject("Shell.Application")
Set folder = app.NameSpace(file.ParentFolder & "\")
Set fileModify = folder.ParseName(file.Name)
fileModify.ModifyDate = NewDate
Set objFSO = Nothing
Set file = Nothing
Set folder = Nothing
Set app = Nothing
Set fileModify = Nothing
End Sub
을 그리고 당신은 그냥 여기
Call ModifyLastAccessedDate("C:\Folder\SomeFile.Txt","2013-03-05")
하여 루틴을 호출은 JScript의 예입니다, 다시 VB에서, 직접 촬영 Microsoft (예 : 및 문자열을 설정할 수있는 다른 예) :
,451,515,<script language="JScript">
function fnModifyDateGetSetJ()
{
var objShell = new ActiveXObject("shell.application");
var objFolder2;
var ssfWINDOWS = 36;
objFolder2 = objShell.NameSpace(ssfWINDOWS);
if (objFolder2 != null)
{
var objFolderItem;
objFolderItem = objFolder2.ParseName("NOTEPAD.EXE");
if (objFolderItem != null)
{
var szReturn;
szReturn = objFolderItem.ModifyDate;
objFolderItem.ModifyDate = "01/01/1900 6:05:00 PM";
}
}
}
</script>
VB :
Private Sub fnModifyDateGetSetVB()
Dim objShell As Shell
Dim objFolder2 As Folder2
Dim ssfWINDOWS As Long
ssfWINDOWS = 36
Set objShell = New Shell
Set objFolder2 = objShell.NameSpace(ssfWINDOWS)
If (Not objFolder2 Is Nothing) Then
Dim objFolderItem As FolderItem
Set objFolderItem = objFolder2.ParseName("NOTEPAD.EXE")
If (Not objFolderItem Is Nothing) Then
Dim szReturn As String
szReturn = objFolderItem.ModifyDate
objFolderItem.ModifyDate = "01/01/1900 6:05:00 PM"
Else
'FolderItem object returned nothing.
End If
Set objFolderItem = Nothing
Else
'Folder object returned nothing.
End If
Set objFolder2 = Nothing
Set objShell = Nothing
End Sub