Microsoft Office
SharePoint Portal Server
MVP

Sign In

<November 2008>
SunMonTueWedThuFriSat
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

RSS 2.0 | Atom 1.0 | CDF

Archive

Navigation

Search

Categories

On this page

SPS的安全机制与ASP.NET的安全机制还是有区别的
C#位移运算之支持整数?
[整理]17种常用正则表达式
[整理]创建使用ASP.NET的IIS虚拟主机必须要注意的一个步骤
[整理]Virtual PC 2004 SP1的一个问题的解决
[整理]SharePoint Portal Administration异常事件的处理
[整理]更换SPS的数据库的方法
那位老兄已经开始试用vs2005beta了,把经验share一下?

京ICP备06027344号

Total Posts: 179
This Year: 1
This Month: 0
This Week: 0
Comments: 39

 Friday, January 13, 2006
Friday, January 13, 2006 12:02:50 PM (中国标准时间, UTC+08:00) (  |  )

这几天一直写一个在SPS当中修改AD用户密码的Webpart。我向鞠海洋大哥要来了他写的代码,仔细研究了,自己也动手写了一个。但是包括鞠大哥写的和我写的都不用正确运行,总是捕捉到异常信息。不同的是,鞠大哥的代码可以显示用户的displayName属性,而我的显示不了。

昨天就想起来在ASP.NET中测试一下吧,毕竟ASP.NET当中条是要容易些。我有在写Webpart之前,先用ASP.NET预演的习惯。但是却发现ASP.NET当中不仅可以显示displayName属性,连密码也可以修改了。于是又仔细看了鞠大哥的代码,发现他并不是从AD用户的displayName属性显示的用户名称,而是通过SPS的CurrentUser对象来获取的用户名称。这样在仔细测试后可以发现,在SPS的Webpart当中是没有办法读取AD内数据的,即使将SPS网站的安全信任级别提高到了“Full”也是不行的。

详细的错误信息:
System.Runtime.InteropServices.COMException (0x80070035): 找不到网络路径。 at System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail) at System.DirectoryServices.DirectoryEntry.Bind() at System.DirectoryServices.DirectoryEntry.get_NativeObject() at System.DirectoryServices.DirectoryEntry.Invoke(String methodName, Object[] args) at nChi.WebParts.Utility.UserCtrl.chgPwd()

以此猜测这可能是SPS把有关的COM调用给屏蔽到了...

Comments [0] | | # 
 Thursday, December 15, 2005
Thursday, December 15, 2005 1:20:58 PM (中国标准时间, UTC+08:00) ( )

今天写的一个程序当中发现程序C#的位移运算:左移运算和右移运算只支持对于Int32和UInt32,不支持其他的类型。

真的是很奇怪啊!

Comments [0] | | # 
 Wednesday, December 14, 2005
Wednesday, December 14, 2005 1:20:09 PM (中国标准时间, UTC+08:00) ( )

正则表达式是一个好东西,但是一般情况下,我们需要验证的内容少之又少。下面是常用的17种正则表达式:

"^\d+$"  //非负整数(正整数 + 0)

"^[0-9]*[1-9][0-9]*$"  //正整数

"^((-\d+)|(0+))$"  //非正整数(负整数 + 0)

"^-[0-9]*[1-9][0-9]*$"  //负整数

"^-?\d+$"    //整数

"^\d+(\.\d+)?$"  //非负浮点数(正浮点数 + 0)

"^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$"  //正浮点数

"^((-\d+(\.\d+)?)|(0+(\.0+)?))$"  //非正浮点数(负浮点数 + 0)

"^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$"  //负浮点数

"^(-?\d+)(\.\d+)?$"  //浮点数

"^[A-Za-z]+$"  //由26个英文字母组成的字符串

"^[A-Z]+$"  //由26个英文字母的大写组成的字符串

"^[a-z]+$"  //由26个英文字母的小写组成的字符串

"^[A-Za-z0-9]+$"  //由数字和26个英文字母组成的字符串

"^\w+$"  //由数字、26个英文字母或者下划线组成的字符串

"^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$"    //email地址

"^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$"  //url

Comments [0] | | # 
 Wednesday, November 09, 2005
Wednesday, November 09, 2005 12:19:20 PM (中国标准时间, UTC+08:00) ( )

我们在创建IIS的虚拟主机的时候,一般都是在本地创建一个目录,然后把虚拟主机的根设置为这个目录。这是一般的方法,所以一班不会有问题,但是在如下两个场景会出现错误:

1.在这个虚拟主机上面创建SPS站点,在登录以后,页面会出现不可访问的错误。部署SPS的具体补丁情况不明确。

