文章主要描述的是在SQL Server里调用COM组件的实际操作步骤,在SQL Server数据库里可以调用基于IDispatch的COM组件,你如果对其有兴趣的可以自己去查SQL帮助里的sp_OACreate、sp_OAMethod、sp_OADestroy等存储过程的用法。
下面是我在一个短信报警的小项目里的一些sql代码,报警信息通过各类软件插入到SQL Server里,然后通过触发器调用组件,并发送短信到指定手机上去,实现自动报警功能。
测试数据库的触发器
调用COM发送短信
这里的代码可以说是没有问题,但是也可以说是有很大的问题。
关键就在于组件的SendMsg方法,为什么呢?我可以举出几个我实际碰到的问题来做具体说明。
最主要有2点
第1:此SQL Server里调用COM组件是否为进程内组件,组件内部代码是否足够强壮
第2:创建组件和销毁组件及组件方法要尽最大可能的快速
我对上述两点做一个说明
如果SQL Server里调用COM组件为进程内组件的话,意味着此组件被SQL Server加载,如果此代码不够健壮,那么,由于组件本身导致的挂起,崩溃,会直接影响到整个SQL Server,那么情况是非常严重的,这种错误,发生一次就足以要了你的小命,如果恰好在客户的脸上爆炸的话……
解决的方法只有这样:首先保证你的组件代码足够强壮,强壮到不能再强壮为止。还有就是尽量让组件不要是进程内的,如果已经是DLL了,那么就交给COM+ Catalog来管理。这样就解决了因为组件崩溃挂起导致SQL Server产生问题。
其次,要让你的组件的创建、方法调用、销毁都快到不能再快,要快到几乎瞬间就完成。否则如果突然有海量数据进来,你的触发器来不及反映,那你的数据就可能被回滚掉,而且这些数据很重要,那你就等着被Fire吧 L 5555~~~~~
如果非要用这种方法的话,那么就要完成我上面提到的2点,并且最好启用COM+对象池。如果方法需要很长时间才能返回,并且无法优化了,那么就把这些方法移出去,把这些动作在另外的程序里做,让COM方法立刻返回。

