Erwin Craps - IT Helps
Erwin.Craps at ithelps.be
Thu Feb 12 02:03:22 CST 2004
SD If that is the only thing your're not proud of, then you must be an angel... :-) Erwn -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of S D Sent: Thursday, February 12, 2004 8:37 AM To: Access Developers discussion and problem solving Subject: RE: [AccessD] fso.DeleteFile Strange behaviour!? SOLVED.... Hi group, I'm now using the LastModified thingy to get the correct date. I'm not too proud of it but it works. SD "Curtis, Andrew (WAPL)" <andrew.curtis at wapl.com.au> wrote: Suggest you use date / time MODIFIED instead. Creation date is unreliable after a delete because when a file is deleted, it is not truly removed, it simply has its first character scrambled, thus hiding it from the OS, but retrievable via undelete methods. Recreating the same file in the same place immediately becomes a bit grey. Andrew Curtis -----Original Message----- From: S D [mailto:accessd667 at yahoo.com] Sent: Wednesday, 11 February 2004 4:01 PM To: accessd Subject: [AccessD] fso.DeleteFile Strange behaviour!? Hi group, I'm using FileSystemObject to delete a MDB file. After that I'm creating a new MDB. Then i'm using the .DateCreated method to get the the info about when the file was created. I checked this in the help: "Returns the date and time that the specified file or folder was created. Read-only." However the time it returns is the date\time combination of when I created the DB for the first time. EG: I'm starting the application at 8:00. I then show on screen the date\time the temp (analyses) db was created, let's say that it was created on 10 feb 2004 16:34:56. I then decide to create a new temp db. I press the button and it deletes the file, creates a new one and adds tables to it. Then I show the user the .DateCreated wich shows 8:00. When I stay in the program and do the above at 8:15 the .DateCreated method returns again 8:00!!! When I look in Explorer the DateCreated column shows 8:00 and the DateModified shows 8:15?!!? QUA PASA. WHY is the date created 8:00? I've checked in Explorer that the file is gone after the deletefile statement. Any ideas? Sander Here's part of my code: FORM LOAD: 'Create temporary database blnCreateTables = CreateTempDatabase(LOCATION_TEMP_DB, TEMP_DB_NAME) If blnCreateTables Then 'Create tables Call CreateTables(LOCATION_TEMP_DB, TEMP_DB_NAME) ... ... Function CreateTempDatabase(strPath As String, strDbName As String) As Boolean On Error GoTo Err_CreateTempDatabase Dim dbDestination As DAO.Database Dim blnDbExists As Boolean Dim blnCreateDB As Boolean 'Check if file exists blnDbExists = FileExists(strPath & strDbName) If blnDbExists Then Select Case MsgBox("Temporary database EXISTS. Do you want to DELETE it and create a new one?", vbYesNo + vbInformation + vbDefaultButton1, "Temporary database exists") Case vbYes 'Delete file! If DeleteFile(strPath & strDbName) Then blnCreateDB = True .... .... 'Create TEMPDB If blnCreateDB Then Set dbDestination = Workspaces(0).CreateDatabase(strPath & strDbName, DB_LANG_GENERAL) End If 'Set return value CreateTempDatabase = blnCreateDB 'errorhandling END FUNCTION Public Function DeleteFile(strFileName As String) As Boolean On Error GoTo Err_DeleteFile Dim fso As FileSystemObject Dim file As String Dim strFileNameLDB As String file = strFileName ' change to match the file w/Path Set fso = New FileSystemObject 'Set fso = CreateObject("Scripting.FileSystemObject") strFileNameLDB = "C:\Program Files\Switchdatabase\Temp_Db_Switch.ldb" If fso.FileExists(strFileName) Then fso.DeleteFile strFileName, True If fso.FileExists(strFileNameLDB) Then fso.DeleteFile strFileNameLDB, True End If 'return value DeleteFile = True Else 'return value DeleteFile = False End If Exit_DeleteFile: Exit Function Err_DeleteFile: MsgBox Err.Number & vbCrLf & _ Err.Description & vbCrLf & _ "Location: DeleteFile()" Resume Exit_DeleteFile End Function Function CheckNewFile(strFile As String) As String On Error GoTo Err_CheckNewFile Dim objFileSys As FileSystemObject Dim objFile As file Dim strFileName As String Dim strNewDateCreated As String Set objFileSys = New FileSystemObject strFileName = strFile If objFileSys.FileExists(strFileName) Then Set objFile = objFileSys.GetFile(strFileName) 'Get file created value With objFile strNewDateCreated = .DateCreated End With Else 'File does NOT exist! strNewDateCreated = vbNullString GoTo Exit_CheckNewFile End If 'Set returnvalue CheckNewFile = strNewDateCreated ....errrorhandling End Function --------------------------------- Do you Yahoo!? Yahoo! Finance: Get your refund fast by filing online _______________________________________________ AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com CONFIDENTIAL COMMUNICATION If you receive this confidential communication by mistake, please contact the sender immediately by return electronic mail. Worsley Alumina Pty Ltd ABN 58 008 905 155 is the manager of the Worsley Joint Venture - Bauxite/Alumina Operation. Liability and responsibility of the Joint Venturers is several in accordance with the following schedule of participating interests: Billiton Aluminium (RAA) Pty Ltd 56 percent, Billiton Aluminium (Worsley) Pty Ltd 30 percent, Japan Alumina Associates (Australia) Pty Ltd 10 percent, Nissho Iwai Alumina Pty Limited 4 percent. _______________________________________________ AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com --------------------------------- Do you Yahoo!? Yahoo! Finance: Get your refund fast by filing online _______________________________________________ AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com