MFC中我要做文件传输,知道文件路径,要判断文件是否被打开,如果打开提示“文件被占用,请关闭后再发送”

MFC中我要做文件传输,知道文件路径,要判断文件是否被打开,如果打开提示“文件被占用,请关闭后再发送”,第1张

CStdioFile logFile

path=文件路径

bool openLogFiles=logFile.Open(_T(path), CFile::modeWrite|CFile::typeText,NULL)

if(!openLogFiles)

{

MessageBox(“文件被占用,请关闭后再发送”)

}

/************************************************************************/

/* 判断进程里是否存在 “xxx软件”    例如(xxx.exe)           

    返回值为0:软件没运行;

    否则:软件已经运行

                */

/************************************************************************/

int CBatteryDlg:: GetProcessCount(const TCHAR* szExeName)

    TCHAR sztarget[MAX_PATH] 

    lstrcpy(sztarget, szExeName) 

    CharLowerBuff(sztarget, MAX_PATH) 

    int count = 0 

    PROCESSENTRY32 my 

    HANDLE l = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0) 

    if (((int)l) != -1)  

    {  

        my.dwSize = sizeof(my)   

    if (Process32First(l, &my))    

    {     

        do      

        {       

            CharLowerBuff(my.szExeFile, MAX_PATH)       

            if (lstrcmp(sztarget, my.szExeFile) == 0)        

            {   count++        }      

        }

        while (Process32Next(l, &my))   

    }  

    CloseHandle(l) 

    } 

    return count

}

用CFile *** 作文件,可以一个语句直接实现你的逻辑:

CFile f

f.Open(_T("1.txt"),CFile::modeCreate|CFile::modeNoTruncate|CFile::modeReadWrite)

CFile::modeNoTruncate和modeCreate一起使用:

如果文件不存在,创建一个新文件否则如果该文件已经存在,则直接打开


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12105987.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存