摘要: 注册表中权限:1.HKEY_CURRENT_USER2.HKEY_LOCAL_MACHINE网上有很多帖子都是用的2,其实这样有违用户权限,而且如果不是管理员用户,会写入不成功!代码如下:QSettings reg("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run\\",QSettings::NativeFormat); //开机自动运行 if (bAutoRun) { qDebug() << QApplication::applicationFilePath(); QSt 阅读全文
posted @ 2014-02-20 14:23 西山翠冷 阅读(655) 评论(0) 推荐(0) 编辑
摘要: /* //文件读取 QFile f("c:\\t.txt"); if(!f.open(QIODevice::WriteOnly | QIODevice::Text)) { qDebug() << "Open failed"; return -1; } QTextStream txtOutput(&f); QString s1("123"); quint32 n1(123); txtOutput << s1 << " " << "caichao&quo 阅读全文
posted @ 2014-02-17 20:35 西山翠冷 阅读(282) 评论(0) 推荐(0) 编辑
摘要: 环境:静态编译过sqlite步骤:1.C++链接器中加入Sqlite.lib,然后在测试一下是否能正常加载Sqlite驱动#includeQ_IMPORT_PLUGIN(sqlite)测试打印:QStringList dirvers = QSqlDatabase:drivers();qDebug() dos下启动sqlitesqlite3.ext test.db#查看数据库.databases>dos下执行sql命令sqlite3.exe test.db dos下dump命令sqlite3.exe test.db .dump > test.sql>加载数据库attach da 阅读全文
posted @ 2014-02-17 11:09 西山翠冷 阅读(1645) 评论(0) 推荐(0) 编辑
摘要: 这是一个相当于“Hello world!”的任务,作为认识ATL,考查了其运作流程与机制。环境:VS2008创建:新建-项目-Win32项目-添加公用头文件用于(选择ATL)。PS:注意新建项目取消预编译头与设置自增链接为默认需要用到的头文件:,,OK,下面进行程序设计:(非完整代码,主要便于认识)Main函数:intAPIENTRY_tWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,LPTSTRlpCmdLine,intnCmdShow){CMyWindowmyWnd;myWnd.Create(NULL,CMyWindow::rcDefau 阅读全文
posted @ 2013-12-26 15:14 西山翠冷 阅读(340) 评论(0) 推荐(0) 编辑
摘要: 因为C++支持两种字符串,即常规的ANSI编码(使用""包裹)和Unicode编码(使用L""包裹),这样对应的就有了两套字符串处理函数,比如:strlen和wcslen,分别用于处理两种字符串TCHAR是通过define定义的字符串宏因为C++支持两种字符串,即常规的ANSI编码(使用""包裹)和Unicode编码(使用L""包裹),这样对应的就有了两套字符串处理函数,比如:strlen和wcslen,分别用于处理两种字符串微软将这两套字符集及其操作进行了统一,通过条件编译(通过_UNICODE和UNICODE宏 阅读全文
posted @ 2013-12-26 15:13 西山翠冷 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 地址:http://www.cppblog.com/dyj057/archive/2005/09/20/346.htmlSingleton模式是常用的设计模式之一,但是要实现一个真正实用的设计模式却也不是件容易的事情。1.标准的实现classSingleton{public:staticSingleton*Instance(){if(0==_instance){_instance=newSingleton;}return_instance;}protected:Singleton(void){}virtual~Singleton(void){}staticSingleton* _instanc 阅读全文
posted @ 2013-12-26 14:52 西山翠冷 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 1.模板的概念。我们已经学过重载(Overloading),对重载函数而言,C++的检查机制能通过函数参数的不同及所属类的不同。正确的调用重载函数。例如,为求两个数的最大值,我们定义MAX()函数需要对不同的数据类型分别定义不同重载(Overload)版本。//函数1.int max(int x,inty);{return(x>y)?x:y ;}//函数2.float max(float x,floaty){return (x>y)? x:y ;}//函数3.double max(double x,doubley){return (c>y)? x:y ;}但如果在主函数中,我 阅读全文
posted @ 2013-12-26 14:28 西山翠冷 阅读(168) 评论(0) 推荐(0) 编辑