判斷檔案鎖定與否 |
尚未結案
|
leonard
一般會員 發表:42 回覆:42 積分:21 註冊:2003-10-18 發送簡訊給我 |
|
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
leonard您好:
我想您的標題應該為[如何判斷檔案使用中]之類的
所以下面連結的討論您可以參考看看
< href="http://delphi.ktop.com.tw/topic.php?topic_id=45245">http://delphi.ktop.com.tw/topic.php?topic_id=45245
【Delphi】【問題】如何判斷文字檔正在使用中
http://delphi.ktop.com.tw/topic.php?topic_id=26986
【問題】啟動Word後要如何得知某個檔案目前是開啟而拒絕開啟? 小弟沒碰過Delphi所以要請其他前輩幫您翻譯一下< >
順心< > 發表人 - taishyang 於 2004/03/03 13:49:39
|
anpino
版主 發表:31 回覆:477 積分:231 註冊:2003-01-02 發送簡訊給我 |
|
taishyang
站務副站長 發表:377 回覆:5490 積分:4563 註冊:2002-10-08 發送簡訊給我 |
|
anpino
版主 發表:31 回覆:477 積分:231 註冊:2003-01-02 發送簡訊給我 |
|
leonard
一般會員 發表:42 回覆:42 積分:21 註冊:2003-10-18 發送簡訊給我 |
1.我的程式執行時會出現錯不過compiler會過---不知是否能給我點意見
2.請問我想讀取時把檔案鎖住不讓其他程式讀取此檔案
不知道該家在哪裡
int i; int s[10]={10,25,30,40,53,61,74,88,90,100}; HANDLE hfile; TStringList* buf = new TStringList(); DWORD bytesread; hfile=CreateFile("C:\\ti\\myprojects\\tt1\\chen.txt",GENERIC_READ,0,NULL,OPEN_EXISTING,FILE_FLAG_SEQUENTIAL_SCAN,NULL); if(hfile==INVALID_HANDLE_VALUE) { return;----當別的程式使用時--他會一直讀取txt檔直到可以開啟 } else { ReadFile(hfile,buf,sizeof(buf),&bytesread,NULL); for (int x=0; x<10; x ) { i=s[x]; Series1->AddXY(i,buf->Strings[x].ToInt(),i,clRed); } delete buf; } }發表人 - leonard 於 2004/03/03 21:13:50 發表人 - leonard 於 2004/03/03 21:14:48 |
anpino
版主 發表:31 回覆:477 積分:231 註冊:2003-01-02 發送簡訊給我 |
引言: 1.我的程式執行時會出現錯不過compiler會過---不知是否能給我點意見 永遠記得compiler會過,不代表程式就是正確無誤,也不代表程式可以正確執行。最常見的就是記憶體管理問題。 > class="code"> int i; int s[10]={10,25,30,40,53,61,74,88,90,100}; HANDLE hfile; TStringList* buf = new TStringList(); DWORD bytesread, dwPos; hfile=CreateFile("C:\\ti\\myprojects\\tt1\\chen.txt",GENERIC_READ,0,NULL,OPEN_EXISTING,FILE_FLAG_SEQUENTIAL_SCAN,NULL); if(hfile==INVALID_HANDLE_VALUE) { return;----當別的程式使用時--他會一直讀取txt檔直到可以開啟 } else { if(ReadFile(hfile,buf,sizeof(buf),&bytesread,NULL)) { dwPos = SetFilePointer(hfile, 0, NULL, FILE_END); LockFile(hfile, dwPos, 0, bytesread, 0); for (int x=0; x<10; x ) { i=s[x]; Series1->AddXY(i,buf->Strings[x].ToInt(),i,clRed); } delete buf; UnlockFile(hfile, dwPos, 0, bytesread, 0); } } }關於第二個問題, 既然已經給你 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=40148, 裡面的sample已經寫得很明白, 希望您以後先看看,想想再問。 STFW ------------------------------- 數學系是內功很強(邏輯/分析) 資工系是招式很多(程式技巧) 就像令狐沖VS東方不敗:D Programmers Guide http://anpino.begin.8d8d.com 發表人 - anpino 於 2004/03/04 08:43:58 |
leonard
一般會員 發表:42 回覆:42 積分:21 註冊:2003-10-18 發送簡訊給我 |
引言:不好意思沒看到 還是要謝謝你引言: 1.我的程式執行時會出現錯不過compiler會過---不知是否能給我點意見 永遠記得compiler會過,不代表程式就是正確無誤,也不代表程式可以正確執行。最常見的就是記憶體管理問題。 > class="code"> int i; int s[10]={10,25,30,40,53,61,74,88,90,100}; HANDLE hfile; TStringList* buf = new TStringList(); DWORD bytesread, dwPos; hfile=CreateFile("C:\\ti\\myprojects\\tt1\\chen.txt",GENERIC_READ,0,NULL,OPEN_EXISTING,FILE_FLAG_SEQUENTIAL_SCAN,NULL); if(hfile==INVALID_HANDLE_VALUE) { return;----當別的程式使用時--他會一直讀取txt檔直到可以開啟 } else { if(ReadFile(hfile,buf,sizeof(buf),&bytesread,NULL)) { dwPos = SetFilePointer(hfile, 0, NULL, FILE_END); LockFile(hfile, dwPos, 0, bytesread, 0); for (int x=0; x<10; x ) { i=s[x]; Series1->AddXY(i,buf->Strings[x].ToInt(),i,clRed); } delete buf; UnlockFile(hfile, dwPos, 0, bytesread, 0); } } }關於第二個問題, 既然已經給你 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=40148, 裡面的sample已經寫得很明白, 希望您以後先看看,想想再問。 STFW ------------------------------- 數學系是內功很強(邏輯/分析) 資工系是招式很多(程式技巧) 就像令狐沖VS東方不敗:D Programmers Guide http://anpino.begin.8d8d.com 發表人 - anpino 於 2004/03/04 08:43:58 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |