存档

2009年12月 的存档

2010年世界重大事件预测

2009年12月31日
2010年世界重大事件预测已关闭评论

BW中文网讯,美国《新闻周刊》对2010年世界可能发生的重大事件进行了预测,当人们都认为中国经济会越来越强盛时,预测却提出观点认为中的经济将面临崩溃,政府放宽信贷造成股市和房市泡沫膨胀,市场泡沫令很多投资者感到担忧。

1.阿富汗增兵奏效

阿富汗的增兵将会奏效。因为所有迹象都表明,驻阿富汗美军司令斯坦利·麦克里斯特尔已经从伊拉克吸取了教训。

2.中国经济将崩溃

流行的观点认为,中国是全球金融危机的重要赢家。毕竟它每年以8%的速度增长,政治稳定,流动资金充足。但放宽信贷的结果是造成股市和房市泡沫膨胀,这令很多投资者为市场泡沫感到担忧。实际上甚至中国官员都警告说,新贷款和新投资中相当大一部分已成为市场上的热钱。中国的股市和房地产泡沫将崩溃,导致全球新一轮的通货紧缩。如果这时又发生银行业危机、贸易战 或中国增长放慢,全世界都会听到一声爆裂的巨响。

3.巴基斯坦又发生政变

我们越来越难以想像扎尔达里在2010年底仍然是巴基斯坦总统。他几乎没有民众的支持。2009年10月,仅有20%的巴基斯坦人对他的工作表示满意。然而,更深刻的问题是他没有能力控制政府。专家说,外交部、总理和强有力的军方都反对他的领导。中情局前官员布鲁斯·里德尔说,虽然未必肯定发生政变,但"那是可以想像的。巴基斯坦历史上就是这样"。

4.查韦斯面临另一场政变

曾经蓬勃发展的全球经济和对原油大幅上涨的需求让委内瑞拉强人查韦斯获益匪浅。但经济衰退又冷不防地使他丧失了优势。现在他有关在拉美实现"21世纪社会主义"的追求走向崩溃。大量的政府开支将助长通胀。通胀将严重影响工薪阶层和穷人(这些是查韦斯的主要支持者),并减少对于道路和电力的公共投资。随着不断出现断电、政府债务增加;以及同重要贸易伙伴哥伦比亚之间的冷战加剧,这些问题将造成经济瘫痪。军方将介入推翻查韦斯,并恢复秩序。

5.对欧洲种族主义的激烈反应

2009年,欧洲的政治论调向种族主义转变–瑞士人投票禁止清真寺建尖塔,法国研究禁止穆斯林女子在公众场合穿长袍,还有其他一些众所周知的歧视性事件。2010年预计会出现对种族主义的强烈对抗性反应。如果经济复苏证明只是一种幻想,情况就更是如此。

6.伊朗受到制裁打击

抗议者仍会偶尔走上街头谴责内贾德,但批评似乎只会坚定这位伊朗领导人的决心。当不可避免地又发现该国的一个秘密核设施时,联合国将别无选择,只能考虑制裁。而今天的坚持不合作者(中国和印度)将失去借口。伊朗有五分之二的汽油,以及大量的食品和工业品依赖进口。制裁对它来说可能是破坏性的。

7.巴西将成为新的"中国"

巴西已经从国际投资者、经济学家和国际奥委会那里获得了相当多的推崇。国际奥委会已选择里约热内卢主办2016年奥运会。但随着2010年的发展,巴西同"金砖四国"中其他国家间的差距将会拉大。随着普京的独裁倾向变得日益明显,从而吓退了外国投资,俄罗斯很久之前就退出了赛跑。印度还在强劲增长,但它处于一个不稳定的地区,各方面都受到威胁。当然中国依然受到国际投资者的青睐,但大量风险(房地产泡沫和环境问题)都在视野内盘旋。

8.英国保守党代价高昂的胜利

英国保守党对工党的优势已经缩小,在明年的议会选举中,它可能无法赢得绝对多数。该党派将被迫同自民党结盟。它将过于软弱,无法推行解决英国不断加剧的债务问题所需的各种艰难措施。

9.欧洲面临新的金融危机

在2008年的银行业危机和2009年的经济衰退之后,2010年我们可能会看到下一阶段的全球经济动荡:公共财政方面的危机。问题在欧洲最严重。在西班牙、爱尔兰和英国,政府赤字已上升到GDP的12%还多。而到2014年,欧盟各国的政府债务将超过GDP 的100%。由于担心政府无力解决其巨大赤字, 2009年12月希腊市场发生崩溃。由于大部分欧盟国家使用欧元作为通用货币,它们再也不能通过印刷钞票来解决债务问题,也不能让它们的货币贬值来使自己的出口产品变得更有竞争力,从而摆脱困境.

