請教FileGetAttr函數和FileSetAttr函數 |
答題得分者是:hagar
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
請教各位前輩. FileGetAttr函數的宣告傳回值是Integer形態, 請問faReadOnly; faHidden...這些值相對應的Integer值是多少呢? FileSetAttr函數的宣告傳回值也是Integer形態, 請問如下語句中, 0是代表什么? 還有其它的數值嗎? 若有的話, 又各代表什么?
if FileSetAttr('D:\訂單.xls', faReadOnly)=0 then ShowMessage('檔案屬性修改成功') else ShowMessage('檔案屬性修改失敗');如果想一次設定多個檔案屬性, 該如何寫? 小弟在Run有關以上兩個函數的Code時, 出現Symbol 'FileSetAttr' is specific to Platform的信息, 請問是何意思? 多個問題, 感謝賜教! ===================== 努力,相信會獲得美麗! 忻晟
------
忻晟 |
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
1.定義在 SysUtils.pas 中
{ File attribute constants } faReadOnly = $00000001; faHidden = $00000002; faSysFile = $00000004; faVolumeID = $00000008; faDirectory = $00000010; faArchive = $00000020; faAnyFile = $0000003F;2.看一下 help 中關於 FileSetAttr 的這一句 FileSetAttr returns zero if the function was successful. Otherwise the return value is a Windows error code. 可用 ShowMessage(SysErrorMessage(GetLastError)) 的方式取得錯誤訊息 ex: var iReturn: ineger; begin iReturn := FileSetAttr('D:\訂單.xls', faReadOnly); if iReturn <> 0 then ShowMessage(SysErrorMessage(iReturn)); end;3.一次只能設定一個 file 吧. 4.只是警告它只適用在 windows 系統, 不適用在 linux 系統 您可以用滑鼠在錯誤訊息上點一下, 然後按 F1 取得詳細說明. --- 歡迎光臨 KTop 研究院 發表人 - |
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
引言: 謝謝hagar版主的解答﹒ 至于第一個問題﹐小弟下如下Code:涵義小弟是不太清楚, 改成如下:if OpenDialog1.Execute then ShowMessage(IntToStr(FileGetAttr(OpenDialog1.FileName);則Show出為32的回傳值﹐請問這里的函義﹖ if OpenDialog1.Execute then if FileGetAttr(OpenDialog1.FileName) <> 0 then ShowMessage(SysErrorMessage(GetLastError)); 引言: 第二個問題中的0﹐版主的意思是說這是一個錯誤的發生率嗎﹖只有在等于0的時候﹐屬性轉換才沒有錯誤﹒回傳值為 0 表示函式執行成功, 看這句: FileSetAttr returns zero if the function was successful --- 歡迎光臨 KTop 研究院 |
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |