都是咖啡惹的祸~

06.1.3    阴    星期三

都连续下几天雨了,让人觉得心里都有些憋闷。

要来就痛快些吧,呵!还就不紧不慢的悠哉游哉!

心中仅有的一丝热情也都消失殆尽!

晚上,新电脑遇到点问题,不知道怎么回事突然没音了,

恁是视频和远程协助都整不好,自己又不会弄,害得ham浪费了两个小时。

已经10:05了,楼下王师傅催得急,赶紧收拾一下回宿舍。

一切洗漱完毕,继续我的伟大工程——啃单词!

 

也许是下午喝了咖啡的缘故,晚上精神特别好,攻克了N个单词后,仍然没有一点倦意。

看看手机1:01分了,ham适时地打来电话慰问,我告诉他下午喝了咖啡,

他骂我神经病!呵呵,我现在已是十足的夜猫一族了!

2:50躺到了床上,心里琢磨着应该很快睡着吧。

可是,我就这点不好,平时进入睡眠状态就比蜗牛还慢,更何况今天喝了咖啡!

翻来覆去再看手机已经3:45了,晕阿,想睡觉而睡不着居然是那么痛苦!

以后再也不在下午喝咖啡了!

都是“全局变量惹的祸”

03-24

1、我现在在stdafx.cpp中定义了如下全局变量rnCAdoConnection adoConn; // CAdoConnection 是我自己创建的一个对_ConnectionPtr 的封装类;rnCAdoRecordset adoRec; // CAdoRecordset 是我自己创建的一个对_RecordsetPtr 的封装类;rnrn2、在stdafx.h中使用了如下引用rnextern CAdoConnection adoConn;rnextern CAdoRecordset adoRec;rnrn3、在程序中没有对这两个全局变量进行引用rn 但是在程序退出的时候就会有报错对话框出现(Unhandled exception in test.exe:0xC0000005: Access Violation),我对错误进行了跟踪,错误指向了COMIP.H文件中的“m_pInterface->Release();”rnrn void _Release() throw()rn rn if (m_pInterface != NULL) rn m_pInterface->Release();rn rn rnrn但是,如果我不采用全局变量的时候,程序都能正常执行和退出。rnrn请问各位,是不是我的全局变量的定义有问题,还是哪个地方出现了错误?rn我的 构造函数 和 构析函数如下:rnrnCAdoConnection::CAdoConnection()rnrn AfxOleInit();rn m_pConnection.CreateInstance("ADODB.Connection");rnrn#ifdef _DEBUGrn if(m_pConnection==NULL)rn rn AfxMessageBox("Connection 对象创建失败! 请确认初始化了COM环境!\r\n");rn rn#endifrnrn ASSERT (m_pConnection!=NULL);rnrnrnCAdoConnection::~CAdoConnection()rnrnrnrnCAdoRecordset::CAdoRecordset()rnrn m_pConnection = NULL;rnrn m_pRecordset.CreateInstance("ADODB.Recordset");rn#ifdef _DEBUGrn if (m_pRecordset == NULL)rn rn AfxMessageBox("RecordSet 对象创建失败! 请确认是否初始化了COM环境.");rn rn#endifrn ASSERT(m_pRecordset != NULL);rnrnrnCAdoRecordset::~CAdoRecordset()rnrnrn

都是“信号和槽”惹的祸。。。

08-04

