為了做一個自動備份檔案的功能,本來採用直接拷貝檔案到新的路徑,但程式已aspnet身份訪問遠端機會沒有許可權,按照網上的解決辦法(在config中指定特殊身份)也沒有解決,於是採用批處理方法來解決。
建立批處理檔案:
publicstatic
void createcopybat(string src, string
dest)
(if not exist (
md )
xcopy /s /e /y
echo creatcopybat: copyfile to sussecc! time: >> backupfilelog.txt
) else (
echo creatcopybat: is not exit! time: >> backupfilelog.txt)"
, src, dest, datetime.now.tostring()));
sw.close();
fs.close();
}
執行批處理檔案:
name是批處理檔案的路徑
publicvoid execpro(string
name)
}
然而重定向到txt的檔案並沒有出現,可是直接執行bat檔案就正常。
折騰了半天才發現是場烏龍,程序執行時的預設路徑並不是bat檔案所在路徑,所以txt檔案需要寫完整路徑。。。
之後又遇到了2個小問題:1.路徑中有空格:給路徑加“”解決;2.路徑中有漢字,用pause加回顯發現漢字變成了亂碼:未解決