10.卡斯特罗去世,古美关系改善

卡斯特罗已生病多年,他可能将于2010年去世。对古巴的控制权将正式移交给他的弟弟劳尔。权力移交将是和平的,因为大部分公民尽管对卡斯特罗的极权主义体系的一些方面感到不满,但并不完全排斥社会主义。古巴不会在一夜之间发生改变,但卡斯特罗的去世将意味着同他有关的所有教条式的僵化做法将受到审视。最重要的是,劳尔认识到了同美国增进关系带来的经济潜力,他将减少其政府的反美言论。

本文来源:《新闻周刊》

网络转载 ,

.dll 或.ocx控件注册失败的解决办法+regsvr32的妙用

2009年12月25日
.dll 或.ocx控件注册失败的解决办法+regsvr32的妙用已关闭评论

在.dll 或.ocx控件注册时,出现 DllRegisterServer 失败提示。

返回代码是: 0x80004005

首先,可查看该dll或ocx是否有相关的依赖dll或ocx,可使用depends.exe,这是vc自带的工具,没装vc的可以到网上下载。


如果还是不成功,
可试用以下两种方法

方法1.定位到HKEY_LOCAL_MACHINE\SOFTWARE\Classes

将Classes的权限里面添加你的用户,然后权限设成允许完全控制。

运行:运行"regsvr32 scrrun.dll 就成功了。

————————–

方法2.在"安全模式"下,用administrator登陆系统

运行:运行"regsvr32 scrrun.dll 就成功了。

Regsvr32命令的其他妙用

—————————

Regsvr32命令,看了后就明白了 Regsvr32命令修复系统故障实例使用过activex的人都知道,activex不注册是不能够被系统识别和使用的,一般安装程序都会自动地把它所使用的activex控件注册,但如果你拿到的一个控件需要手动注册怎么办呢?如果修改注册表那就太麻烦了,在windows的system文件夹下有一个regsvr32.exe的程序,它就是windows自带的activex注册和反注册工具。

2000系统的regsvr32.exe在winnt\system32文件夹下;

WInXP系统的regsvr32.exe在windows\system32文件夹下

regsvr32的用法为:

"regsvr32 [/s] [/n] [/i(:cmdline)] dllname"。其中dllname为activex控件文件名,建议在安装前拷贝到system文件夹下。

参数有如下意义:

/u–反注册控件

/s–不管注册成功与否,均不显示提示框

/c–控制台输出

/i–跳过控件的选项进行安装(与注册不同)

/n–不注册控件,此选项必须与/i选项一起使用

执行该命令的方法:

1、可以在"开始"–"运行",调出运行的对话框,也可以使用Win+R热键,然后直接在输入栏输入即可

2、在开始–运行 输入cmd,调出’命令提示符’窗口,然后再执行regsvr32命令。

二、Regsvr32错误消息的说明

当使用 Regsvr32.exe 时,它会尝试加载该组件并调用它的 DLLSelfRegister 函数。如果此尝试成功,Regsvr32.exe 会显示一个指示成功的对话框。如果此尝试失败,Regsvr32.exe 会返回一条错误消息,其中可能会包括一个 Win32 错误代码。

以下列表介绍了 RegSvr32 错误消息和可能的原因。

Unrecognized flag:/invalid_flag

键入的标志或开关组合无效(请参阅本文中的"Regsvr32.exe 的用法"一节)。

No DLL name specified.

未包括 .dll 文件名(请参阅本文中的"Regsvr32.exe 的用法"一节)。

Dllname was loaded, but the DllRegisterServer or DllUnregisterServer entry point was not found.

Dllname不是.dll 或.ocx 文件。例如,键入 regsvr32 wjview.exe 就会生成该错误消息。

例如,键入regsvr32 icwdial.dll 后就会返回该错误消息,因为 Icwdial.dll 文件不能自行注册。如果您怀疑内存中有损坏的Dllname 版本,请尝试重新启动计算机,或重新提取该文件的原始版本。如果您运行的是 Windows NT,可能需要使用 Microsoft Windows NT Server 4.0 资源工具包 中的 Kill 或 Pview 工具。有关其他信息,请单击以查看以下 Microsoft 知识库文章:197155 如何终止孤立进程OleInitialize failed (or OleUninitialize failed).

