WINDOW API 複製檔案

2021-05-17 12:17:53 字數 1054 閱讀 8634

用.net 的file.copy函式複製函式時,如果檔案時開啟的,或者在程式中有開啟,用該函式時經常出錯,想想呼叫window 的api 函式應該不會出現這種檔案,今天就做了一下實驗,可以解決該檔案

api 有兩個複製檔案的函式, 第一種(copyfileex)可以顯示進度條,第二種(copyfile)沒有進度條

//[system.runtime.interopservices.dllimport("kernel32.dll", setlasterror = true)]

//static extern long copyfileex(string lpexistingfilename, string lpnewfilename, long lpprogressroutine,object lpdata,ref long pbcancel, long dwcopyflags);

[system.runtime.interopservices.dllimport("kernel32.dll", setlasterror = true)]

static extern long copyfile(string lpexistingfilename, string lpnewfilename, boolean bfailifexists);

long lngreturn;

string strfrom = "f://aaa1s1.docx";

string strto = "f://test//aaa1s1.docx";

long i= 0l;          

lngreturn = copyfile(strfrom, strto, true);

if (lngreturn == 0)

失敗else

成功以上是c#**

vb宣告

declare function copyfile lib "kernel32" alias "copyfilea" (byval lpexistingfilename as string, byval lpnewfilename as string, byval bfailifexists as long) as long

WindowAPI串列埠通訊

上下位機通訊的時候,常常需要用到串列埠通訊。串列埠通訊的兩種操作方式 同步 api阻塞等到操作完成返回,阻塞監聽執行緒 和非同步 api函式立即返回,操作在後台完成 操作。操作流程 開啟串列埠,配置串列埠,讀寫串列埠,關閉串列埠,實現這四個操作就完成了對串列埠的基本操作。1.開啟串列埠,使用crea...

Window API (六)多程序的操作

多程序也是必備的操作。寫乙個例項程式。呼叫乙個child.exe的可執行程式作為子程序。要先將child.exe編譯好放在同一目錄下。include include define myalloc size heapalloc getprocessheap 0,size define myfree l...

unix 檔案複製

呼叫系統 include int main 方法一 逐個字元複製 include fstream std ifstream input in ios binary std ofstream output out ios binary char ch while input.get ch output...