IIS的FTP會區分大小寫,導致FtpFindFirstFile比對檔案失敗

  • 5988
  • 0
  • IIS
  • 2009-06-08

最近公司透過FTP自動更新的程式發生了問題,應該要更新的卻沒更新,
一查之下,原來是使用FtpFindFirstFile API去抓取ftp的檔案時,會區分大小寫,
也就是說大小寫不一樣的檔案,會被認定為不一樣的檔案...

最近公司透過FTP自動更新的程式發生了問題,應該要更新的卻沒更新,

一查之下,原來是使用FtpFindFirstFile API去抓取ftp的檔案時,會區分大小寫,

也就是說大小寫不一樣的檔案,會被認定為不一樣的檔案,

原本以為是FtpFindFirstFile的問題,但是看來應該是沒有設定大小寫判斷之類的參數,

所以換方向往FTP Server著手,由於我使用的是IIS6內建的Ftp,查了MSDN,我新增了註冊表的LowercaseFiles值,

重啟FTP,用command模式進入ftp,的確列出的檔名都已經強制變為小寫,

所以我再將我的更新程式變更為去確認小寫的檔名,但是還是不work.....

後來還是認輸了,換了其他的FTP Server軟體,問題就解決~

 

雖然早就覺得IIS內建的FTP很難用,不管是虛擬目錄還是權限管理...

但是由於我比較傾向伺服器環境單純化,所以也就沒找過其他的ftp軟體來做使用,

遇到了這次的Case,還是換了,嗯~只能說,微軟你的FTP Service還是得加加油啊~

不然怎到了IIS7,ftp管理居然還是用iis6的...而且從iis4看到iis7,好像真的沒長進多少...

對了,如果大家對Ftp架構比較熟析的,或許可以告知我為什麼IIS的FTP居然會區分大小寫...