Archive for the ‘Windows’ Category

XP安装了SP2后,IE打开本地文件的问题

Saturday, July 30th, 2005

XP系统安装了SP2后,IE6也自动地加上了SP2的patch。IE6 SP1中,只是限制Internet区不能打开本地文件,而允许 Intranet/Trusted区打开本地文件。但在SP2中,微软对此做了更严格的限制,即任何区域均不能打开本地文件。因而,一些需要在IE页面打 开本地文件的应用,特别是一些内部应用,无法在XP+SP2的机器上使用。但是,我们可以通过直接修改注册表来实现允许IE打开本地文件。 (more…)

IE受信任站点的问题

Monday, July 4th, 2005

 不知怎么回事,本身在IE中配置了受信任站点,但IE却没有显示。再试图加入该站点,总是提示该站点已在其它区域中。晕。一直倒赖得管它,不就在 访问内站网站时跳个窗口出来,点一下就OK了,反正也只是访问内部网站时才用IE这玩意。直到今天,听说明天有人来参观,老是跳个窗口出来,总是不好,于 是直接进入注册表,呵呵。顺手也摸清楚了一些东东。写在下面了,呵呵。
注册表的内容原来是这样的:
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Ranges\Range1]
“:Range”=”a.a.a.a”
“*”=dword:00000002
“http”=dword:00000002

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Ranges\Range2]
“*”=dword:00000002
“:Range”=”b.b.b.b”

b.b.b.b是没有问题的,能显示出来。但a.a.a.a就不行了,对比一看,a.a.a.a就多了行:
“http”=dword:00000002
于是,先做备份,然后删除删除删除庐该行,OK,现在IE 中a.a.a.a了。
同时注意到
“*”=dword:00000002的值指向该站点所属区域,即[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones]中.0、1、2、3、4。

得来全不费功夫:将任意应用加入到服务中

Tuesday, June 7th, 2005

 昨晚在看Subversion的F&Q时,不经意间发现之中提到了一个叫SRVANY的工具,可以将任意应用加入到WINDOWS的服务中,得来全不费功夫呀,找了很久了,呵呵。
网址见下:
http://support.microsoft.com/kb/q137890/

测试了一下,发现一些可能需要注意的事项:
1、如果要加入的应用是BAT之类的,并且在批处理中调用了其它批处理来设置环境变量(诸如此类)的话,环境变量将不能被正确地设置。这可能有办法解决,需要进一步了解MS对批处理中CALL的处理;
2、只能启动,不能停止。实际停止的仅仅是srvany进程,而不是实际应用的进程,不过这也不错了。呵呵;
3、在批处理文件中,不要调用其它命令,如CD、FOR等。

Windows2003中,shared memory策略的改变

Tuesday, May 31st, 2005

大凡了解Shared Memory的同行都知道通过Shared Memory ID,应用可以方便地attach到Shared Memory上。去年偶然的机会发现了通过Shared Memory ID,attach一个系统软件的方法。但当我试图在Windows 2003上做相同操作时,却失败了。与国外同行的交流中得知,在Windows 2003上如果是以服务启动的,则不能attach上,但如果在命令行中运行,则没有问题。当时未做细想,放置一边。
今年4月,参加一个LINUX培训,好久未用LINUX了,想看看LINUX默认的IPCS限制是多少,就在输入ipcs -l的时候,突想明白了在Windows 2003上不能attach shared memory的可能的原因:权限!在LINUX中,attach shared memory默认是无需权限的。在Windows中,服务中启动的进程通常是以本地系统帐户,即SYSTEM用户启动的,而我试图attach时使用的用 户是administrator。分析看来,在Windows2000及以前版本中,默认也并未对attach shared memory做权限控制。而自Windows 2003开始中,M$对attach shared memory做了强制限制,不允许非创建者随意attach。遗憾的是,目前还未找到确实的资料。