都是《月亮惹的祸》

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dongdong9223/article/details/84261058

转载请注明出处:http://blog.csdn.net/dongdong9223/article/details/84261058
本文出自【我是干勾鱼的博客

明显觉察出,这《月亮惹的祸》是萧十一郎在借用《围城》里文纨约会鸿渐时的月下缠绵啦!

在这里插入图片描述

93年出《用心良苦》,张宇的嗓音还欠点火候,MV也一般,但十一郎的词、张宇的曲写的都太棒了,出名也不为怪!

在这里插入图片描述

96年又出了个《用心良苦》,还加个后缀:“全新重唱版”。嗓音日渐成熟,词儿曲儿又都没的说,看来这是张宇“衣锦还乡”,拿着信心和自豪感带大家来怀旧了。如果你看过96年《用心良苦》的MV(K歌最常见的那版),就能体会到不但歌唱得好(是真的好,音准!),故事里更是满满的烧脑意识流!从来自信都让人有点教主情怀:过去我引导,现在可以挥挥手让大家自己入境了。

在这里插入图片描述

张宇遇到十一郎注定是有缘开夫妻店的。十一郎太有才华,一首《月亮惹的祸》,又是钱钟书的文又是刘琨的诗的,二十年前的歌了现在听来还像看新电影似的。周杰伦方文山的歌厉害,句句经典,每首都是95分儿以上;比起来张宇十一郎的歌就不太显眼了,门门都是刚及格,只不过有两首100分儿,比较刺激。。。

在这里插入图片描述

阅读更多

都是“全局变量惹的祸”

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如何解决?谢谢各位了先!!!

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