Regsvr32 必须先初始化 COM 库,然后才能调用所需的 COM 库函数并在关闭时撤消对该库的初始化。

一、轻松修复IE浏览器

regsvr32 Shdocvw.dll

regsvr32 Oleaut32.dll

regsvr32 Actxprxy.dll

regsvr32 Mshtml.dll

regsvr32 Urlmon.dll

regsvr32 browseui.dll

作用:

1、同时运行以上命令不仅可以解决IE不能打开新的窗口,用鼠标点击超链接也没有任何反应的问题;

2、还能解决大大小小的其它IE问题,比如网页显示不完整,JAVA效果不出现,网页不自动跳转,打开某些网站时总提示’无法显示该页’等。

二、解决Windows无法在线升级的问题

regsvr32 wupdinfo.dll

作用:

Windows的漏洞很多,每隔一段时间就需要使用"Windows Update"升级程序进行在线升级,不过"Windows Update"经常出现无法使用的情况,这时,我们可以使用Regsvr32来解决这个问题。

三、防范网络脚本病毒有新招

regsvr32 /u scrrun.dll

作用:

网络脚本病毒嵌在网页中,上网时在不知不觉中机器就会感染上这种病毒。笔者认为单纯使用杀毒软件并不能有效地防范这些脚本病毒,必须从病毒传播的机理入手。网络脚本病毒的复制、传播都离不开FSO对象(File System Object,文件系统对象),因此禁用FSO对象就能有效地控制脚本病毒的传播。

如果需要使用FSO对象,键入"regsvr32 scrrun.dll"命令即可。

四、卸载Win XP自带的ZIP功能

regsvr32 /u zipfldr.dll

作用:

Win XP以功能强大而著称,但有些功能却常常令人有"鸡肋"之感,比如Win XP自带的ZIP功能和图片预览功能,不仅占用了系统资源,功能也远不如第三方软件强大。其实用Regsvr32命令可以很容易地卸载这些功能。

五、修复无法缩略图查看文件问题

2000: 开始→运行,输入regsvr32 thumbvw.dll

XP: 开始→运行,输入regsvr32 shimgvw.dll

六、让WMP播放器支持RM格式

很多朋友喜欢用Windows Media Player(以下简称WMP)播放器,但是它不支持RM格式,难道非得安装其它播放软件吗?笔者有办法。

以Win XP为例,首先下载一个RM格式插件,解压缩后得到两个文件夹: Release(用于Windows 9x)和Release Unicode (用于Windows 2000/XP);将Release Unicode文件夹下的RealMediaSplitter.ax文件拷贝到"系统盘符\WINDOWS\System32\"目录下;在"开始→运行 "中键入"regsvr32 RealMediaSplitter.ax",点击"确定"即可。接着下载解码器,如Real Alternative,安装后就能用WMP播放RM格式的影音文件了。

七、让WMP9的播放器出现

有些音乐网页的在线点歌需要用到Media Player,有的朋友明明安装了WMP9,但在线听音乐却只看到枯燥的WMP6播放器面板,想让漂亮的WMP9面板出现,当然没问题的。

常见问题的操作系统多数WIN 98,先关闭IE,再在"开始→运行"中键入"regsvr32 wmpdxm.dll",点击"确定"即可。

八、解决打开系统功能时无反应regsvr32 shdocvw.dll

作用:

有时从开始菜单里点击XP系统的搜索功能、帮助和支持或管理工具等,但就是无任何反应,这是它们的打开方式缺少关联,所以我们只要用regsvr32注册它们需要调用的动态连接库文件就行了。

九、添加/删除程序打不开了regsvr32 appwiz.cpl

regsvr32 mshtml.dll

regsvr32 jscript.dll

regsvr32 msi.dll

regsvr32 "c:\program files\common files\system\ole db\oledb32.dll"

regsvr32 "c:\program files\common files\system\ado\msado15.dll"

regsvr32 mshtmled.dll

regsvr32 /i shdocvw.dll

regsvr32 /i shell32.dll

作用:

当打开控制面板中的添加/删除程序时,双击它的图标后无反应,或者打开后自动关闭了,尝试使用以上命令可以解决。

十、XP的用户帐户打不开regsvr32 nusrmgr.cpl

regsvr32 mshtml.dll

regsvr32 jscript.dll

regsvr32 /i shdocvw.dll

十一、防范网络脚本病毒有新招

