
经验
文章平均质量分 59
追逐曙光
这个作者很懒,什么都没留下…
展开
-
C++ delete错误
C++ delete错误1. 指针通过 new 或 new[] ,向系统“申请”得到一段内存空间,这段内存空间必须在不需要将它释放了。int* p = new int[100]; int girl[100]; p = girl; delete [] p; 灾难在 delete [] p 时发生。我们原意是要释放p最初通过new int转载 2013-02-04 12:37:47 · 532 阅读 · 0 评论 -
mFC开发ocx控件放到网上去
其实这里网上能找到很多文件。mfc开发activex控件本地好弄,但是放网上去能供别人访问或者下载还是比较细的工作。这里整理下打包签名:cabarc n test.cab test.inf AnEdit.ocx 这样就将其打包成test.cabmakecert /sv "test.pvk" /n "cn=原创 2015-01-28 11:37:49 · 662 阅读 · 0 评论 -
atl开发ActiveX控件 转载保留
大家好,最近开始学习C++,由于工作原因需要维护和完善已有的ActiveX控件,本人对C++还是起步阶段,对开发ActiveX控件更是一无所知,于是把学习控件开发的经历记录下来,以便自己将来的温故和对同样没有学习基础的人一个帮助。有C++开发经验的人可以绕。知识就像一幢大楼,需要一砖一瓦的建设,闲话少叙,开始学习吧...... 一、开发环境 XP、Visual St转载 2015-02-02 17:35:48 · 576 阅读 · 0 评论 -
ATL开发的activex要放上网能调用方法要先实现安全接口
一般来说,ActiveX控件在WEB开发的时候要避免使用,如果实在无法避免,则需要注意几点:1. ActiveX发布后一定要代码签名2. 编写的时候要标记为脚本安全下面是针对VS2005 ATL工程向导生成的工程,加入“脚本安全”的特性修改生成的.h文件#pragma once#include "resource.h" // 主符号#incl转载 2015-02-02 17:37:59 · 535 阅读 · 0 评论 -
firefox开发 Npapi控件
1.下载firefox 控件开发的sdk ,我这里有资源可以下载。放心下载绝对OK!2.下边这些都是从别人那里搬来的,我用vs2008做的,一样可以的。有点繁琐,但是搞到最后是可以的,坚持按照本文搞完绝对OK.3.把上一步的plugin解压的文件放固定的目录以便对文件路径进行管理。如F:\BrowersDV\npapi\plugin4.新建工程,名称一定要以np开头,以适应转载 2015-02-04 15:49:15 · 1925 阅读 · 0 评论 -
C++命名空间
本讲基本要求 * 掌握:命名空间的作用及定义;如何使用命名空间。 * 了解:使用早期的函数库 重点、难点 ◆命名空间的作用及定义;如何使用命名空间。 在学习本书前面各章时,读者已经多次看到在程序中用了以下语句:using namespace std; 这就是使用了命名空间std。在本讲中将对它作较详细的转载 2015-03-16 17:55:50 · 338 阅读 · 0 评论 -
Qt qtableview 使用
qtdesigner 设计界面,使用qtableview界面初始化;m_modelDiscrete = new QStandardItemModel(0, 3); //tableView-> resizeRowsToContents();//tableViewShowEvent->verticalHeader()->setDefaultSectionSize(200);//设置原创 2015-04-02 09:21:21 · 853 阅读 · 0 评论 -
C++中两个类相互包含引用问题
在构造自己的类时,有可能会碰到两个类之间的相互引用问题,例如:定义了类A类B,A中使用了B定义的类型,B中也使用了A定义的类型class A{int i;B b;}class B{int i;A* a;}请注意上面的定义内容,一般情况下是不能出现类A,类B相互引用都定义对象,即如下的样子:class A转载 2015-04-02 08:14:42 · 497 阅读 · 0 评论 -
oracl X64 和 plsql 杂记
首先安装orcal X64。配置\tnsnames.ora ,可以用orcal的NetManger配置。安装好以后先用sqlplus来试试看看安装好客户端没。输入sqlplus,然后提示输入用户名,直接输入user/password@database就可以了,然后出来sql>,就表示安装环境是OK 的。----------、安装plsql ,目前貌似没有64位plsql 。原创 2015-04-21 20:10:48 · 590 阅读 · 0 评论 -
qt 操作orcal
首先要有orcal qt驱动,这个库自己编m_cimODCDB = QSqlDatabase::addDatabase(szDriver, QUuid::createUuid()); m_cimODCDB.setHostName(szHost); m_cimODCDB.setDatabaseName(szDataSource); m_cimODCDB.setUserName(szU原创 2015-04-30 15:31:37 · 705 阅读 · 0 评论 -
存储过程
create or replace procedure Insert_To_BASE asbegininsert into ODC_BASE_CONNECTIVITY ( RDFID,CONNECTIVITY_NMAE,RESOURCE_ID,SOURCE_CODE,DATA_SOURCE_ID,STATE) select RDFID,CONNECTIVITY_NMAE原创 2015-04-30 15:33:19 · 367 阅读 · 0 评论 -
网页调用ocx的方法
vs2008添加ocx对外方法给web调用首先是ocx插件添加方法这里在_DAnEdit 而不是它下边那个。右键添加方法,这里添加了CHAR CAnEditCtrl::SayHello(void){AFX_MANAGE_STATE(AfxGetStaticModuleState());// TODO: 在此添加调度处理程序代码MessageBox(L"h原创 2015-01-28 16:54:48 · 945 阅读 · 0 评论 -
PHP 中Mysql配置连接的问题
装Mysql就不说了,网上教程一把,一般都行http://tech.163.com/06/0206/11/299AMBLT0009159K_3.html这个就挺好的。配置好(主要是修改php.ini文件,启动一些扩展,把 extension=php_gd2.dll extension=php_mysql.dll extension=php_mysqli.dll原创 2015-01-26 20:48:38 · 579 阅读 · 0 评论 -
判断线程生死
pthread_kill:别被名字吓到,pthread_kill可不是kill,而是向线程发送signal。还记得signal吗,大部分signal的默认动作是终止进程的运行,所以,我们才要用signal()去抓信号并加上处理函数。int pthread_kill(pthread_t thread, int sig);向指定ID的线程发送sig信号,如果线程代码内不做处理,转载 2013-02-20 22:32:59 · 507 阅读 · 0 评论 -
双向链表删除错误
写一个双向链表实现插入删除遍历ps:一般插入遍历没什么问题,主要是删除老是出现不可预期的结果,其实是对指针的操作错误。尤其要主要头指针和尾指针如果执行删除一个元素操作后发现待删除元素及此元素之前的所有数据都被删除,应该检查下是否待删元素的pre指向为头指针head而非它的前一个元素。一般这种情况是插入函数Insert()在实现的时候插入的元素前后指向不正确。只要链表所有next指针是正原创 2013-02-24 12:43:57 · 714 阅读 · 0 评论 -
设计模式学习1---抽象工厂
/************************************************************************//* 顾客想吃汉堡和鸡腿有肯德基和麦当劳提供由顾客选择 (抽象工厂设计模式练习) *//* 作者: *//*原创 2013-02-24 19:48:30 · 375 阅读 · 0 评论 -
设计模式2---单件模式
//单件设计模式练习#ifndef _SIGLE_H_#define _SIGLE_H_#include class Single{public :static Single* Instance(){if(m_instance==NULL)//这句是关键,千万不能丢下{m_instance=new Single();}counter++;re原创 2013-02-24 19:59:49 · 361 阅读 · 0 评论 -
C++变量文件夹下所有文件
void ShowDir(char* dir){ long Handle; struct _finddata_t FileInfo; if((Handle=_findfirst(dir,&FileInfo))==-1L) { printf("没有找到匹配的项目\n"); // printf("%s\n",FileInfo.name); }原创 2013-05-16 17:59:33 · 905 阅读 · 0 评论 -
ODBC操作数据
先建一个表============go/*==============================================================*//* Table: Student *//*=====================================原创 2013-05-16 18:43:45 · 1030 阅读 · 0 评论 -
宽字节(wchar_t)转变多字节(char)
宽字节和多字节转换 int iindex_1 = 0; char *pmbbuf = new char[100]; wchar_t *pwchello = L"Hello, world."; iindex_1 = wcstombs(pmbbuf,pwchello,100); printf( "转换以后是: %s\n\n", pmbbuf ); 这两原创 2013-05-13 19:07:04 · 1135 阅读 · 0 评论 -
VC++ 动态库类加载实现
VC++ 动态库有2种加载方式,其中显式加载较为常见。c++一般把动态库封装成类的样子,对外提供一个接口,在类中实现功能。通常一个动态库可以有几个接口不等。下面是简单代码实现===================接口类#ifndef _TASK_INTERFACE_H_#define _TASK_INTERFACE_H_//动态链接库接口类class Task{原创 2013-03-10 16:42:35 · 999 阅读 · 0 评论 -
UTF-8到GBK转换
实际就是由宽字节转换为多字节的过程-------------首先MultiByteToWideChar(CP_UTF8, 0, (LPCSTR)szOut, -1, (LPWSTR)wszGBK, len) 转换UTF-8 到表中UNICODE然后WideCharToMultiByte(CP_ACP, 0, (LPWSTR)wszGBK, -1, szGBK, len, NULL,原创 2014-06-12 11:11:31 · 1433 阅读 · 1 评论 -
PHP mysql 中文乱码
windows mysql 装了SQLyog - 32 bitINSERT INTO USER VALUES ('123','123','紫轩');数据库查询发现是乱码:大概是因为装mysql的时候刚开始的默认格式是latin1,这时建议新建一个数据库(是新数据库不是重装),把编码改成gbk.解决mysql乱码。php连接mysql<?php $db_host原创 2015-01-27 17:34:29 · 545 阅读 · 0 评论 -
libCurl 库sftp上传和下载
上传:size_t DownloadFtp::read_callback(void *ptr, size_t size, size_t nmemb, void *stream){curl_off_t nread;/* in real-world cases, this would probably get this data differentlyas this fread()原创 2015-11-13 16:29:29 · 5538 阅读 · 3 评论