解决MSDE2000安装SA强密码SAPWD开关和混合模式登录问题

今天帮客户安装某某软件,需要用到SQL Server数据库,之前一直是直接装个SQL Server 2000企业版完事的,但是觉得这个太庞大了,安装略显麻烦。客户使用的软件也不需要功能多复杂的SQL Server。

其实我想尝试一下SQL Server 2005 Express的,无可奈何的是那个软件太破旧了,只能用SQL Server 2000凑合用了,其实SQL Server 2000也有类似的“Express”版本的,那就是Microsoft SQL Server 2000 Desktop Engine (MSDE 2000),微软官方的下载地址在 这里 。两个版本CHS_MSDE2000A.exe和CHS_MSDE2000A_WinME.exe对于Windows XP及以上版本选择CHS_MSDE2000A.exe就可以了。

Posted in:
  • 计算机应用及维护
  • Windows系统
Tagged
  • sqlserver

Python 三元条件判断表达式(and or/if else)

之前学习的Python提到了对于类似C语言的三元条件表达式 condition ? true_part : false_part ,虽然Python没有三目运算符( ?: ),但也有类似的替代方案,那就是 true_part if condition else false_part

>>> 1 if True else 0
1
>>> 1 if False else 0
0
>>> "Fire" if True else "Water"
'Fire'
>>> "Fire" if False else "Water"
'Water'

在编程中我也一直这么用了,直到有一天发现了一个有趣的技巧,那就是and-or技巧,利用条件判断的优先特性来实现三元条件判断,比如P∧Q,在Python中如果P为假,那么Python将不会继续执行Q,而直接判定整个表达式为假(P值),当然如果P为真,那就还要继续执行Q来决定整个表达式值;同样的P∨Q,如果P为真,那么就不会继续执行Q了...

Posted in:
  • VBScript/JavaScript/Python
  • 系统应用程序开发
Tagged
  • 学习笔记
  • python

IIS7以CGI方式运行Python脚本

由于接触到Python Web开发,正好把最简单的CGI方式研究了一下,话说在Windows下配置Python的Web开发还真的蛮麻烦的,Linux下配置倒挺容易,正好微软有技术文章 《Using Python Scripts with IIS》 介绍了这些内容,此文介绍了两种方法,一是使用ASP引擎来运行Python脚本,这个可能需要用到ActivePython,当然ASP技术已经过时了,我今天就简单介绍下CGI模块运行方式。

编写简单的支持CGI的Python脚本(本文介绍3.2版本的Python):

print("Status: 200 OK")
print("Content-type: text/html")
print() # 打印一行空白行,用于分隔HTTP Header和正文

print("<h1>Hello World!</h1>")

这样就可以了,大家可以猜出CGI是将标准输出流重新定向到HTTP输出流来实现网页或者数据传输的。

当然这个在IIS中是不能直接运行的,我们需要配置一下,打开Internet 信息服务(IIS)管理器界面,选择“处理程序映射”。

Posted in:
  • 网络编程与数据库
  • Web开发及相关
Tagged
  • iis
  • python
  • cgi

Python操作SQLite3数据库辅助类(查询构造器)

接触Python时间也不是很长的,最近有个项目需要分析数据,于是选用Python为编程语言,除了语言特性外主要还是看重Python对于SQLite3数据库良好的支持能力了,因为需要灵活处理大量的中间数据。

刚开始一些模块我还乐此不疲的写SQL语句,后来渐渐厌倦了,回想到以前捣鼓C#的时候利用反射初步构建了个SQL查询构造器,直到发现linq,于是放弃了这个计划,当然微软后来又推出了Entity Framework,这些都是后话了,而且现在我对微软的东西兴趣不是很大的,好了,扯多了,下面继续正文。

对了,再扯一句,优秀的博客程序Drupal也使用了类似的查询构造器进行数据库查询,避免直接写SQL语句,另外这样做的一点点好处就是,可以一定程度的屏蔽平台相关性,对于数据库迁移还是有帮助的。

不过我今天介绍的数据库辅助类查询构造器是个很简单的东东,甚至只限于SQLite数据库,如果有童鞋感兴趣可以完善下,我目前只要操作SQLite顺手就可以了,对于比较大的数据库应用就直接上ORM吧。

