Visual Studio Express Edition Beta 2 中文版正式发布

今天,微软正式发布了Visual Studio Express Edition Beta 2中文版。目前发布的版本如下:

1. Visual Basic Express Edtion Beta 2 中文版

安装文件http://download.microsoft.com/download/b/e/6/be660b65-3cdd-40fb-81cb-55144964e7cb/vbsetup.exe
镜像文件http://download.microsoft.com/download/9/b/2/9b2dffcd-0c60-45e7-8a4f-bcb9aa5e7a28/VB.img

2. Visual C# Express Edtion Beta 2 中文版

安装文件http://download.microsoft.com/download/e/5/e/e5e10cef-f7ae-4dc1-b1c9-2aca1accb36c/vcssetup.exe

镜像文件http://download.microsoft.com/download/a/a/2/aa2f6fe2-b8fd-4d22-ac25-6128620b8e33/VCS.img

3. Visual Web Developer Express Edtion Beta 2 中文版

安装文件http://download.microsoft.com/download/9/c/d/9cdbd3a4-81f7-4ff1-ad4c-b48f9ea99b83/vwdsetup.exe

镜像文件http://download.microsoft.com/download/7/c/3/7c3a85f1-349c-4078-8041-8b22c7baf8f7/VWD.img

另外,开心现在是Visual C# Express Edition Beta 2中文版的Owner,如果大家在使用Visual C# Express Edition Beta 2时遇到任何问题,可以在Welcome Letter中的联系信息与开心进行联系。

在注册后,您还会得到:

我们将授予您在线使用一本电子书籍(英文)的权利,以表示对您注册Visual C# 2005 Express Beta 2测试版的感谢:

·         书写安全的代码, 第二版 作者Michael Howard David LeBlanc

这些在线书籍可以在Microsoft My Learning找到。只需要拷贝访问代码 XXXX-NXXX-XXXX 并粘贴到访问代码文本框中,登录到Passport账户您将即刻享有对这些在线书籍的访问权。

注意:只需要输入一次访问代码。当您输入一次代码后,只需要直接访问My Learning page并登录到Passport账户,在线书籍将再次可供访问和使用。

Happy Accident ?!

如果听过新东方老罗语录,不知是否记得其中的一个“Happy Accident”的片断?

最近一堆事好不容易处理完了,中间偷了点空闲,无聊至极打开 Notepad 玩,无意之中点了一下帮助,发现 Notepad 还有这样一个特性:在文件的头部加上“.LOG”,这样每次打开文件时,焦点都会自动定位到文件结尾,并加注当前日期。

有时间可以试试,比较有趣。现在才明白“记事本”(Notepad)是原来是这么个意思。

 

.NET 中对日志操作时的一个问题

近几天用 C# 在对日志进行操作的时候,发现经常无法正常写入正确的日志条目,经过测试,发现这可能是 .NET 的一个 Bug ,重现/测试程序如下:

static void Main(string[] args) ...{ string sSource = "DotNetMySource"; string sLog = "DotNetMyLog"; //新建日志文件及源并写入一条日志 if(!EventLog.SourceExists(sSource)) ...{ EventLog.CreateEventSource(sSource,sLog); Console.WriteLine("Source Created"); } EventLog log = new EventLog(); log.Source = sSource; log.WriteEntry("Hello China"); Console.WriteLine("Log Entry Writed"); Console.ReadLine(); //删除刚才的建立日志文件及源 if(EventLog.SourceExists(sSource)) ...{ EventLog.DeleteEventSource(sSource); Console.WriteLine("Source Deleted"); } else ...{ Console.WriteLine("Source Not Found"); } if(EventLog.Exists(sLog)) ...{ EventLog.Delete(sLog); Console.WriteLine("Log Deleted"); } else ...{ Console.WriteLine("Log Not Found"); } Console.ReadLine(); //重新建立同样的日志文件及源 if(!EventLog.SourceExists(sSource)) ...{ EventLog.CreateEventSource(sSource,sLog); Console.WriteLine("Source Created"); } log = new EventLog(); log.Source = sSource; log.WriteEntry("Hello China Again"); Console.WriteLine("Log Entry Writed"); Console.ReadLine(); }

在程序运行的三个步骤中,你需要打开/关闭“日志查看器”以确定每次程序执行的结果(日志查看器中的刷新功能,不能刷新新建立的日志文件)。

在最后程序执行结束后,你会发现新写入的日志条目的“源”属性为空,而不是预计的 “DotNetMySource”。

甚至有时候会出现把日志写入到 Application 日志文件中的情况,且在日志查看器中会看到如下的消息(英文 OS):

The description for Event ID ( 0 ) in Source ( DotNetMySource ) cannot be
found. The local computer may not have the necessary registry information or
message DLL files to display messages from a remote computer. You may be
able to use the /AUXSOURCE= flag to retrieve this description; see Help and
Support for details. The following information is part of the event: Hello China Again

目前似乎没有别的解决办法,在 VS.NET 中直接删除日志文件,也会出现同样的问题,只有换用不同的 Source Name 和 Log Name 了,如果不删除,在写入新的 Log Entry 时好象没有这样的问题。

希望大家有时间测试一下,也希望 MS 的同志们确认是否是一个 Bug。

 

自动取款机上的 Windows XP ?!

最近接到一个安全方案,需要对其评审,一看题目,吓了一跳:ATM 网络安全及病毒防范解决方案 …

不了解 ATM 系统构成的,首先扫一下盲:

  • ATMC:ATM Client 就是我们常见的自动取款机
  • ATMM:ATM Manager 自动取款机的监视管理端
  • ATMP:ATM 后台服务器,从银行的核心系统来看,它是一台前置机,因此 P 可能是指 Prefix 或 Processor 之类,和 POSP(POS机的后台设备)是一种类型。

由于新的 ATMC 是使用 Windows XP SP1 平台,鉴于大家对 XP 太了解了,所以对于银行来说,一定要加强防范。

此方案中大概提了以下一些加固方法:

  • 禁用 Guest、删除不必要的用户、给 Administrator 改名
  • NTFS 、禁用共享、禁止空连接、禁止显示开始菜单栏等

如果这也算安全解决方案的话,我是不敢用这样的 ATM  机的,你呢?

我的回复如下:

由于Windows  XP 操作系统功能较为全面,用在 ATM 上必须经过特殊的安全加固措施,或者考虑采用 Windows XP Emebed 操作系统,这样才能充分保证 ATM 的安全性,因为 ATM 的安全性是银行应用系统的安全性的对外直接体现,意义很重大,所以需要在安全性上下很大功夫。

这个安全方案虽然从一定程度了提高了 ATMC 的安全性,但覆盖面仍很不够,工作步骤稍显复杂,且有一些更有效的措施没有采纳,且较为简单。建议参阅微软网站(Technet )上相关文档,进一步合理组织安全方案,并着重考虑以下内容:

1)应考虑所有 ATMC 的统一定制安装,在统一定制安装时,可以通过禁用不必要组件或服务、组策略等措施来加强安全性

2)Windows XP 一定要安装 SP2,这样就具备了自动安装安全补丁,防火墙等功能,还要考虑建立 SUS 自动更新服务器

3)能过 IPSec 和 IP Filter 来提高网络层的安全性

4)通过启用所有安全日志,并自动集中收集分析来反映 ATMC 的安装状况

5) Windows 的安全加固是一个系统工程,建议寻找专业的安全厂商来解决,这样才能完全保证 ATMC 的安全性。

当然你也可以想想,如果让你来对一台基于 Windows XP 的 ATM 机或者其它自动设备进行加固,你都能采取那些措施?