Oracle 10g错误:ora-12516 TNS:监听程序找不到匹配协议栈的可用处理程序

前天安装了Oracle 10g,安装时仅安装的软件,没有建库。之后自己建了一个库,实例名叫diamond。然后又建立了一个监听,运行PL/SQL,登陆时出现错误:ora-12516 TNS:监听程序找不到匹配协议栈的可用处理程序。

然后在网上找解决办法,终于在ITPub上找到了解决方法。
修改listener.ora,原来的部分内容为:

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = C:\oracle\product\10.1.0\db_1)
      (PROGRAM = extproc)
    )
  )

现在要修改为:

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
       (SID_NAME =PLSExtProc)
       (ORACLE_HOME = C:\oracle\product\10.1.0\db_1)
       (PROGRAM = extproc)
    )
    (SID_DESC =
       (GLOBAL_DBNAME = diamond)
       (ORACLE_HOME = C:\oracle\product\10.1.0\db_1)
       (SID_NAME = diamond)
    )
  )

其中的diamond是数据库的实例名。
重新启动一下监听和Oracle数据库,问题解决。
我不了解这段的内容,但从字面上,感觉应该是制定一个具体的实例信息(SID_DESC)

参考:關於Listener的問題

Share
Posted in 编程 | 1 Comment

中国主要城市DNS列表

上海 ns.sta.net.cn 202.96.199.132 202.96.209.5 202.96.209.133
上海移动 ns1.cnmobile.net 211.136.18.171
东莞 202.96.128.143 202.96.128.68
临沂 202.102.134.68 202.102.152.3 202.102.128.68
云南 ns.ynkmptt.net.cn 202.98.160.68 202.96.209.5 202.106.0.20
北京 ns.bta.net.cn 202.96.0.133 ns.spt.net.cn 202.96.199.133 ns.cn.net 202.97.16.195
北京吉通 203.93.18.2
北京移动 ns.cnmobile.net 211.136.17.107
北京网通 主202.106.196.152 从202.106.196.115
南京 202.102.24.35
南宁 202.103.224.68 202.103.225.68
厦门 202.101.103.55 202.101.103.54
吉林 ns.jlccptt.net.cn 202.98.0.68
四川 ns.sc.cninfo.net 61.139.2.69
大庆电信 202.97.224.68 202.97.230.4
大庆网通 202.97.224.68
大连 202.96.64.68 202.96.69.38
天津 ns.tpt.net.cn 202.99.96.68
天津联通 211.94.193.129
山东 202.102.152.3
山西 ns.sxyzptt.net.cn 202.99.198.6
岳阳 202.103.86.3 202.103.99.3
广东 ns.guangzhou.gd.cn 202.96.128.143 dns.guangzhou.gd.cn 202.96.128.68
广州移动 ns2.cnmobile.net 211.136.20.203
广西 10.138.128.40
广西吉通 201.14.251.1
广西电信 202.103.224.68 202.103.224.66
徐州铁通 211.98.2.4 202.102.9.141
成都长宽 211.162.130.8 211.162.130.9 61.139.2.69
攀枝花 61.139.2.69
无锡 202.102.2.141
杭州 202.96.96.68 202.96.103.36
江苏 pub.jsinfo.net 202.102.29.3
江西 202.109.129.2
河北 ns.hesjptt.net.cn 202.99.160.68
泉州 202.101.107.55
洛阳 202.102.224.68 202.102.227.68 202.102.227.68
济南 210.52.207.2
浙江 dns.zj.cninfo.net 202.96.102.3
淄博 202.102.137.68 202.102.128.68 202.110.20.171 210.44.176.1
深圳 202.96.134.133
温州 202.96.104.16 202.96.96.68
湖南 202.103.100.206
番禺 202.96.128.68
石家庄 211.162.226.80
福州 202.101.98.55 202.101.98.54
福建 dns.fz.fj.cn 202.101.98.55
秦皇岛网通 202.99.160.68
西安 61.134.1.9 61.134.1.4
西安交通大学 202.117.0.20 202.117.0.21
赣州 202.101.228.100
赤壁 202.103.0.117 202.103.44.5
辽宁 ns.dcb.ln.cn 202.96.75.68
邵阳 202.103.103.3
重庆 61.128.128.68
重庆网通 211.158.2.68
长沙 202.103.96.68 202.103.96.112
陕西 ns.snnic.com 202.100.13.11
青岛 202.102.134.68 202.102.128.68

Share
Posted in 互联网 | Leave a comment

让网页无法保存的方法

让网页无法保存的方法就是在<head></head>之间添加下面的这句话。
<NOSCRIPT><IFRAME SRC=*.html></IFRAME></NOSCRIPT>
Share
Posted in 编程 | Leave a comment

转载:多种方法快速切换网络配置

移动办公是现代社会的趋势,利用笔记本电脑的网卡接口连入局域网,马上就可以进入工作状态。但是每个局域网的设置是不相同的,例如IP地址、网关等等,那么每到一个新的局域网中,你就需要重新进行设置,这样还是显得有些麻烦。

其实我们可以将不同环境下的网络设置备份下来,当你需要在某个网络环境中使用时,调入相应的备份文件即可完成网络的相关设置,这样就免去了手工设置的烦恼,非常方便快捷。

一、命令法切换网络配置

首先当然是进行网络配置的备份。例如你在家中和单位里所使用的网络配置是不同的,需要分别对其进行备份。先将电脑的网络设置为家中网络配置,然后在DOS窗口中输入“netsh -C interface dump>d:\home.txt”,当然你也可以指定其他的保存位置,这样就完成了家庭网络配置的备份。同样可以将单位的网络配置备份为“office.txt”文件。

完成备份后,进行切换就比较简单了。若此时你需要设置成为家庭的网络配置,在DOS窗口中输入“netsh -f d:\home.txt”,即可完成家庭网络配置的工作;若需要设置为单位网络配置,将命令行中的配置文件改为“office.txt”即可。

如果你觉得每次都要输入命令行比较麻烦,完全可以建立相应的批处理文件,直接运行即可完成配置工作。

注意:备份工作需要在DOS窗口中完成,直接在“运行”对话框的命令行中输入命令是没有效果的,但是恢复工作可以直接在“运行”对话框中输入。同时,这个命令切换方法只在Windows 2000和Windows XP系统中有效。

二、软件法切换网络配置

备份和恢复都需要输入命令行,这对于某些用户来说会觉得很麻烦。同时对于非Windows 2000和Windows XP用户该怎么办呢?那么我们可以利用相应的软件,更简单地完成这个切换工作。

