mfc文件夾復制文件
❶ MFC怎麼實現將源文件復制到要保存的目標路徑
要注意的是你要文件到C盤(系統盤),要以管理員許可權運行該程序,否則到系統盤會失敗的
TCHAR SourceFileName[MAX_PATH]={0} , TargetFileNmae[MAX_PATH]={0};
GetDlgItemText(IDC_EDIT_S,SourceFileName,-1);
GetDlgItemText(IDC_EDIT_T,TargetFileNmae,-1);
if(!CopyFile(SourceFileName,TargetFileNmae,FALSE))//若目標文件存在,對其覆蓋
{
AfxMessageBox("文件復制失敗,請檢測文件路徑是否正確!");
return ;
}
AfxMessageBox("文件復製成功!");
再次重聲,文件操作屬於內核對象操作。。所以設計到安全問題,即UAC,所以你要想對c盤文件操作,必須要管理員許可權操作
❷ 用mfc如何實現將一個文件拷貝到另一個文件夾中例如:C:\WINDOWS\a.txt中的a.txt文件拷貝到D:\Program
很多方法簡單的就是用CopyFile(原來的路徑,要的新的路徑);你可以查看對應的MSDN如CopyFile(「c:\\windows\\a.txt」,"d:/program/a.txt")
❸ MFC中Copyfile的問題。
1.不信你可以看看,系統里的所有文件夾都是只讀屬性,這個沒關系;
2.CopyFile只能拷貝文件,不能拷貝文件夾;
3.若要拷貝文件夾,可參考如下方法:
BOOL CCheckFileDlg::CopyDir(CString strSrcPath, CString strDstPath)
{ // 創建目標文件夾
CreateDirectory(strDstPath,NULL);
CFileFind finder;
// 打開指定的文件夾進行搜索
BOOL bWorking = finder.FindFile(strSrcPath + "\\" + "*.*");
while(bWorking)
{
// 從當前目錄搜索文件
bWorking = finder.FindNextFile();
CString strFileName = finder.GetFileName();
CString strSrc = strSrcPath + "\\" + strFileName;
CString strDst = strDstPath + "\\" + strFileName;
// 判斷搜索到的是不是"."和".."目錄
if(!finder.IsDots())
{
// 判斷搜索到的目錄是否是文件夾
if(finder.IsDirectory())
{
// 如果是文件夾的話,進行遞歸
if(!CopyDir(strSrc, strDst))
return false;
}
else
{
// 如果是文件,進行復制
if(!CopyFile(strSrc, strDst, FALSE))
return false;
}
}
}
return true;
}
❹ MFC關於文件的復制,拖動文件得到路徑的問題
你說得莫名其妙的,是不是要用ListCtrl啊,你進入了對話框框編輯時會彈出一個工具條的,工具條那裡有一個List Control就是你要的那個ListCtrl控制項了
很明顯你才剛才MFC……不過我懷疑你連C++基礎都沒……不建議初學者完全照抄人家的例子,你還是老老實實從開始學起吧。
❺ mfc100u.dll文件怎麼復制到系統目錄C:+WINNT\system32
這類問題通常不是dll文件丟失造成的。
實際上,你去過搜索文件夾,一般都可以在電腦上找到該文件。
問題原因,主要還是程序自身有問題,建議你卸載後重新安裝,看能否解決問題。
如果單純是文件丟失,網上一般可以下載dll文件,重新注冊即可。
❻ 怎麼用C++ MFC 復制文件
你是不是說的復制文件?是的話方法多的很。
比如要復制C:\cmd.exe至D:\dir\2下,並重命名為cmd_new.exe,方法如下:
system(" c:\\cmd.exe d:\\dir\\2\\cmd_new.exe");
就相當於是在執行MS-DOS命令。這是在控制台下使用的,不過我想你應該夠用了。
在MFC下可以用CopyFile()函數,定義如下:
BOOL CopyFile(
LPCTSTR lpExistingFileName,
// pointer to name of an existing file
LPCTSTR lpNewFileName, // pointer to filename to to
BOOL bFailIfExists // flag for operation if file exists
);
❼ MFC ListCtrl如何復制文件到另一個文件夾
List Ctrl是一個多行控制項,你是希望將裡面的內容復制到另外的文件夾中?
如果是這樣的話,首先你要通過GetItemText將每行文本取出來保存在字元串中,然後只需要利用文件操作介面將字元串寫在文件裡面即可;
如果你是希望點擊裡面某項實現復制某個文件到另外的文件夾中,只需要在Click函數中打開文件選擇窗口,將獲取的文件調用文件保存介面保存在另外的文件夾即可
❽ C++,MFC工程如何瀏覽一個文件,復制到另外一個文件夾
主要有兩個難點:
1、如何選擇文件;
2、選擇好文件之後,如果復制;
1st、關於文件選擇,可參考下面這段代碼:
CString CDcPackerDlg::BootOpenDialog() //返回選擇的文件名稱
{
CString strFile = _T("");
CFileDialog dlgFile(TRUE, NULL, NULL, OFN_HIDEREADONLY, _T("Describe Files (*.cfg)|*.cfg|All Files (*.*)|*.*||"), NULL);
if (dlgFile.DoModal())
{
strFile = dlgFile.GetPathName();
}
return strFile;
}
//載入文件按鈕
void CDcPackerDlg::OnBnClickedSelectdec()
{
// TODO: Add your control notification handler code here
m_strDescPath = ""; //類的成員變數
//"打開文件"對話框,選擇文件,返回其路徑
m_strDescPath = BootOpenDialog();
}
2nd、文件復制:
2.1 獲得程序目錄
CString strPath = "", strDir = "";
char filepath[MAX_PATH];
GetMoleFileName(NULL, filepath, MAX_PATH);
strDir.Format("%s", filepath);
strPath = strDir.Left(strDir.ReverseFind('\\'));
2.2 復制文件
在MFC下可以用CopyFile()函數,定義如下:
BOOL CopyFile(
LPCTSTR lpExistingFileName, //原文件地址,包括文件名
LPCTSTR lpNewFileName, ////目的文件地址,包括文件名
BOOL bFailIfExists //如果目的文件存在的操作
);
3rd、自己把上面給的代碼組裝一下,就可以滿足你的要求了。
❾ MFC 文件選擇 復制到固定文件夾
CFileDialogfld(TRUE,NULL,NULL,OFN_READONLY,"所有文件|*.*||",this);
if(IDOK==fld.DoModal())
{
CStringfpath=fld.GetPathName();
CStringtpath=_T("D:\");//固定文件夾
tpath+=fld.GetFileName();
::CopyFile(fpath,tpath,TRUE);
}