Posted in:
  • VBScript/JavaScript/Python
  • 系统应用程序开发
Tagged
  • 数据库
  • python
  • SQLite

Python非标准的日期字符串处理(解析、转换、比较)

我之前有篇文章介绍 利用VB/VBScript根据出生日期来计算年龄 ,文中介绍了函数ComputeAge,当时为了处理一些Word或者Excel中非标准的时间的,当然这个函数除了能计算年龄外也能转换这些非标准的时间字符串到程序语言支持的时间变量。

只要不是太畸形的时间字符串表示法,基本上ComputeAge都能处理,不过这次有个项目需要用到Python,于是要写个类似的函数来分析处理非标准的时间表示字符串。

当然我不想像上次那样写上一堆if,然后再用程序语言专有函数来分割处理字符串,再转换,太吃力不讨好了,所以我这次尝试使用正则表达式进行模式匹配切割字符串。

我分析了形如19920203、199203、1992.02.03、1992.02、1992-02-03、1992-02、920203时间格式特征,列出了正则表达式如下:

^((?:19|20)?\d{2})[-.]?((?:[0-1]?|1)[0-9])[-.]?((?:[0-3]?|[1-3])[0-9])?$

当然这个表达式还不是很完善,只能做简单的切割,不能判断日期的合法性,关于日期是否合法,我还是交给Python的时间功能来处理吧。

Posted in:
  • VBScript/JavaScript/Python
  • 系统应用程序开发
Tagged
  • 日期时间
  • python
  • 正则表达式

WordPress稳妥的加载JQuery库(防止CDN外链失效)

这个是制作主题时遇到的,因为引用了JQuery脚本库,为了最佳的浏览体验,当然希望这个脚本库加载得越快越好,或者我们的主机商限制了流量,JQuery几十K的流量也要勒紧裤带啊,所以我们会考虑CDN,国内外流行的JQuery CDN有Google的或者Sina云计划,地址分别是:

http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
http://lib.sinaapp.com/js/jquery/1.7.2/jquery.min.js

然后我们就可以直接用script标签引用了,比如这样:

<script type="text/javascript"
        src="http://lib.sinaapp.com/js/jquery/1.7.2/jquery.min.js">
</script>

好吧,速度问题算是解决了,而且有这些大公司做后盾,我们也不必考虑其他问题,等等,没有其他问题了吗?假如我说假如我使用的这家公司倒闭了呢?好吧,现阶段不可能无缘无故倒闭的;假如链接地址更改了呢?或者被XX了?好吧,这个是我们要考虑的问题,针对XX问题,我们可以选择国内sina的CDN,对于前一个问题,我们就需要考虑容灾措施了,假如这些发生了,我们该怎么做?

Posted in:
  • 前端开发与用户体验
  • Web开发及相关
Tagged
  • 主题与皮肤
  • wordpress
  • jquery

博客改版采用新主题界面

由于不能忍受先前的在官方 Twenty Eleven 主题基础上定制的自用主题Blaue的种种Bug,所以决定重新定制一个新的主题自用,实在想不出什么好的名字,姑且就叫做Blaue V2吧,Blaue这个词是由于之前主题的主色调是Black & Blue,所以造出了这么个词,现实中貌似还真有这么个词,不过好像是德文,好了,扯多了,下面谈谈这次主题改造的细节吧。

这次主题改的母版是 toolbox 主题,但是改动比较大,特别是将Blaue的部分构架融合过来了,而之前的Blaue是基于Twenty Eleven主题的,算是混血儿,所以这次Blaue V2只算是在Blaue基础上做的改进。

1. 放弃了响应式自适应的流布局,采用固定布局模式,固定布局容易操作些,不容易错位,也能很好兼容大多数浏览器。

2. 采用JQuery库,原先我一直很抵触背这么大个JS库的,之前使用的纯JavaScript代码来实现相关功能,后来采用Sizzle选择器(也是JQuery内置的选择器),现在想想干脆直接用JQuery得了,省得为兼容问题而纠结。

3. 采用 Google Web Font 优化部分英文字体显示。