IP Changer(下载地址:http://hn-http.skycn.net:8181/down/IPchanger20Eng.exe)就可以轻松完成网络配置切换的工作,它可以保存多套网络设置,选一个应用一下就可以切换过去了,更改网络设置不用重启计算机,包括网关、子网掩码、DNS、Pfoxy和打印机的设置,非常简单实用,同时也支持多网卡。

安装启动IP Changer后,会发现其中已经默认有一个网络配置,这就是当前的网络配置。选择主窗口中的“Add”,你可以进行网络配置的添加工作,接着要输入该配置的名称以及选择相应的网卡。然后让你选择网络的类型,建议选择“Specify an IP address”,这样在接下来的窗口中可以手工设置你的网络配置(如图1),包括IP地址、网关、DNS服务器等等。最后是代理服务器和打印机的设置,这样就完成了一个网络配置的设置工作。

需要进行切换时,在主窗口中选择某个网络配置,直接点击“Apply”就能切换为这个网络配置,并且此时该配置前按钮变为红色(如图2)。

由于没有注册的原因,在启动IP Changer时需要等待15秒才能进入,并只能设置两个网络配置。

命令法和软件法都可以让你轻松完成网络配置切换的工作,这样就免去了手工设置的烦恼,用户可以根据自己的情况选择使用。

转载自:http://www.yesky.com/ServerIndex/77131870298439680/20050519/1950679.shtml

Share
Posted in 操作系统 | Leave a comment

关于管理用户名和密码的一篇文章

现在网上要注册的地方实在是太多了,如何管理这些注册信息是一件令人头疼的问题。还有一个重要问题就是:目前垃圾邮件很多,病毒很多,盗密码的程序很多,为了减少损失,我自己采用了下面的方案
下面我就说说我的想法:
一、用户名:用户名要起的特别,不至于出现重名现象,另外最好不要与自己的真实姓名和出生年月有关。
二、信箱:应该有几个不同类型的信箱
类型一:私人信箱,仅好友知道
类型二:工作信箱,接收工作邮件等,一般是客户和同事知道
类型三:普通信箱,在网站上公布的信箱,供网友交流使用,也可以当作用户名使用(因为某些网站注册时的用户名就是信箱地址)
类型四:交换信箱:用来和朋友们共享文件的信箱
三、密码:密码这个问题就比较头疼了,我建议使用多级密码
级别一:网上银行密码,这个和金钱直接挂钩,一定要选择一个无敌强的
级别二:自己信箱的密码,这个信箱只有好朋友等熟人知道
级别三:工作信箱的密码,这个信箱是对外公开的信箱,由于可能会在一些不安全的电脑上使用,所以密码要定期更换
级别四:即时通信程序的密码,QQ、MSN密码,由于这个密码被盗的几率较大,所以独立设定了一个级别
级别五:其他网站的密码
级别六:作为交换信箱的密码,这个密码可以公开,供好友之间文件共享之用

这么多的用户名和密码如何管理呢,我推荐大家使用KeyPass 3.6.1 企业版,这个软件可以帮你很方便的管理这些,还能很方便的自动填表。

Share
Posted in 其他 | Leave a comment

在Oracle8中更改internal的口令

打开Oracle安装目录下的database文件夹,将pwd实例名.ora(不同的实例名,密码文件的名称不一样,例如实例名为ora,则密码文件名为pwdora.ora)改名,
运行cmd
输入:
set oracle_sid=实例名
orapwd file=d:\oracle\ora81\database\pwdora.ora password=NEWPASS entries=5 其中的pwdora.ora就是刚才改名的那个,此名称不能修改。

运行结束后,系统没有任何提示,你会发现d:\oracle\ora81\database\出现了一个pwdora.ora文件。

然后重新启动电脑,试着用connect internal,密码用NEWPASS登陆,看看密码是否被修改。

重点提示:
网友说密码一定要用大写,并且不能包含“””(半角双引号),有的人说在8i的数据库里就没必要一定大写了。我没有试,不知道,反正我是用大写。
Oracle8i以下版本修改密码的程序名是:orapwd80.exe,Oracle控制台程序名是:svrmg30.exe

转载并总结自:http://www.itpub.net/826.html

Share
Posted in 编程 | 1 Comment

最近把很多东西都搬到了网上

最近把很多东西都搬到了网上。因为发现好多提供在线服务的网站,比如说BlogLines和toPim提供在线RSS阅读,365Key和del.icio.us都是提供在线书签的。再加上Gmail的强大,足以应付我的日常需要。

目前已经把我的Blog加入了“添加到Bloglines”等功能,下一步要做的就是把在线书签列表移植到Blog的左边,使新添加的书签能及时反映到Blog上。

Share
Posted in 生活 | Leave a comment

2005年 F1全年19站观赛时间表

1.2005年一级方程式澳大利亚站

周五 4 三月
08:00-09:00 周五第一次练习
11:00-12:00 周五第二次练习

周六 5 三月
06:00-06:45 周六第一次练习
07:15-08:00 周六第二次练习
10:00 周六排位赛

周日 6 三月
07:00 周日排位赛
11:00 正式比赛

2.2005年一级方程式马来西亚站

周五 18 三月
11:00-12:00 周五第一次练习
14:00-15:00 周五第二次练习

周六 19 三月
09:00-09:45 周六第一次练习
10:15-11:00 周六第二次练习
13:00 周六排位赛

周日 20 三月
11:00 周日排位赛
15:00 正式比赛

3.2005年一级方程式 巴 林 站

周五 1 四月
16:00-17:00 周五第一次练习
19:00-20:00 周五第二次练习

周六 2 四月
14:00-14:45 周六第一次练习
15:15-16:00 周六第二次练习
18:00 周六排位赛

周日 3 四月
15:30 周日排位赛
19:30 正式比赛

4.2005年一级方程式圣马力诺站

周五 22 四月
17:00-18:00 周五第一次练习

20:00-21:00 周五第二次练习

周六 23 四月
15:00-15:45 周六第一次练习
16:15-17:00 周六第二次练习
19:00 周六排位赛

周日 24 四月
16:00 周日排位赛
20:00 正式比赛

5.2005年一级方程式西班牙站

周五 6 五月
17:00-18:00 周五第一次练习
20:00-21:00 周五第二次练习

周六 7 五月
15:00-15:45 周六第一次练习
16:15-17:00 周六第二次练习
19:00 周六排位赛

周日 8 五月
16:00 周日排位赛
20:00 正式比赛

6.2005年一级方程式摩纳哥站

Thursday 19 五月
17:00-18:00 Thursday第一次练习
20:00-21:00 Thursday第二次练习

周六 21 五月
15:00-15:45 周六第一次练习
16:15-17:00 周六第二次练习
19:00 周六排位赛

周日 22 五月
16:00 周日排位赛
20:00 正式比赛

7.2005年一级方程式欧洲站

周五 27 五月
17:00-18:00 周五第一次练习
20:00-21:00 周五第二次练习

周六 28 五月
15:00-15:45 周六第一次练习
16:15-17:00 周六第二次练习
19:00 周六排位赛

周日 29 五月
16:00 周日排位赛
20:00 正式比赛

8.2005年一级方程式加拿大站

周五 10 六月
23:00-(周六) 00:00 周五第一次练习
02:00-03:00 周五第二次练习

周六 11 六月
21:00-21:45 周六第一次练习
22:15-23:00 周六第二次练习
(周日) 01:00 周六排位赛

周日 12 六月
21:00 周日排位赛
(周一) 01:00 正式比赛

9.2005年一级方程式美国站

周五 17 六月
00:00-01:00 周五第一次练习
03:00-04:00 周五第二次练习

周六 18 六月
22:00-22:45 周六第一次练习
23:15-(周日) 00:00 周六第二次练习
02:00 周六排位赛

周日 19 六月
22:00 周日排位赛
(周一) 02:00 正式比赛

10.2005年一级方程式法国站

周五 1 七月
17:00-18:00 周五第一次练习
20:00-21:00 周五第二次练习

周六 2 七月
15:00-15:45 周六第一次练习
16:15-17:00 周六第二次练习
19:00 周六排位赛

周日 3 七月
16:00 周日排位赛
20:00 正式比赛

11.2005年一级方程式英国站

周五 8 七月
18:00-19:00 周五第一次练习
21:00-22:00 周五第二次练习

周六 9 七月
16:00-16:45 周六第一次练习
17:15-18:00 周六第二次练习
20:00 周六排位赛

周日 10 七月
16:00 周日排位赛
20:00 正式比赛

12.2005年一级方程式德国站

周五 22 七月
17:00-18:00 周五第一次练习
20:00-21:00 周五第二次练习

周六 23 七月
15:00-15:45 周六第一次练习
16:15-17:00 周六第二次练习
19:00 周六排位赛

周日 24 七月
16:00 周日排位赛
20:00 正式比赛

13.2005年一级方程式法国站

周五 29 七月
17:00-18:00 周五第一次练习
20:00-21:00 周五第二次练习

周六 30 七月
15:00-15:45 周六第一次练习
16:15-17:00 周六第二次练习
19:00 周六排位赛

周日 31 七月
16:00 周日排位赛
20:00 正式比赛

14.2005年一级方程式土尔其站

周五 19 八月
16:00-17:00 周五第一次练习
19:00-20:00 周五第二次练习

周六 20 八月
14:00-14:45 周六第一次练习
15:15-16:00 周六第二次练习
18:00 周六排位赛

周日 21 八月
16:00 周日排位赛
20:00 正式比赛

15.2005年一级方程式意大利站

周五 2 九月
17:00-18:00 周五第一次练习
20:00-21:00 周五第二次练习

周六 3 九月
15:00-15:45 周六第一次练习
16:15-17:00 周六第二次练习
19:00 周六排位赛

周日 4 九月
16:00 周日排位赛
20:00 正式比赛

16.2005年一级方程式比利时站

周五 9 九月
17:00-18:00 周五第一次练习
20:00-21:00 周五第二次练习

周六 10 九月
15:00-15:45 周六第一次练习
16:15-17:00 周六第二次练习
19:00 周六排位赛

周日 11 九月
16:00 周日排位赛
20:00 正式比赛

17.2005年一级方程式巴西站

周五 23 九月
22:00-23:00 周五第一次练习
(周六) 01:00-02:00 周五第二次练习

周六 24 九月
20:00-20:45 周六第一次练习
21:15-22:00 周六第二次练习
(周日) 00:00 周六排位赛

周日 25 九月
21:00 周日排位赛
(周一) 01:00 正式比赛

18.2005年一级方程式日本站

周五 7 十月
10:00-11:00 周五第一次练习
13:00-14:00 周五第二次练习

周六 8 十月
08:00-08:45 周六第一次练习
09:15-10:00 周六第二次练习
12:00 周六排位赛

周日 9 十月
09:30 周日排位赛
13:30 正式比赛

19.2005年一级方程式中国站

周五 14 十月
11:00-12:00 周五第一次练习
14:00-15:00 周五第二次练习

周六 15 十月
09:00-09:45 周六第一次练习
10:15-11:00 周六第二次练习
13:00 周六排位赛

周日 16 十月
10:00 周日排位赛
14:00 正式比赛

全部都是北京时间

转载自:http://www.f-1.com.cn/topic.php?forumid=5&filename=f_2556&page=last#postend

Share
Posted in 其他 | Leave a comment

转载:DLL后门清除完全篇!

前言

  后门!相信这个词语对您来说一定不会陌生,它的危害不然而欲,但随着人们的安全意识逐步增强,又加上杀毒软件的“大力支持”,使传统的后门无法在隐藏自己,任何稍微有点计算机知识的人,都知道“查端口”“看进程”,以便发现一些“蛛丝马迹”。所以,后门的编写者及时调整了思路,把目光放到了动态链接程序库上,也就是说,把后门做成DLL文件,然后由某一个EXE做为载体,或者使用Rundll32.exe来启动,这样就不会有进程,不开端口等特点,也就实现了进程、端口的隐藏。本文以“DLL的原理”“DLL的清除”“DLL的防范”为主题,并展开论述,旨在能让大家对DLL后门“快速上手”,不在恐惧DLL后门。好了,进入我们的主题。

一,DLL的原理

1,动态链接程序库

  动态链接程序库,全称:Dynamic Link Library,简称:DLL,作用在于为应用程序提供扩展功能。应用程序想要调用DLL文件,需要跟其进行“动态链接”;从编程的角度,应用程序需要知道DLL文件导出的API函数方可调用。由此可见,DLL文件本身并不可以运行,需要应用程序调用。正因为DLL文件运行时必须插入到应用程序的内存模块当中,这就说明了:DLL文件无法删除。这是由于Windows内部机制造成的:正在运行的程序不能关闭。所以,DLL后门由此而生!

2,DLL后门原理及特点

  把一个实现了后门功能的代码写成一个DLL文件,然后插入到一个EXE文件当中,使其可以执行,这样就不需要占用进程,也就没有相对应的PID号,也就可以在任务管理器中隐藏。DLL文件本身和EXE文件相差不大,但必须使用程序(EXE)调用才能执行DLL文件。DLL文件的执行,需要EXE文件加载,但EXE想要加载DLL文件,需要知道一个DLL文件的入口函数(既DLL文件的导出函数),所以,根据DLL文件的编写标准:EXE必须执行DLL文件中的DLLMain()作为加载的条件(如同EXE的mian())。做DLL后门基本分为两种:1)把所有功能都在DLL文件中实现;2)把DLL做成一个启动文件,在需要的时候启动一个普通的EXE后门。