总而言之,言而总之,在系统集成的时候如果几个开发厂商没有商量好接口,并且都采用SQL Server数据库,那么关于此类数据的操作,似乎用这样的方法就是最好的补救。
【编辑推荐】
PHP.JSP.ASP的区别
ASP全名Active Server Pages,是一个WEB服务器端的开发环境,利用它可以产生和执行动态的、互动的、高性能的WEB服务应用程序。 ASP采用脚本语言VBScript(Java script)作为自己的开发语言。 PHP是一种跨平台的服务器端的嵌入式脚本语言。 它大量地借用C,Java和Perl语言的语法, 并耦合PHP自己的特性,使WEB开发者能够快速地写出动态产生页面。 它支持目前绝大多数数据库。 还有一点,PHP是完全免费的,不用花钱,你可以从PHP官方站点(http: //)自由下载。 而且你可以不受限制地获得源码,甚至可以从中加进你自己需要的特色。 JSP是Sun公司推出的新一代网站开发语言,Sun公司借助自己在Java上的不凡造诣,将Java从Java应用程序和Java Applet之外,又有新的硕果,就是JSP,Java Server Page。 JSP可以在Serverlet和JavaBean的支持下,完成功能强大的站点程序。 三者都提供在 HTML代码中混合某种程序代码、由语言引擎解释执行程序代码的能力。 但JSP代码被编译成 Servlet并由Java虚拟机解释执行,这种编译操作仅在对JSP页面的第一次请求时发生。 在ASP 、PHP、JSP环境下,HTML代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。 普通的 HTML页面只依赖于Web服务器,而ASP 、PHP、JSP页面需要附加的语言引擎分析和执行程序代码。 程序代码的执行结果被重新嵌入到HTML代码中,然后一起发送给浏览器。 ASP 、PHP、JSP三者都是面向Web服务器的技术,客户端浏览器不需要任何附加的软件支持。 技术特点ASP:1. 使用VBScript 、 JScript等简单易懂的脚本语言,结合HTML代码,即可快速地完成网站的应用程序。 2. 无须compile编译,容易编写,可在服务器端直接执行。 3. 使用普通的文本编辑器,如Windows的记事本,即可进行编辑设计。 4. 与浏览器无关(Browser Independence), 客户端只要使用可执行HTML码的浏览器,即可浏览Active Server Pages所设计的网页内容。 Active ServerPages 所使用的脚本语言(VBScript 、 Jscript)均在WEB服务器端执行,客户端的浏览器不需要能够执行这些脚本语言。 Server Pages能与任何ActiveX scripting语言兼容。 除了可使用VB Script或JScript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其它脚本语言,譬如REXX 、Perl 、Tcl等。 脚本引擎是处理脚本程序的COM(Component Object Model) 对象。 6. 可使用服务器端的脚本来产生客户端的脚本。 7. ActiveX Server Components(ActiveX 服务器组件 )具有无限可扩充性。 可以使用Visual Basic 、Java 、Visual C++ 、COBOL等程序设计语言来编写你所需要的ActiveX Server Component 。 PHP:1?数据库连接PHP可以编译成具有与许多数据库相连接的函数。 PHP与MySQL是现在绝佳的群组合。 你还可以自己编写外围的函数去间接存取数据库。 通过这样的途径当你更换使用的数据库时,可以轻松地修改编码以适应这样的变化。 PHPLIB就是最常用的可以提供一般事务需要的一系列基库。 但PHP提供的数据库接口支持彼此不统一,比如对Oracle, MySQL,Sybase的接口,彼此都不一样。 这也是PHP的一个弱点。 JSP:1?将内容的产生和显示进行分离使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。 使用JSP标识或者小脚本来产生页面上的动态内容。 产生内容的逻辑被封装在标识和JavaBeans群组件中,并且捆绑在小脚本中,所有的脚本在服务器端执行。 如果核心逻辑被封装在标识和Beans中,那么其它人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的产生。 在服务器端,JSP引擎解释JSP标识,产生所请求的内容(例如,通过存取JavaBeans群组件,使用JDBC技术存取数据库),并且将结果以HTML(或者XML)页面的形式发送回浏览器。 这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。 2?强调可重用的群组件绝大多数JSP页面依赖于可重用且跨平台的组件(如:JavaBeans或者Enterprise JavaBeans)来执行应用程序所要求的更为复杂的处理。 开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者用户团体所使用。 基于组件的方法加速了总体开发过程,并且使得各种群组织在他们现有的技能和优化结果的开发努力中得到平衡。 3?采用标识简化页面开发Web页面开发人员不会都是熟悉脚本语言的程序设计人员。 JavaServer Page技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容产生所需要的。 标准的JSP标识能够存取和实例化 JavaBeans组件,设定或者检索群组件属性,下载Applet,以及执行用其它方法更难于编码和耗时的功能。 通过开发定制化标识库,JSP技术是可以扩展的。 今后,第三方开发人员和其它人员可以为常用功能建立自己的标识库。 这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。 JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且扩展到能够支持企业级的分布式应用。 作为采用Java技术家族的一部分,以及Java 2EE的一个成员,JSP技术能够支持高度复杂的基于Web的应用。 由于JSP页面的内置脚本语言是基于Java程序设计语言的,而且所有的JSP页面都被编译成为Java Servlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。 作为Java平台的一部分,JSP拥有Java程序设计语言“一次编写,各处执行”的特点。 随着越来越多的供货商将JSP支持加入到他们的产品中,您可以使用自己所选择的服务器和工具,修改工具或服务器并不影响目前的应用。 应用范围ASP是Microsoft开发的动态网页语言,也继承了微软产品的一贯传统,只能执行于微软的服务器产品,IIS(Internet Information Server) (windows NT)和PWS(Personal Web Server)(windows 98)上。 Unix下也有ChiliSoft的组件来支持ASP,但是ASP本身的功能有限,必须通过ASP+COM的群组合来扩充,Unix下的COM实现起来非常困难。 PHP3可在Windows,Unix,Linux的Web服务器上正常执行,还支持IIS,Apache等一般的Web服务器,用户更换平台时,无需变换PHP3代码,可即拿即用。 JSP同PHP3类似,几乎可以执行于所有平台。 如Win NT,Linux,Unix。 在NT下IIS通过一个外加服务器,例如JRUN或者ServletExec,就能支持JSP。 知名的Web服务器Apache已经能够支持JSP。 由于Apache广泛应用在NT、Unix和Linux上,因此JSP有更广泛的执行平台。 虽然现在NT操作系统占了很大的市场份额,但是在服务器方面Unix的优势仍然很大,而新崛起的Linux更是来势不小。 从一个平台移植到另外一个平台,JSP和JavaBean甚至不用重新编译,因为Java字节码都是标准的与平台无关的。 性能比较有人做过试验,对这三种语言分别做回圈性能测试及存取Oracle数据库测试。 在循环性能测试中,JSP只用了令人吃惊的四秒钟就结束了*的回圈。 而ASP、PHP测试的是2000*2000循环(少一个数量级),却分别用了63秒和84秒。 (参考PHPLIB)。 数据库测试中,三者分别对 Oracle 8 进行 1000 次 Insert,Update,Select和Delete: JSP 需要 13 秒,PHP 需要 69 秒,ASP则 需要 73 秒。 前景分析目前在国内PHP与ASP应用最为广泛。 而JSP由于是一种较新的技术,国内采用的较少。 但在国外,JSP已经是比较流行的一种技术,尤其是电子商务类的网站,多采用JSP。 采用PHP的网站如新浪网(sina)、中国人(Chinaren)等,但由于PHP本身存在的一些缺点,使得它不适合应用于大型电子商务站点,而更适合一些小型的商业站点。 首先,PHP缺乏规模支持。 其次,缺乏多层结构支持。 对于大负荷站点,解决方法只有一个:分布计算。 数据库、应用逻辑层、表示逻辑层彼此分开,而且同层也可以根据流量分开,群组成二维数组。 而PHP则缺乏这种支持。 还有上面提到过的一点,PHP提供的数据库接口支持不统一,这就使得它不适合运用在电子商务中。 ASP和JSP则没有以上缺陷,ASP可以通过Microsoft Windowsd的COM/DCOM获得ActiveX规模支持,通过DCOM和Transcation Server获得结构支持;JSP可以通过SUN Java的Java Class和EJB获得规模支持,通过EJB/CORBA以及众多厂商的Application Server获得结构支持。 三者中,JSP应该是未来发展的趋势。 世界上一些大的电子商务解决方案提供商都采用JSP/Servlet。 比较出名的如IBM的E-business,它的核心是采用JSP/Servlet的Web Sphere。 它们都是通过CGI来提供支持的。 但去年10月后它推出了Enfinity,一个采用JSP/Servlet的电子商务Application Server,而且声言不再开发传统软件。 总之,ASP,PHP,JSP三者都有相当数量的支持者,由此也可以看出三者各有所长。 正在学习或使用动态页面的朋友可根据三者的特点选择一种适合自己的语言。
有的软件是免安装版,这样有什么好处?
免安装版就是所谓的绿色软件 绿色软件的优点,就是对操作系统无污染(恐怕这也是绿色这个名字的由来),不需要安装,方便卸载,便于携带,可以拷贝到便携的U盘上到处运行。 我的意见是,绿色软件应该分类,分为狭义的绿色和广义的绿色: 狭义的绿色可以叫做纯绿色软件,就是指这个软件对现有的操作系统部分没有任何改变,除了软件现在安装的目录,应该不往任何地方写东西,删除的时候,直接删除所在的目录就可以了,就类似于以前的大多数DOS程序。 广义的绿色就是指不需要专门的安装程序,对系统的改变比较少,手工也可以方便的完成这些改变,比如拷贝几个动态库,或者导入注册表,这里的关键是手工可以方便的完成这些改变,或者可以借助于批处理等等脚本完成。 为什么要分为两类?虽然狭义的绿色软件最为理想,但是完全符合这种定义的软件非常罕见,而相当多的软件可以划分到广义的绿色这个类别,这样包括了广义的绿色软件的概念后使得绿色软件这个概念更有意义。 那么不符合绿色软件要求的有哪些呢?主要是指那些和操作系统联系和集成非常紧密的软件,这些软件不适合制成绿色软件,最好还是用原来的安装程序来安装。 如IE6,替换了系统中的许多动态库,手工完成这个过程很困难,也不太安全。 又比如大多数杀毒软件,如果 必须实时监控系统的底层运作,对系统的修改比较大,就不适合做成绿色软件。 还有微软公司的Office系列软件,和系统集成的也比较紧密。 但是广义的这个标准比较灵活,如果有人搞清楚了Office系列软件的安装制作过程,也有可能制作出广义的绿色的Of fice系列。 为了充分理解绿色软件的定义,必须从现代软件的安装过程和运行过程两个方面来讨论。 安装过程:以前在dos下面的时候,就没有这些所谓绿色软件的说法,原来程序的安装基本上都是简单的复制或者解压缩,然后配置一下 和文件就可以了。 随着windows的发展,应用软件也越来越大,也越来越复杂,从而有公司专门从事安装程序的制作,如InstallShield就是一款比较有名和应用比较广泛的安装软件,现在windwos也有了专门的安装程 序,就是Microsoft Installer。 安装程序的作用是什么呢?主要是为了给要安装的程序提供一个简单方便的设置环境,而不需要用户手工完成这个步骤,越是复杂的配置过程,对系统的修改越多,对安装程序的依赖性就越高,Windows程序的易学易用的优点和良好的安装界面 是分不开的,安装软件的任务就是给应用程序提供一个初步完好的可以运行的环境,而不需要用户进行手工配置。 运行过程:应用程序启动的时候,从注册表或者配置文件中读取配置,运行的时候,可以修改配置,但这个修改一般是在安装软件所作工作的基础上进行的,例如不能改变应用程序的安装位置了。 明白安装过程和运行过程的区别后,很容易就想到把绿色软件的使用按照这两个阶段分为绿色安装过程和绿色运行过程。 绿色安装是绿色运行的前提,没有绿色安装,也就说不上什么绿色运行了,绿色软件首先必须是绿色安装,我前面提到的不适合绿色软件标准的基本上都 是不能绿色安装的。 绿色安装的基本含义,我认为可以也可以分为狭义的和广义的绿色安装: 1 狭义的绿色安装就是指直接拷贝或者解压缩到目标目录,不需要向系统目录拷贝也不需要写入注册表,这是最理想的情况,或者是安装程序的作用除了解压缩外是可以忽略的,如在开始菜单加入快捷键等对系统和软件的运行没有太大影响的操作,也就是说安装过程的作用就 是复制文件到目标文件夹。 2 广义的绿色安装就是指在狭义的复制的基础上,必须向系统目录拷贝一些动态库,或者要在注册表中导入必要的设置,或者要进行一些其他的配置,否则的话,应用程序不能运行,而且这个配置工作应该比较简单,也容易撤销这些操作对系统的改变。 同样,绿色运行也可以分为狭义的和广义的绿色运行: 1 狭义的绿色运行指的是软件运行时完全不改变操作系统的文件和配置--很多小程序属于这个类别,或者运行结束后把撤销对系统的改变,比如运行的时候加载一个驱动程序,退出时卸载该驱动程序,所操作的INI文件在自己的程序目录中。 2 广义的绿色运行指的是可以通过程序本身来改变当前的设置,如改变当前软件的运行方式,或者与某些文件后缀相关联,或者在注册表中留下当前的软件设置,也就是说对系统的注册表有永久的改变,但是这些改变都是应用程序自己完成的,不需要借助其他程序或者用手工 完成。 综合绿色安装和绿色运行,可以把绿色软件细分为: 1 狭义的绿色安装,同时是狭义的绿色运行的软件,对操作系统没有任何改变。 2 狭义的绿色安装,广义的绿色运行的软件,软件的配置工作由软件本身来完成,不是通过安装程序。 3 广义的绿色安装,狭义的绿色运行,软件的配置工作由安装程序来完成,软件本身不能对配置修改,同时如果没有配置工作,软件无法正常运行。 4 广义的绿色安装,广义的绿色运行,最复杂的一种绿色软件,软件的配置工作由安装程序来完成,但是软件本身可以对配置 修改,同时如果没有配置工作,软件无法正常运行。 只有第一个类别属于我说的狭义的绿色软件,其他3类都属于广义的绿色软件的范畴。 下面讲一下绿色软件的制作,简称软件的“绿化”,绿色软件的制作实际上就是我们自己完成安装程序的工作。 没有什么固定的方法,基本上是猜测加上试验,不同类别的绿色软件分别有不同的制作策略。 拿到一个新的软件,想要制成绿色软件的话,我一般遵循如下步骤: 1 判断。 就是指猜测这个软件能不能制成绿色软件,从功能,从你对它的了解,如果你觉得这个软件和系统的关系非常紧密,就不要继续下去了,还是用原始的安装程序最保险最方便,这样的例子有directx9 ,IE6,Norton的反病毒软件等等。 这样的判断可以节省你的时间,当然你可以忽略这一步,尝试制作绿色软件,那么就转到第2步。 2“绿化”。 对于不同的软件有不同的方法,没有一定的规则,但是总的来说,就是理解软件的安装过程,转换为绿色安装,在这个过程中,可能需要尝试多个方法,也可能最后由于软件的复杂性或者某些特性,导致无法绿化。 要有失败的思想准备,具体的绿化方法随后讲 述。 3 测试。 ”绿化“后的测试最好到你个全新安装的操作系统中测试,而且如果你要在多个操作系统中使用这个软件的话,还要在其他的操作系统中测试,有的软件的文件随着操作系统的不同而不同,这个时候你需要在不同的操作系统中进行”绿化“过程,最后综合为一个完整 的适应多个操作平台的绿色软件。 “绿化”方法,需要根据经验选择不同的“绿化”方法,也可能需要不断尝试不同的方法,直到成功为止。 按照先易后难的次序,具体的方法包括: 1 解压缩。 这是最简单的一种方法,就是指尝试能不能直接解开软件的压缩包。 用Winzip和Winrar试一试,看看能不能直接打开压缩的安装文件,如果不能打开,那么就换别的方法。 如果可以,那么恭喜,这个软件多半是属于绿色安装的软件(有个别例外,如E mEditor),把压缩包中的文件直接解压到目标路径,然后测试软件的功能是否正常,如果功能正常,那么“绿化”就成功了,如果使用不正常,那么就换别的方法。 这一类软件的特点是安装程序的工作完全可以由软件自身来完成。 2 安装然后卸载。 也是比较容易的方法,完全是体力劳动,就是指直接安装这个软件,然后把程序复制出来,最后卸载安装程序。 如果这个软件的安装程序的作用仅仅是复制文件和生成快捷键等工作,那么就属于绿色安装,可以使用这个方法。 最后测试软件的功能是否正常, 如果功能正常,那么“绿化”就成功了,如果使用不正常,那么就换别的方法。 3 反编译安装程序。 这个方法需要动脑筋,就是根据安装程序所用的制作工具,选择相应的反编译程序,然后阅读反编译出的安装脚本,制作绿色软件。 目前的软件大多使用专门的安装工具制作,如InstallShield,Wise,Inno Setup,Windows Installer,NSIS(Nullsoft),Installer VISE,其中Windows Installer格式的安装文件(就是MSI,MST为后缀的文件),可以通过微软的免费工具Orca打开查看,InstallShield格式的安装文件也有很多免费的工具可以解压缩和查看脚本。 当然专门的安装工具很多,有许多安装程序没有相应的反编 译程序,这种时候,就无法使用这个方法了。 4 观察反安装程序和log文件。 现在的软件安装完成后绝大多数都带有卸载方法。 卸载是安装的逆过程,如果知道怎么卸载,那么也可以推测出如何安装。 由专门的安装工具制作的反安装程序,一般都是根据某一个文件中的信息来卸载的,可以用一个纯文本的编辑器打开这 个文件。 个别情况下这个文件完全不包含可读信息,就只好换用其他方法了。 具体过程就是先采用方法2,然后理解反安装过程,最后根据反安装的信息制作绿色软件。 5 比较系统快照。 当前面的方法都失败的时候,可以试一试这个方法。 具体思路就是首先在安装软件之前,把系统的状态记录下来,主要包括注册表和系统目录的所有的文件状态。 然后就是安装软件。 安装完成后,再一次记录系统状态。 最后就是比较前后两个系统状态的不同 ,而得知安装程序所做的工作。 这个工作一般由专门的软件完成,如免费工具Regshot,免费工具inctrl5(者WinInstall LE(在Windows 2000 Sever 光盘的目录VALUEADD\3RDPARTY\MGMT\WINSTLE\中)。 在多数时候,仅仅需要对比安装前后注册表的不同,这时候还有大量的注册表工具可以选用。 在得出系统差异后,把差异分解为两个部分:文件部分和注册表部分。 文件部分指的是向系 统目录拷贝的文件,以及作为COM组件注册的文件,还有与这些文件相关的注册表部分。 注册表部分单单指其余的注册表的变化。 对于文件部分,可以进一步区分出必须要往系统目录拷贝的文件(这种情况是少数)和可以放在软件的安装目录的文件。 对于注册表部分,区 分出由这个软件的安装程序本身所作出的注册表操作和注册COM组件时候的注册表操作,抛弃其他程序(如资源管理器Explorer)的操作。 根据所有这些,写一个拷贝文件,注册COM组件和导入注册表的批处理文件,就可以完成绿色软件的制作了。 当注册表文 件中含有路径信息的时候,可以手工修改注册表文件或者把注册表文件转化为INF文件从而实现全自动的路径处理。 6 直接导出注册表,寻找自注册的COM组件。 这个方法是上面的方法5的简化版,现在软件的配置大多写在注册表中的“HKEY_LOCLAL_MACHINE\SOFTWARE\软件公司名字”和“HKEY_CURRENT_USER\SOFTWARE\软件 公司名字”这2个键下面,直接对把这2个注册表键导出到REG文件中。 自注册的COM组件都需要导出如下4个函数:DllCanUnloadNow,DllGetClassObject,DllRegisterServer, DllUnregisterServer,可以用vc自带的找出哪一个动态链接库是自注册的COM组件。 最后写一个批处理文件用注册COM组件和用导入注册表。 通过上面分析安装程序的动作,把安装程序的工作分解为复制文件,注册COM组件,安装服务驱动,注册表配置等几个部分,虽然注册表配置可以覆盖注册COM组件,安装服务驱动等操作步骤,但是把这些明显分割出来有助于制作绿色安装的软件。 对于需要更复杂的步 骤来安装的软件,还是使用原来的安装程序比较保险。 对于每个方法,下面我会给出具体的例子,有些时候,需要几个方法联合使用,无论使用什么方法,都是模拟原来的软件作者的安装过程,所以原作者最容易给出该软件的绿色版本。 flashget_ winrar3.30 和Winzip9.0,采用方法1,解压缩。 这个方法非常简单,从天空软件站下载和,在一个安装了Winrar的系统上,用鼠标右键选择下载的文件,运行右键菜单中的用Winrar打开的命令,然后 把文件解压到我们的目标路径,如E:\tools目录,就可以了。 然后分别对Winzip9和Winrar进行设置就可以了。 运行winzip9目录中的,进行winzip的设置。 Winrar也是一样,运行 ,打开菜单选项-〉设置,弹出一个对话框,选择标签--集成,如图,逐项对Winrar设置。 当拷贝到U盘而到新的机器上运行时,需要重复这些设置过程。 这一类软件的特点是安装程序的工作完全可以由软件自身来完成,从而完全抛开安装程序,或者说安装程序的工作也就是解压缩。 类似的软件还有一些,最简单的测试办法就是看看Winrar能否直接打开压缩的安装程序。 也可以采用方法2,过程基本上和方法1一样。 方法2就不具体说明了,仅仅指出有许多程序属于这个类别,如Myie2,GreenBrowser,qq,BPFTP Server,IDA_Pro_Standard_4.5.1.770,FinalData,EASYRECOVERY 6.03,腾逊公司的TM等等。 flashget是大家用得比较多的一个软件,可以多线程下载并且下载管理的功能也很方便,从天空软件站下载flashget1.60a国际版,运行一下,如图flashget_,然后取消安装。 从图上可以看出flashg et1.60a国际版是使用Wise制作的安装程序,从网上下载wungui程序,非常容易的把安装程序解压缩到一个目录中,如图,观察Maindir目录,其中有两个DLL文件和fgiebar. dll,进一步察看这两个动态库文件的导出函数,可以知道这两个DLL文件都是自注册的COM组件,写一个批处理文件来注册这两个DLL: REGSVR32 /s REGSVR32 /s 经过测试,功能正常,并且可以从浏览器IE中用鼠标的右键菜单激活flashget,功能完全,下面考虑卸载过程。 运行,发现flashget在注册表中的路径是[HKEY_CURRENT_USER\Software\JetCar\JetCar],写一个注册表文件删除这个路径,如下: REGEDIT4 ; flashget [-HKEY_CURRENT_USER\Software\JetCar\JetCar] 同时写一个批处理文件来卸载这两个DLL文件并导入: Regedit /s REGSVR32 /s /U REGSVR32 /s /U 随后就是删除一些我们用不到的文件,比如language目录的绝大多数欧洲的语言文件,这时候这个绿色版本就做好了。 把制作好的绿色的flashget拷贝到U盘上,需要用的时候,直接执行里面的文件就可以了(注意,要在flas hget的目录运行批处理文件),不需要任何文件拷贝。 我看到有人提到用优化大师提取falshget的注册表,然后直接导入注册表来制作绿色的flashget,这样做是不行的,从我前面的步骤来看,注册2个DLL文件必然在注册表中引入了绝对路径,那么如果直接提取注册表的话,就必须根据当前的路径来修改 注册表中的路径,否则的话制作的绿色版的flashget只能在固定的目录运行。 在制作flashget绿色版的时候,我同时使用了方法3和方法6,使用方法3的目的就是避免安装程序对系统作的修改,这样可以直接在当前系统进行测试,而不需要到另外一个没 有安装过flashget的系统测试。 从以上的事例中,可以看出,方法2和方法1基本一样,只不过方法1我们使用WinRar解压缩,而方法2我们使用安装程序解压缩。 方法6可以说是方法5的简化版本,方法3和方法4也可以辅助方法5,也有一些需要联合应用这些方法,有时候难以判断到底使用了 那个方法,方法是死的,需要灵活运用,有些时候需要不断试验。 我简单说几个软件“绿化”时候使用的方法,某些软件可能有多种“绿化”方法,然而最后的结果基本一样: 使用方法1就不提了,只要没有专门的安装程序,直接以zip形式发布的,都使用方法1。 CuteFTP,Flashfxp,qq,foobar ,winamp2.8,acrobat,FinalData ,金山词霸 ,ZoomPlayer,WinISO ,IsoBuster,WinISO ,MIRC,WinCVS,Photoshop6 ,EASYRECOVERY 6.03,网易泡泡使用方法2。 VisualC++ 6, real player,realmedia的解码器包,大部分解码器如vp6,mpeg2,ac3 ,ogg ,divx ,xvid 使用方法5。 Netants ,flashget,OfflineExplorer acdsee,ultraedit ,IBM词典,theBat,网文快捕,和现在的CyberArticle,PartitionMagic7 使用方法6。 不适合“绿化”的有Directx9,Mediaplayer9,IE6,微软的补丁程序,Office2003,反病毒工具NAV,Java虚拟机,虚拟机VMware等等,其中有些是不知道如何“绿化”或者说比较困难,如Office 2003,我认为那种把Office安装到硬盘上,然后抽去注册表的变化的方法部叫做“绿化”,因为注册表文件中有大量的绝对路径存在,而且Offcie的组件之间有比较复杂的联系,所以难以“绿化”。 有些是“绿化”没有意义,如IE6,微软的补丁程序, Directx9等等。 目前我使用的软件,绝大部分都“绿化”了,只有少数几个必须安装了,如 MS Office,Visual 2003等等。 感觉非常方便,尤其是改变盘符的时候,非常简单,可以做到便携化。
新加坡斯伦贝谢好吗?我要详细内容,求知情人帮忙谢谢
公司简介:>新加坡斯伦贝谢(Schlumberger)是世界领先的油田服务公司,.二、职责和要求:英语流利,表达清晰!!!1、泵组件主管,3年以上管理工作经验,金属加工或机械装配环境者优先考虑2、铸造厂主管(熔炼主管),5年以上湿沙型铸造厂操作管理工作经验,拥有感应炉(2吨及以上)操作知识,并熟悉筑炉更换程序,拥有Hunter 和Disa-Matic铸造机械知识者优先考虑3、阶层加工主管(车间主管),5年以上在金属加工领域的管理工作经验,并拥有数控车床和加工中心编程和操作经验者优先职责:1)安排生产进度和委派人员到工作中心2)确保所有工作站的配具、设备、补给等的有效利用,使工作以有秩序的方式进行3)按照部门经理的指示,对生产、品质、安全、出勤等进行例常报告4)确保以品质标准达成生产目标5)为下属提供培训6)维持工作区域的纪律7)定期和员工进行交流会谈8)在加工或品质改善项目中协助品管人员、产品和加工工和师9)确保所有ISO程序得到遵守要求:1)加工或机械装配环境的机械/生产/工业工程文凭2)拥有Mfg Pro或其他ERP软件知识者优先考虑3)必须会使用电脑三、福利待遇:1、底薪2700新币/月(约合人民币元),月收入万元以上.2、每周工作44小时,超时算加班,按平时的1.5-2倍计算.3、按照新加坡劳工法规定提供医疗及相关保险4、合同期二年,期满视双方情况可以续签四、收费标准:出国费用,无!(护照、体检费用自理).
发表评论