防止帐号重复登录,本地有效

来源:互联网 发布:王士营养配餐软件 编辑:程序博客网 时间:2024/06/05 12:43
CString strPath;
strPath.Format(_T("%s%s.ini"), CPath::GetAppPath().c_str()/*程序运行路径*/, szUser/*帐号名*/);

HANDLE Handle = CreateFile((LPCTSTR)strPath, GENERIC_READ, 0, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
if (INVALID_HANDLE_VALUE == Handle)
{
MessageBox(_T("账号已登陆,请重新输入!"), _T("提示"), MB_OK | MB_ICONINFORMATION);
return;

}


PS:参考大量网上资料,自己总结一下,备忘

CreateFile 第3个参数 0表示不共享


   第5个参数      OPEN_ALWAYS  如文件不存在则创建它


思路:如果没有文件就创建并占用它,在占用之后,再用CreateFile函数就可以判断文件是否被占用,被占用则返回值为INVALID_HANDLE_VALUE,否则就没有被占用.

原创粉丝点击