常见的编写方法:

  (1),只有一个DLL文件

  这类后门很简单,只把自己做成一个DLL文件,在注册表Run键值或其他可以被系统自动加载的地方,使用Rundll32.exe来自动启动。Rundll32.exe是什么?顾名思意,“执行32位的DLL文件”。它的作用是执行DLL文件中的内部函数,这样在进程当中,只会有Rundll32.exe,而不会有DLL后门的进程,这样,就实现了进程上的隐藏。如果看到系统中有多个Rundll32.exe,不必惊慌,这证明用Rundll32.exe启动了多少个的DLL文件。当然,这些Rundll32.exe执行的DLL文件是什么,我们都可以从系统自动加载的地方找到。

  现在,我来介绍一下Rundll32.exe这个文件,意思上边已经说过,功能就是以命令行的方式调用动态链接程序库。系统中还有一个Rundll.exe文件,他的意思是“执行16位的DLL文件”,这里要注意一下。在来看看Rundll32.exe使用的函数原型:
  Void CALLBACK FunctionName (
  HWND hwnd,
  HINSTANCE hinst,
  LPTSTR lpCmdLine,
  Int nCmdShow
  );

  其命令行下的使用方法为:Rundll32.exe DLLname,Functionname [Arguments]
  DLLname为需要执行的DLL文件名;Functionname为前边需要执行的DLL文件的具体引出函数;[Arguments]为引出函数的具体参数。

  (2),替换系统中的DLL文件

  这类后门就比上边的先进了一些,它把实现了后门功能的代码做成一个和系统匹配的DLL文件,并把原来的DLL文件改名。遇到应用程序请求原来的DLL文件时, DLL后门就启一个转发的作用,把“参数”传递给原来的DLL文件;如果遇到特殊的请求时(比如客户端),DLL后门就开始,启动并运行了。对于这类后门,把所有操作都在DLL文件中实现最为安全,但需要的编程知识也非常多,也非常不容易编写。所以,这类后门一般都是把DLL文件做成一个“启动”文件,在遇到特殊的情况下(比如客户端的请求),就启动一个普通的EXE后门;在客户端结束连接之后,把EXE后门停止,然后DLL文件进入“休息”状态,在下次客户端连接之前,都不会启动。但随着微软的“数字签名”和“文件恢复”的功能出台,这种后门已经逐步衰落。

  提示:

  在WINNTsystem32目录下,有一个dllcache文件夹,里边存放着众多DLL文件(也包括一些重要的EXE文件),在DLL文件被非法修改之后,系统就从这里来恢复被修改的DLL文件。如果要修改某个DLL文件,首先应该把dllcache目录下的同名DLL文件删除或更名,否则系统会自动恢复。