程序报错如下:rnwebview.o: In function `WebPage::createPlugin(QString const&, QUrl const&, QStringList const&, QStringList const&)':rnwebview.cpp:(.text+0xdd0): undefined reference to `QUiLoader::QUiLoader(QObject*)'rnwebview.cpp:(.text+0xde0): undefined reference to `QUiLoader::QUiLoader(QObject*)'rnwebview.cpp:(.text+0xe30): undefined reference to `QUiLoader::createWidget(QString const&, QWidget*, QString const&)'rnwebview.cpp:(.text+0xe44): undefined reference to `QUiLoader::createWidget(QString const&, QWidget*, QString const&)'rnwebview.cpp:(.text+0xe78): undefined reference to `QUiLoader::~QUiLoader()'rnwebview.cpp:(.text+0xf14): undefined reference to `QUiLoader::~QUiLoader()'rnwebview.cpp:(.text+0xe7c): undefined reference to `QUiLoader::~QUiLoader()'rnwebview.cpp:(.text+0xeb4): undefined reference to `QUiLoader::~QUiLoader()'rnwebview.cpp:(.text+0xeb8): undefined reference to `QUiLoader::~QUiLoader()'rnwebview.o:webview.cpp:(.text+0xee4): more undefined references to `QUiLoader::~QUiLoader()' followrncollect2: ld returned 1 exit statusrn错误信息说没用定义用到的函数,但是下面的头文件中定义如下:rn/*quiloader.h*/rn#ifndef QUILOADER_Hrn#define QUILOADER_Hrnrn#include rnrnQT_BEGIN_HEADERrnrnQT_BEGIN_NAMESPACErnrnclass QUiLoader : public QObjectrnrn Q_OBJECTrnpublic:rn QUiLoader(QObject *parent = 0);rn virtual ~QUiLoader();rnrn QStringList pluginPaths() const;rn void clearPluginPaths();rn void addPluginPath(const QString &path);rnrn QWidget *load(QIODevice *device, QWidget *parentWidget = 0);rn QStringList availableWidgets() const;rn QStringList availableLayouts() const;rnrn virtual QWidget *createWidget(const QString &className, QWidget *parent = 0, const QString &name = QString());rn virtual QLayout *createLayout(const QString &className, QObject *parent = 0, const QString &name = QString());rn virtual QActionGroup *createActionGroup(QObject *parent = 0, const QString &name = QString());rn virtual QAction *createAction(QObject *parent = 0, const QString &name = QString());rnrn void setWorkingDirectory(const QDir &dir);rn QDir workingDirectory() const;rn 。。。。。。。。rn;rnQT_END_NAMESPACErnrnQT_END_HEADERrnrn#endif // QUILOADER_Hrnrn在webview.cpp中,从这里开始使用头文件的定义:rn#if !defined(QT_NO_UITOOLS)rnQObject *WebPage::createPlugin(const QString &classId, const QUrl &url, const QStringList &paramNames, const QStringList &paramValues)rnrn Q_UNUSED(url);rn Q_UNUSED(paramNames);rn Q_UNUSED(paramValues);rn QUiLoader loader;rn return loader.createWidget(classId, view());rnrn#endif // !defined(QT_NO_UITOOLS)rnrn希望高手给点意见,指点指点,现在代码改的我都不知道什么错误原因了,谢谢了,小弟现在一片迷茫了。

都是ATL.DLL惹的祸

01-11

用VC的ATL做COM组件,确实很爽(个人观点)。可有一个问题不知大家注意到了没:你做的COM组件在有的机子上注册不上,做了个COM嵌在网页中,用浏览器在有的机子上就是下载安装不上。问题就在ATL.DLL上,它本身也是个COM,如用户的机子上没有已注册的ATL.DLL,那方才说的问题就出现了。WIN 2000,WIN ME操作系统上已有此dll,可9X,NT 上确省可没有,装了VC,NETMEETING 3之类的会有,但不能指望用户机子上装了这些东东吧?特别是用于网页的ocx,你要提醒用户先在自己的机子上找找有没有ATL.DLL,如没有,则如何如何...?!那就做个INF文件,加上你的OCX与ATL.DLL打成一个CAB。哪网景浏览器呢?我在网景公司的网上得知‘Esker ActiveX Plug-in’可使网景浏览器支持ACTIVEX 控件,如今最新是4.1板,我们一直在用着,还算行吧。可它不支持CAB!rn气人:(。以前我用BCB做控件,没遇过ATL.DLL问题。因为有一次做的ASP组件在在9X,NT下均没问题,正好客户的SERVER用的是2000,结果在2000上没注册上。用VC做了一个是可以的,再加上其他一些原因吧,现在就用VC了,可没想到又遇上ATL.DLL问题,唉,怎么办?小弟技术,经验都差,不知为什么用BCB做的就不需要ATL.DLL,它的下面用的也是ATL呀!ATL.DLL有静态联编版本?我不知道,谁知道?先谢谢了。rn或则在网页上也将加上版本号,CLSID的ATL.DLL嵌进去,用户有就算了,无则下。是个办法,不过,谁有微软签过名的ATL.DLL?我可不能用自己的证书给它(ATL.DLL)签名,微软找我麻烦咋办?看来也不行。rnrn怎么办?rn1.找个支持CAB的网景浏览器插件?我没找到,谁有?rn2.静态联编ATL.DLL?谁有此库?rn3.有微软签名的控件来解决?谁有?rnrn我现在的方法是,让用户先下载个程序执行,将ATL.DLL拷在%system%下,然后regsvr32 ATL.DLL,可也太...不好了吧?rnrn如何解决?谢谢各位了先!!!

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试

关闭