4. 菜单挪到了顶部,采用当前比较流行的设计样式,本来想把字体大小那段也弄到顶部的,但是感觉有点奇怪,所以作罢。

5. 评论这块采取了 NeoEase 的做法,将网友讨论和Trackbacks(Pingbacks)用选项卡进行分离,避免阅读评论的干扰,评论发布采用了Ajax技术,但是感觉发布成功这块处理得不是很好的。

6. 404找不到页面和搜索页面单独进行了优化,搜索页面除了显示本站结果外还将用选项卡分割显示Google自定义搜索的结果。

Posted in:
  • 前端开发与用户体验
  • Web开发及相关
Tagged
  • 网站维护
  • 网站优化
  • 用户体验
  • 主题与皮肤
  • wordpress

解决某软件检测不到加密狗的问题

客户单位的某信息系统,准备安装在新购进的服务器上,服务器使用的是Windows 2003 Server版操作系统,该信息系统需要USB加密狗。

本来以为安装会很顺利,结果安装完成后总是提示服务器端检测不到加密狗,以为需要安装加密狗驱动,咨询了同行,说是这种USB版本的狗免驱动。试了很多办法未果,只好电话联系软件开发商,按照软件开发商工程师提供的步骤最终安装成功。

1. 启动软件相应支持服务。

2. 连接网线,连接公网或者内网,这一点不太明白,反正是激活网卡就可以了,否则只要网络连接断开,加密狗就无法工作。

3. 安装并启用IPX协议。全称是“NWLink IPX/SPX/NetBIOS Compatible Transport Protocol”。在本地连接属性,常规,选择“安装”,选择“协议”并添加,选择这个协议并确定,如图所示:

Posted in:
  • 计算机应用及维护
  • Windows系统
Tagged
  • 系统设置
  • 加密狗

西数MyBook Live网络存储(NAS)利用optware配置电驴下载(aMule)备忘

最近电商大战,正好前几天看到易迅限时优惠有个西部数据的网络存储NAS,1TB只要688,堪比1TB裸盘价格,入手了一台,今天收到发现包装盒上有个联强货,然后就是几句中文说明,其他全是英文,但是注明了由泰国组装,这也不奇怪了。不由得联想到之前泰国发大水,淹掉了西数的几家厂,导致全球硬盘价格飙升的事件……好吧,扯多了,按照说明书,将插头进行了转换,接上网线和电源后MyBook Live就自动启动了,然后使用安装光盘中的软件自动检测NAS,但是杯具的是死活没有检测到,说明书貌似没有给出更多的信息,我在想这玩意是不是和路由器一样有Web配置界面呢,于是打开路由,找到其接入的IP地址,然后在浏览器地址栏输入这个地址,访问,成功连接。

刚进入没有要求输入密码,直接进入管理界面,然后提示固件升级,升级花了不少时间,然后进入用户菜单,双击admin,然后点击右侧的更新密码来修改管理员密码,注意这个密码还要用于下次登录该管理后台。

西部数据My Book Live修改密码

基本上通过该管理后台就可以设置共享和用户权限了,我的笔记本也在网络邻居中发现了这台NAS,然后我试着拷贝了一部电影,结果速度比较慢,2~3MB/s,可能和我的路由和电脑的网卡都是百兆的有关,这玩意儿建议使用千兆路由和电脑千兆网卡,以后再换吧。

其实网络存储除了存储文件外还可以干点别的活,比如说自动下载BT或者电驴,我电驴用得多些,参考网络准备配置其电驴下载的功能。

Posted in:
  • 计算机应用及维护
  • Unix/Linux/BSD系统
Tagged
  • 网络存储
  • 电驴下载

Account locked: Action needed Godaddy账户被封锁?

这周一收到的邮件,内容大概如下:

YOUR ACCOUNT HAS BEEN LOCKED: PLEASE CONTACT CUSTOMER SERVICE Dear ye wang, For security purposes, your Go Daddy account has been locked. To unlock your account, please contact Go Daddy support by phone at (480) 505-8877. We apologize for any inconvenience. Sincerely, Go Daddy
Posted in:
  • 域名主机相关
  • Web开发及相关
Tagged
  • 主机域名

© Wang Ye / 王 晔. All rights reserved.