(3),动态嵌入式

  这才是DLL后门最常用的方法。其意义是将DLL文件嵌入到正在运行的系统进程当中。在Windows系统中,每个进程都有自己的私有内存空间,但还是有种种方法来进入其进程的私有内存空间,来实现动态嵌入式。由于系统的关键进程是不能终止的,所以这类后门非常隐蔽,查杀也非常困难。常见的动态嵌入式有:“挂接API”“全局钩子(HOOK)”“远程线程”等。

  远程线程技术指的是通过在一个进程中创建远程线程的方法来进入那个进程的内存地址空间。当EXE载体(或Rundll32.exe)在那个被插入的进程里创建了远程线程,并命令它执行某个DLL文件时,我们的DLL后门就挂上去执行了,这里不会产生新的进程,要想让DLL后门停止,只有让这个链接DLL后门的进程终止。但如果和某些系统的关键进程链接,那就不能终止了,如果你终止了系统进程,那Windows也随即被终止!!!

3,DLL后门的启动特性

  启动DLL后门的载体EXE是不可缺少的,也是非常重要的,它被称为:Loader。如果没有Loader,那我们的DLL后门如何启动呢?因此,一个好的DLL后门会尽力保护自己的Loader不被查杀。Loader的方式有很多,可以是为我们的DLL后门而专门编写的一个EXE文件;也可以是系统自带的Rundll32.exe,即使停止了Rundll32.exe,DLL后门的主体还是存在的。3721网络实名就是一个例子,虽然它并不是“真正”的后门。