2.在这个虚拟主机上面部署YetAnotherForum论坛程序的时候,在一些二级页面会出现页面空白。

这个时候可以采用在服务器上运行“aspnet_regiis -i”来解决。对于第二个场景一定可以解决,对于第一个场景,至少在我现在客户的服务器环境解决了问题。

“aspnet_regiis -i”将为每一个虚拟主机创建一个aspnet_client的文件夹,具体这个文件夹的作用我还说不好,但是可以确定的是一些控件的客户端脚本是在其内的,以及SmartNav的客户端脚本也是在其内的。

Comments [0] | | # 
 Saturday, November 05, 2005
Saturday, November 05, 2005 11:48:25 AM (中国标准时间, UTC+08:00) ( )

这两天重新安装了VPC,但是发现虚拟机里面不多访问外面的网络了,每次启动虚拟机的时候提示:

The network adapter with address "00:00:00:00:00:" of virtual machine "test" failed to initialize because the address is a null address.

同时这个不影响虚拟机的运行。在Google上面搜了一下,找到了解决办法。

http://blogs.msdn.com/virtual_pc_guy/archive/2005/01/17/354971.aspx

Comments [0] | | # 
 Thursday, November 03, 2005
Thursday, November 03, 2005 11:46:12 AM (中国标准时间, UTC+08:00) ( )
场景:单服务器,独立的SQL Server。服务器在安装SPS前安装了Win2003的SP1。每次启动的时候会提示一个服务启动不正常,察看系统事件中有两个错误,发现来源于SharePoint Portal Administration服务。实践内容如下:
1.等待 SharePoint Portal Administration 服务的连接超时(30000 毫秒)。
2.由于下列错误,SharePoint Portal Administration 服务启动失败:
服务没有及时响应启动或控制请求。
原因分析:由于系统安装了Win2003的SP1,怀疑原因是因为安装了这个SP1。故观察了SPS相关的几个服务的可执行文件路径,这几个服务的可执行文件路径都在引号内,和引起SSO服务异常的情景一样,故决定修改注册表,试验一下。
具体步骤:打开注册表编辑器,定位到\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\。下面是SPS服务对应的文件夹的名称:
SharePoint Timer Service                  SPTimer
SharePoint Portal Administration      SPSAdmin
Microsoft SharePointPS Search         SharePointPSSearch
SharePoint Portal Alert                     spsalert
Microsoft Single Sign-on Service       ssosrv
在对应的文件夹下面有一个ImagePath节点,双击打开节点,去掉节点值两端的引号。
重新启动服务器,一切正常。

说明:
由于以上的方法纯属实践得来,没有在各种服务器场环境上进行测试,所以本人不为任何的实验行为带来的后果负责。实验前请做备份。

Comments [0] | | # 
 Tuesday, November 01, 2005
Tuesday, November 01, 2005 11:44:24 AM (中国标准时间, UTC+08:00) ( )
场景:用户的SQL Server 2000服务器需要扩容,原本想做SQL Server服务器群,后来客户决定从新建SQL Server服务器,SPS使用新的SQL Server 2000服务器。
方法:
 1.在“配置服务器场拓扑结构”中去掉服务器场中所有的服务器角色的设置。
 2.在“指定配置数据库服务器”中断开与当前的数据库服务器的连接。
 3.将旧的数据库实例暂停,复制SPS的配置数据库和内容数据库的数据文件和事务日志文件到新的数据库实例上面上。
 4.在新的数据库实例上面创建配置数据库和内容数据库。数据库的名称不能改变。
 5.在新的数据库实例上配置新的帐号。帐号应使用原来的数据库帐号。
 6.回到SPS的“指定配置数据库服务器”,当中按照“连接到现有的配置数据库”进行配置。
 7.重新启动“SSO”服务,并将服务改为“自动”。
 8.重新启动SPS服务器。

说明:第8步,不知道什么服务需要新启动,所以干脆重新启动了服务器。各位同学可以试试看,到底是哪个服务器需要重新启动。

由于以上的方法纯属实践得来,没有在各种服务器场环境上进行测试,所以本人不为任何的实验行为带来的后果负责。实验前请做备份。

Comments [0] | | # 
 Tuesday, October 12, 2004
Tuesday, October 12, 2004 11:20:09 AM (中国标准时间, UTC+08:00) ( )

我刚刚拿到MSDN宇宙版里面的vs2005beta,但是不敢在自己的机器里面安装。我现在的机器里面有一套vs2003,生产开发用的。我主要是怕安装了vs2005以后和这个有冲突,生产环境就得重搭了,那位老兄在一台机器上同时安装过这两个的话,给我们讲讲会不会有问题,怎么解决那些问题?

Comments [0] | | #