2016-04-29 2 views
0

На некоторых наших сайтах мы запускаем сценарий резервного копирования, который сохраняет базу данных MSSQL в виде файла .bak в этом каталоге.fs.DeleteFile (var) не удаляет файл

Каждый день мы запускаем резервную копию стиля Git, чтобы у нас были какие-либо изменения на сайте. Из-за различия в сроках резервного копирования Мы не хотим удалять сегодняшнюю резервную копию или вчера, поэтому мы удалим 3 дня.

Следующая страница .asp работает нормально, если DeleteFile (строка 30) закомментирован. если файл существует, он следует правильной ветке, поэтому он может видеть файл, но если строка удаления раскоментирована, она прерывается.

<%@LANGUAGE="VBScript" CODEPAGE="65001"%> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <title>Purge</title> 
</head> 
<body> 
    <% 
     'Var init 
     dim Month, Day, Year, Dir, File, Absolutepath, Period, fs 
     Set fs=Server.CreateObject("Scripting.FileSystemObject") 

     'setting date of backup for deletion to three days ago 
     Period = dateadd("D", -3, Date) 
     Month = datepart("M", Period) 
     Day = datepart("D", Period) 
     Year = datepart("YYYY", Period) 

     'location setting 
     Dir = Server.MapPath(".") & "\" 
     File= "dbBackup-" & Month & "-" & Day & "-" & Year & "_1.bak" 
     Absolutepath = Dir & File 

     'Actual attempt to delete 
     If fs.FileExists(Absolutepath) Then 
      fs.DeleteFile(Absolutepath) 
      Response.Write("&#34;" & File & "&#34; deleted <br/>") 
     Else 
      Response.Write("404: &#34;" & File & "&#34; missing <br/>") 
     End If 
    %> 
    Execution complete. 
</body> 
</html> 

Я попытался

'fs.DeleteFile(Absolutepath) 

и

'fs.DeleteFile Absolutepath 

и

'fs.DeleteFile(File) 

и

'fs.DeleteFile File 

Безрезультатно. есть идеи?

редактировать:

локальный сервер говорит 500 =

Microsoft VBScript compilation error '800a0414' 

Cannot use parentheses when calling a Sub 

/test/index.asp, line 23 

fs.CreateTextFile(Absolutepath,True) 
+1

"* если строка удаления раскомментировано, что он ломается * ", как именно? Что такое сообщение об ошибке? –

+0

500 - Внутренняя ошибка сервера. Существует проблема с ресурсом, который вы ищете, и его невозможно отобразить. даже если я использую web.conig, чтобы попытаться заставить его показать – kenneth

+0

. Все, что говорит мне, это ошибка на странице. Кроме того, если я правильно помню, файлы web.config не имели отношения к ASP classic. См. [Этот вопрос] (http://stackoverflow.com/questions/2640526/detailed-500-error-message-asp-iis-7-5) для получения справки о отображении фактического сообщения об ошибке. –

ответ

0

Ответ заканчивал тем, что fs.DeleteFile не принимает скобка

fs.DeleteFile(Absolutepath) 

кончался будучи

fs.DeleteFile Absolutepath 
Смежные вопросы