二,DLL的清除

  本节以三款比较有名的DLL后门例,分别为“SvchostDLL.dll”“BITS.dll”“QoServer.dll”。详细讲解其手工清除方法。希望大家在看过这三款DLL后门的清除方法之后,能够举一反三,灵活运用,在不惧怕DLL后门。其实,手工清除DLL后门还是比较简单的,无非就是在注册表中做文章。具体怎么做,请看下文。 

1,PortLess BackDoor

  这是一款功能非常强大的DLL后门程序,除了可以获得Local System权限的Shell之外,还支持如“检测克隆帐户”“安装终端服务”等一系列功能(具体可以参见程序帮助),适用Windows2000/xp/2003等系统。程序使用svchost.exe来启动,平常不开端口,可以进行反向连接(最大的特点哦),对于有防火墙的主机来说,这个功能在好不过了。

  在介绍清除方法之前,我们先来简单的介绍一下svchost.exe这个系统的关键服务:
  Svchost只是做为服务的宿主,本身并不实现什么功能,如果需要使用Svchost来启动服务,则某个服务是以DLL形式实现的,该DLL的载体Loader指向svchost,所以,在启动服务的时候由svchost调用该服务的DLL来实现启动的目的。使用svchost启动某个服务的DLL文件是由注册表中的参数来决定的,在需要启动服务的下边都有一个Parameters子键,其中的ServiceDll表明该服务由哪个DLL文件负责,并且这个DLL文件必须导出一个ServiceMain()函数,为处理服务任务提供支持。

  呵呵!看了上边的理论,是不是有

Share
Posted in 操作系统 | Leave a comment

戒指号与戒指直径、周长关系

号数 直径(mm) 周长(mm)
6 14 45
7 14.5 46
8 15.1 47.5
9 15.3 48
10 16.1 50.5
11 16.6 52
12 16.9 53
13 17 53.5
14 17.7 55.5
15 18 56.5
16 18.2 57
17 18.3 57.5
18 18.5 58
19 18.8 59
20 19.4 61
21 19.7 62
22 20.2 63.5
23 20.4 64
24 21 66
Share
Posted in 其他 | Leave a comment