regsvr32 /u scrrun.dll 禁用FSO对象

regsvr32 scrrun.dll 使用FSO对象

十二、解决Windows无法在线升级的问题regsvr32 wupdinfo.dll

以下症状我把它称作IE的活动脚本漏洞,虽然这两个命令能修复,但治标不治本,我建议遇到此问题的朋友到微软网站进行IE安全更新,即打漏洞补丁。

regsvr32 jscript.dll

regsvr32 vbscript.dll

作用:

1、跟上面讲的修复IE浏览器方法配合使用(可以不配),可以很好的解决浏览某些网页无法正常显示和功能不正常,如:

a.不显示某些验证码

b.不显示某些动态图片

c.不显示某些论坛的帖子列表

d.论坛快速跳转功能无用

e.论坛发贴时按Ctrl+Enter提交无反应

2、修复个别窗口空白,如XP的’搜索’功能的搜索助理操作面板空白、系统还原页面空白和用户帐户页面空白等。(可修复把握度100%)

3、解决windows media player 9或以上版本打开时提示’出现内部应用程序错误’。(可修复把握度100%)

4、可以修复win 2000的’添加/删除程序’打开后一片空白。(可修复把握度99%)

5、解决win 2000以WEB方式查看Program Files文件夹和Winnt文件夹时看不到任何文件,以及’控制面板’的图标跑到左边去的问题。

6、解决网页上网际快车的右键菜单功能无法使用。

在网站中,当右键点某个’下载连接’时,会弹出菜单,选择’使用网际快车下载’会再弹出FLASHGET的下载任务页面,如果发现该功能无反应,那就可能是这个原因:原来这项菜单是调用了FLASHGET目录下的jc_link.htm文件,这个文件是用VB语言编写的,所以其作用丢失是动态连接库 vbscript.dll没有注册和调用到。

IT技术 , ,

美上诉法庭判决微软禁售含侵权专利Word

2009年12月23日
美上诉法庭判决微软禁售含侵权专利Word已关闭评论

  北京时间12月23日凌晨消息,据国外媒体报道,美国一家上诉法庭周二作出判决,维持此前作出的一项陪审团判决,内容是责令微软向加拿大的一家小型软件公司赔付2.9亿美元,称其侵犯了这家公司所持有的一项软件专利。此外,这家上诉法庭还确认了一项禁令,内容是禁止微软出售含有前述专利的Word版本。

  业界分析师认为,由美国联邦巡回上诉法庭作出的这项判决可能意味着,微软与总部位于多伦多的软件公司i4i之间长久以来的司法争端就此告终。

  今年8月12日,美国德克萨斯州一家联邦地区法庭的陪审团作出了有利于i4i的判决,裁定微软2003和2007版Word程序侵犯了i4i一项有关XML(可扩展标记语言)使用的专利。该陪审团责令微软向i4i赔偿2.9亿美元,法庭同时还批准了i4i的一项禁令动议,内容是禁止微软出售含有这项专利技术的Word程序。

  由于微软向美国联邦巡回上诉法庭提出上诉的缘故,上述禁令一直未能实施。根据上诉法庭周二作出的判决,微软将在2010年1月11日起被禁止出售含有侵权内容的Wrod版本。但业内专家表示,本案最有可能的结果是双方达成一项和解协议,允许微软向i4i支付专利版权费用,从而得以继续出售上述版本的Word程序。

  i4i的创始人米歇尔·乌尔普(Michel Vulpe)发表声明称:"i4i对上诉法庭维持陪审团判决的决定感到非常高兴,这是保护小型发明者知识产权的重要步骤。"

  微软方面则尚未就此事发表评论。

网络转载

关于setsocketopt函数

2009年12月18日
关于setsocketopt函数已关闭评论

1. 每个套接口都有一个发送缓冲区和一个接收缓冲区。 接收缓冲区被TCP和UDP用来将接收到的数据一直保存到由应用进程来读。 TCP:TCP通告另一端的窗口大小。 TCP套接口接收缓冲区不可能溢出,因为对方不允许发出超过所通告窗口大小的数据。这就是TCP的流量控制,如果对方无视窗口大小而发出了超过宙口大小的数据,则接 收方TCP将丢弃它。 UDP:当接收到的数据报装不进套接口接收缓冲区时,此数据报就被丢弃。UDP是没有流量控制的;快的发送者可以很容易地就淹没慢的接收者,导致接收方的UDP丢弃数据报。
2.我们经常听说tcp协议的三次握手,但三次握手到底是什么,其细节是什么,为什么要这么做呢?
第一次:客户端发送连接请求给服务器,服务器接收;
第二次:服务器返回给客户端一个确认码,附带一个从服务器到客户端的连接请求,客户机接收,确认客户端到服务器的连接.
第三次:客户机返回服务器上次发送请求的确认码,服务器接收,确认服务器到客户端的连接.
我们可以看到:
1. tcp的每个连接都需要确认.
2. 客户端到服务器和服务器到客户端的连接是独立的.
我们再想想tcp协议的特点:连接的,可靠的,全双工的,实际上tcp的三次握手正是为了保证这些特性的实现. [/code]
3.setsockopt的用法

1.closesocket(一般不会立即关闭而经历TIME_WAIT的过程)后想继续重用该socket:
BOOL bReuseaddr=TRUE;
setsockopt(s,SOL_SOCKET ,SO_REUSEADDR,(const char*)&bReuseaddr,sizeof(BOOL));

2. 如果要已经处于连接状态的soket在调用closesocket后强制关闭,不经历
TIME_WAIT的过程:
BOOL bDontLinger = FALSE;
setsockopt(s,SOL_SOCKET,SO_DONTLINGER,(const char*)&bDontLinger,sizeof(BOOL));

3.在send(),recv()过程中有时由于网络状况等原因,发收不能预期进行,而设置收发时限:
int nNetTimeout=1000;//1秒
//发送时限
setsockopt(socket,SOL_S0CKET,SO_SNDTIMEO,(char *)&nNetTimeout,sizeof(int));
//接收时限
setsockopt(socket,SOL_S0CKET,SO_RCVTIMEO,(char *)&nNetTimeout,sizeof(int));

4.在send()的时候,返回的是实际发送出去的字节(同步)或发送到socket缓冲区的字节
(异步);系统默认的状态发送和接收一次为8688字节(约为8.5K);在实际的过程中发送数据
和接收数据量比较大,可以设置socket缓冲区,而避免了send(),recv()不断的循环收发:
// 接收缓冲区
int nRecvBuf=32*1024;//设置为32K
setsockopt(s,SOL_SOCKET,SO_RCVBUF,(const char*)&nRecvBuf,sizeof(int));
//发送缓冲区
int nSendBuf=32*1024;//设置为32K
setsockopt(s,SOL_SOCKET,SO_SNDBUF,(const char*)&nSendBuf,sizeof(int));

5. 如果在发送数据的时,希望不经历由系统缓冲区到socket缓冲区的拷贝而影响
程序的性能:
int nZero=0;
setsockopt(socket,SOL_S0CKET,SO_SNDBUF,(char *)&nZero,sizeof(nZero));

6.同上在recv()完成上述功能(默认情况是将socket缓冲区的内容拷贝到系统缓冲区):
int nZero=0;
setsockopt(socket,SOL_S0CKET,SO_RCVBUF,(char *)&nZero,sizeof(int));

7.一般在发送UDP数据报的时候,希望该socket发送的数据具有广播特性:
BOOL bBroadcast=TRUE;
setsockopt(s,SOL_SOCKET,SO_BROADCAST,(const char*)&bBroadcast,sizeof(BOOL));

8.在client连接服务器过程中,如果处于非阻塞模式下的socket在connect()的过程中可
以设置connect()延时,直到accpet()被呼叫(本函数设置只有在非阻塞的过程中有显著的
作用,在阻塞的函数调用中作用不大)
BOOL bConditionalAccept=TRUE;
setsockopt(s,SOL_SOCKET,SO_CONDITIONAL_ACCEPT,(const char*)&bConditionalAccept,sizeof(BOOL));

9.如果在发送数据的过程中(send()没有完成,还有数据没发送)而调用了closesocket(),以前我们
一般采取的措施是"从容关闭"shutdown(s,SD_BOTH),但是数据是肯定丢失了,如何设置让程序满足具体
应用的要求(即让没发完的数据发送出去后在关闭socket)?
struct linger {
u_short l_onoff;
u_short l_linger;
};
linger m_sLinger;
m_sLinger.l_onoff=1;//(在closesocket()调用,但是还有数据没发送完毕的时候容许逗留)
// 如果m_sLinger.l_onoff=0;则功能和2.)作用相同;
m_sLinger.l_linger=5;//(容许逗留的时间为5秒)
setsockopt(s,SOL_SOCKET,SO_LINGER,(const char*)&m_sLinger,sizeof(linger));

 

IT技术 , , ,