<?xml version="1.0" encoding="UTF-8"?>
  <feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html"><![CDATA[香橙的博客-flex,air,life,php,.net,zend]]></title>
  <subtitle type="html"><![CDATA[选择大于努力,信心决定成败!]]></subtitle>
  <id>http://blog.fengning.cc/</id> 
  <link rel="alternate" type="text/html" href="http://blog.fengning.cc/" /> 
  <link rel="self" type="application/atom+xml" href="http://blog.fengning.cc/atom.asp" /> 
  <generator uri="http://www.pjhome.net/" version="2.4.1022">PJBlog2</generator> 
  <updated>2012-05-09T15:47:49+08:00</updated> 

  <entry>
	  <title type="html"><![CDATA[IIS下设置伪静态后子目录无法访问的解决办法]]></title>
	  <author>
		 <name>香橙</name>
		 <uri>http://blog.fengning.cc/</uri>
		 <email>info@hebei35.cn</email>
	  </author>
	  <category term="" scheme="http://blog.fengning.cc/default.asp?cateID=8" label="其他文章" /> 
	  <updated>2012-05-09T15:47:49+08:00</updated>
	  <published>2012-05-09T15:47:49+08:00</published>
		  <summary type="html"><![CDATA[直接说方法，不再啰啰嗦嗦说一大堆没用的废话了。<br/>一个网站，windows主机，用了IIS的伪静态。因为加了个非主站系统的子目录放一些其他程序和页面，没想到访问所有非主站系统的子目录内容都转到404页面去了。查了一下资料基本解决此问题，方法是修改伪静态规则文件httpd.ini，解决方法：<br/>如果需要某个子目录（比如tools目录），则在httpd.ini中添加如下内容：<br/>RewriteRule&nbsp;/tools/(.*)&nbsp;/tools/$1&nbsp;[L]<br/><br/>OK，完成。很简单，但很实用。如有其他目录照此办理即可。<br/>此方法基本上可以解决此类问题。或许还有更好的方法，继续探索中……]]></summary>
	  <link rel="alternate" type="text/html" href="http://blog.fengning.cc/default.asp?id=252" /> 
	  <id>http://blog.fengning.cc/default.asp?id=252</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[windows7自动更新后IE9菜单和右键、Internet选项全部变成英文的解决办法]]></title>
	  <author>
		 <name>香橙</name>
		 <uri>http://blog.fengning.cc/</uri>
		 <email>info@hebei35.cn</email>
	  </author>
	  <category term="" scheme="http://blog.fengning.cc/default.asp?cateID=8" label="其他文章" /> 
	  <updated>2012-03-28T13:56:57+08:00</updated>
	  <published>2012-03-28T13:56:57+08:00</published>
		  <summary type="html"><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;今天打开电脑提示更新IE9，自动更新后打开IE9后，右键菜单变成了英文，还有下边的提示条例的也变成了英文，internet选项也变成了英文，找了一下解决办法，直接卸载掉IE9更新就可以了。很多人不清楚怎样卸载IE9，因为在windows7系统的软件卸载里面找不到IE9，简单说下方法：<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;要卸载IE9，请尝试在开始菜单输入“已安装”并进入查看已安装的更新，选择Internet&nbsp;Explorer9及其语言包，并右键--“卸载”执行卸载进程。]]></summary>
	  <link rel="alternate" type="text/html" href="http://blog.fengning.cc/default.asp?id=251" /> 
	  <id>http://blog.fengning.cc/default.asp?id=251</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[系统管理员设置了系统策略,禁止进行此安装的解决方法]]></title>
	  <author>
		 <name>香橙</name>
		 <uri>http://blog.fengning.cc/</uri>
		 <email>info@hebei35.cn</email>
	  </author>
	  <category term="" scheme="http://blog.fengning.cc/default.asp?cateID=8" label="其他文章" /> 
	  <updated>2012-03-26T09:27:34+08:00</updated>
	  <published>2012-03-26T09:27:34+08:00</published>
		  <summary type="html"><![CDATA[“系统管理员设置了系统策略，禁止进行此项安装”windows&nbsp;installer被禁用解决办法<br/><img src="http://blog.fengning.cc/attachments/month_1203/m201232692551.jpg" border="0" alt=""/><br/>解决方法一：<br/>windows开始菜单，运行里面输入gpedit.msc打开组策略,<br/>在“计算机配置”→管理模板→windows组件→windows&nbsp;installer，右边&nbsp;第一项就是禁用windows&nbsp;installer。<br/>只要配置成下图的样子就会成上图的症状。把它改成&nbsp;“未配置”就可以了。有人说可以设置为“已禁用”也可以，经过本人尝试不行。<br/><img src="http://blog.fengning.cc/attachments/month_1203/y201232693029.jpg" border="0" alt=""/><br/>解决方法二:<br/>开始，运行regedit，打开注册表，找到<br/>HKEY_CLASSES_ROOT\Installer\Products\4080110900063D11C8EF10054038389C<br/>这个注册表项目，删除即可。<br/>如果出现多项<br/>4080110900063D11C8EF10054038389C<br/>删除没有子项目的那项即可。<br/><br/>解决方法三:<br/>关于安装其他（非office2003）的MSI软件程序出现此类问题,可通过这个方法尝试解决。<br/>例如：在Windows2003上安装Vmware&nbsp;Server时<br/>遇到“系统管理员设置了系统策略&nbsp;禁止进行此安装”的提示<br/><br/><br/>解决方法如下：<br/>1、打开“开始-&gt;控制面板-&gt;管理工具-&gt;本地安全策略”<br/>2、点击“软件限制策略”，如果提示“没有定义软件限制策略”，那么就右键“创建软件限制策略”<br/>3、创建后，双击右侧“强制”，选择“除本地管理员以外的所有用户”，确定。<br/><br/>解决方法四:<br/>有人提供一个终极解决办法，&nbsp;的确可以解决windows&nbsp;installer出的一些问题，包括权限问题。<br/>安装微软提供的Windows&nbsp;Installer&nbsp;CleanUp&nbsp;Utility&nbsp;，它的主要功能是清除程序的Windows&nbsp;Installer配置信息。<br/>等于重装Windows&nbsp;Installer,效果不错,但此方法不能在安全模式下进行。<br/>目前最新版本4.71.1015<br/>下载地址<br/><a href="http://dl.pconline.com.cn/html_2/1/62/id=9753" target="_blank">http://dl.pconline.com.cn/html_2/1/62/id=9753</a>&amp;pn=0.html<br/><a href="http://www.xdowns.com/soft/6/12/2008/Soft_47992.html" target="_blank">http://www.xdowns.com/soft/6/12/2008/Soft_47992.html</a><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://blog.fengning.cc/default.asp?id=250" /> 
	  <id>http://blog.fengning.cc/default.asp?id=250</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[解密SQLServer2005存储过程]]></title>
	  <author>
		 <name>香橙</name>
		 <uri>http://blog.fengning.cc/</uri>
		 <email>info@hebei35.cn</email>
	  </author>
	  <category term="" scheme="http://blog.fengning.cc/default.asp?cateID=8" label="其他文章" /> 
	  <updated>2012-03-23T12:28:12+08:00</updated>
	  <published>2012-03-23T12:28:12+08:00</published>
		  <summary type="html"><![CDATA[&nbsp;&nbsp;目前这个存储过程只能解密存储过程，<br/><br/>&nbsp;&nbsp;至于解密函数、触发器、视图的存储过程本网站会进一步关注，调用形式为：<br/><br/>&nbsp;&nbsp;exec&nbsp;dbo.sp__windbi$decrypt&nbsp;@procedure,0<br/><br/>&nbsp;&nbsp;如果第二个参数使用的话，会给出该存储过程的一些提示。<br/><br/>&nbsp;&nbsp;--版本.0&nbsp;修正存储过程过长引起的问题<br/><br/><br/>&nbsp;&nbsp;警告：该存储过程会删除并重建原始的存储过程。&#39;<br/><br/>&nbsp;&nbsp;在运行该存储过程之前确保你的数据库有一个备份。&#39;<br/><br/>&nbsp;&nbsp;该存储过程通常应该运行在产品环境的一个备份的非产品环境下。<br/><br/>*/<br/><br/><br/>/**********************************************************************/<br/><br/>print&nbsp;&#39;creating&nbsp;stored&nbsp;procedure&nbsp;sp__windbi$decrypt......&#39;<br/>go<br/>if&nbsp;exists(sel&#101;ct&nbsp;name&nbsp;from&nbsp;sysobjects&nbsp;wh&#101;re&nbsp;name&nbsp;=&nbsp;&#39;sp__windbi$decrypt&#39;&nbsp;and&nbsp;type&nbsp;=&nbsp;&#39;P&#39;)<br/>&nbsp;&nbsp;dro&#112;&nbsp;procedure&nbsp;sp__windbi$decrypt<br/>go<br/><br/>cr&#101;ate&nbsp;PROCEDURE&nbsp;[dbo].[sp__windbi$decrypt]<br/>(@procedure&nbsp;sysname&nbsp;=&nbsp;NULL)<br/>AS<br/>SET&nbsp;NOCOUNT&nbsp;ON<br/>DECLARE&nbsp;@intProcSpace&nbsp;bigint,&nbsp;@t&nbsp;bigint,&nbsp;@maxColID&nbsp;smallint,@procNameLength&nbsp;int<br/>sel&#101;ct&nbsp;@maxColID&nbsp;=&nbsp;max(subobjid)&nbsp;FROM&nbsp;&nbsp;<br/>sys.sysobjvalues&nbsp;Wh&#101;re&nbsp;objid&nbsp;=&nbsp;object_id(@procedure)<br/>--sel&#101;ct&nbsp;@maxColID&nbsp;as&nbsp;&#39;Rows&nbsp;in&nbsp;sys.sysobjvalues&#39;<br/>sel&#101;ct&nbsp;@procNameLength&nbsp;=&nbsp;datalength(@procedure)&nbsp;+&nbsp;29<br/>DECLARE&nbsp;@real_01&nbsp;nvarchar(max)<br/>DECLARE&nbsp;@fake_01&nbsp;nvarchar(max)<br/>DECLARE&nbsp;@fake_encrypt_01&nbsp;nvarchar(max)<br/>DECLARE&nbsp;@real_decrypt_01&nbsp;nvarchar(max),@real_decrypt_01a&nbsp;nvarchar(max)<br/>declare&nbsp;@objtype&nbsp;varchar(2),@parentname&nbsp;nvarchar(max)<br/>sel&#101;ct&nbsp;@real_decrypt_01a&nbsp;=&nbsp;&#39;&#39;<br/>--提取对象的类型如是存储过程还是函数，如果是触发器，还要得到其父对象的名称<br/>sel&#101;ct&nbsp;@objtype=type,@parentname=object_name(parent_object_id)<br/>from&nbsp;sys.objects&nbsp;wh&#101;re&nbsp;[object_id]=object_id(@procedure)<br/>--&nbsp;从sys.sysobjvalues里提出加密的imageval记录<br/>SET&nbsp;@real_01=(Sel&#101;ct&nbsp;top&nbsp;1&nbsp;imageval&nbsp;FROM&nbsp;sys.sysobjvalues&nbsp;Wh&#101;re&nbsp;objid&nbsp;=&nbsp;&nbsp;<br/>object_id(@procedure)&nbsp;and&nbsp;valclass&nbsp;=&nbsp;1&nbsp;o&#114;der&nbsp;by&nbsp;subobjid)<br/>--创建一个临时表<br/>cr&#101;ate&nbsp;table&nbsp;#output&nbsp;(&nbsp;[ident]&nbsp;[int]&nbsp;IDENTITY&nbsp;(1,&nbsp;1)&nbsp;NOT&nbsp;NULL&nbsp;,<br/>[real_decrypt]&nbsp;NVARCHAR(MAX)&nbsp;)<br/>--开始一个事务，稍后回滚<br/>BEGIN&nbsp;TRAN<br/>--更改原始的存储过程，用短横线替换<br/>if&nbsp;@objtype=&#39;P&#39;<br/>&nbsp;&nbsp;SET&nbsp;@fake_01=&#39;Alt&#101;r&nbsp;PROCEDURE&nbsp;&#39;+&nbsp;@procedure&nbsp;+&#39;&nbsp;WITH&nbsp;ENCRYPTION&nbsp;AS&nbsp;&nbsp;<br/>&nbsp;&nbsp;&#39;+REPLICATE(cast(&#39;-&#39;as&nbsp;nvarchar(max)),&nbsp;datalength(@real_01)&nbsp;/2&nbsp;-&nbsp;@procNameLength)<br/>else&nbsp;if&nbsp;@objtype=&#39;FN&#39;<br/>&nbsp;&nbsp;SET&nbsp;@fake_01=&#39;Alt&#101;r&nbsp;FUNCTION&nbsp;&#39;+&nbsp;@procedure&nbsp;+&#39;()&nbsp;RETURNS&nbsp;INT&nbsp;WITH&nbsp;ENCRYPTION&nbsp;AS&nbsp;BEGIN&nbsp;RETURN&nbsp;1&nbsp;&nbsp;<br/>&nbsp;&nbsp;/*&#39;+REPLICATE(cast(&#39;*&#39;as&nbsp;nvarchar(max)),&nbsp;datalength(@real_01)&nbsp;/2&nbsp;-&nbsp;@procNameLength)+&#39;*/&nbsp;END&#39;<br/>else&nbsp;if&nbsp;@objtype=&#39;V&#39;<br/>&nbsp;&nbsp;SET&nbsp;@fake_01=&#39;Alt&#101;r&nbsp;view&nbsp;&#39;+&nbsp;@procedure&nbsp;+&#39;&nbsp;WITH&nbsp;ENCRYPTION&nbsp;AS&nbsp;sel&#101;ct&nbsp;1&nbsp;as&nbsp;col<br/>&nbsp;&nbsp;/*&#39;+REPLICATE(cast(&#39;*&#39;as&nbsp;nvarchar(max)),&nbsp;datalength(@real_01)&nbsp;/2&nbsp;-&nbsp;@procNameLength)+&#39;*/&#39;<br/>else&nbsp;if&nbsp;@objtype=&#39;TR&#39;<br/>&nbsp;&nbsp;SET&nbsp;@fake_01=&#39;Alt&#101;r&nbsp;trigger&nbsp;&#39;+&nbsp;@procedure&nbsp;+&#39;&nbsp;ON&nbsp;&#39;+@parentname+&#39;WITHENCRYPTION&nbsp;AFTER&nbsp;Ins&#101;rt&nbsp;AS&nbsp;RAISERROR&nbsp;(&#39;&#39;N&#39;&#39;,16,10)<br/>&nbsp;&nbsp;/*&#39;+REPLICATE(cast(&#39;*&#39;as&nbsp;nvarchar(max)),&nbsp;datalength(@real_01)&nbsp;/2&nbsp;-&nbsp;@procNameLength)+&#39;*/&#39;<br/>EXECUTE&nbsp;(@fake_01)<br/>--从sys.sysobjvalues里提出加密的假的<br/>SET&nbsp;@fake_encrypt_01=(Sel&#101;ct&nbsp;top&nbsp;1&nbsp;imageval&nbsp;FROM&nbsp;sys.sysobjvalues&nbsp;Wh&#101;re&nbsp;objid&nbsp;=&nbsp;&nbsp;<br/>object_id(@procedure)&nbsp;and&nbsp;valclass&nbsp;=&nbsp;1&nbsp;o&#114;der&nbsp;by&nbsp;subobjid&nbsp;)<br/>if&nbsp;@objtype=&#39;P&#39;<br/>&nbsp;&nbsp;SET&nbsp;@fake_01=&#39;Cr&#101;ate&nbsp;PROCEDURE&nbsp;&#39;+&nbsp;@procedure&nbsp;+&#39;&nbsp;WITH&nbsp;ENCRYPTION&nbsp;AS&nbsp;&nbsp;<br/>&nbsp;&nbsp;&#39;+REPLICATE(cast(&#39;-&#39;as&nbsp;nvarchar(max)),&nbsp;datalength(@real_01)&nbsp;/2&nbsp;-&nbsp;@procNameLength)<br/>else&nbsp;if&nbsp;@objtype=&#39;FN&#39;<br/>&nbsp;&nbsp;SET&nbsp;@fake_01=&#39;Cr&#101;ate&nbsp;FUNCTION&nbsp;&#39;+&nbsp;@procedure&nbsp;+&#39;()&nbsp;RETURNS&nbsp;INT&nbsp;WITH&nbsp;ENCRYPTION&nbsp;AS&nbsp;BEGIN&nbsp;RETURN&nbsp;1&nbsp;&nbsp;<br/>&nbsp;&nbsp;/*&#39;+REPLICATE(cast(&#39;*&#39;as&nbsp;nvarchar(max)),&nbsp;datalength(@real_01)&nbsp;/2&nbsp;-&nbsp;@procNameLength)+&#39;*/&nbsp;END&#39;<br/>else&nbsp;if&nbsp;@objtype=&#39;V&#39;<br/>&nbsp;&nbsp;SET&nbsp;@fake_01=&#39;Cr&#101;ate&nbsp;view&nbsp;&#39;+&nbsp;@procedure&nbsp;+&#39;&nbsp;WITH&nbsp;ENCRYPTION&nbsp;AS&nbsp;sel&#101;ct&nbsp;1&nbsp;as&nbsp;col<br/>&nbsp;&nbsp;/*&#39;+REPLICATE(cast(&#39;*&#39;as&nbsp;nvarchar(max)),&nbsp;datalength(@real_01)&nbsp;/2&nbsp;-&nbsp;@procNameLength)+&#39;*/&#39;<br/>else&nbsp;if&nbsp;@objtype=&#39;TR&#39;<br/>&nbsp;&nbsp;SET&nbsp;@fake_01=&#39;Cr&#101;ate&nbsp;trigger&nbsp;&#39;+&nbsp;@procedure&nbsp;+&#39;&nbsp;ON&nbsp;&#39;+@parentname+&#39;WITHENCRYPTION&nbsp;AFTER&nbsp;Ins&#101;rt&nbsp;AS&nbsp;RAISERROR&nbsp;(&#39;&#39;N&#39;&#39;,16,10)<br/>&nbsp;&nbsp;/*&#39;+REPLICATE(cast(&#39;*&#39;as&nbsp;nvarchar(max)),&nbsp;datalength(@real_01)&nbsp;/2&nbsp;-&nbsp;@procNameLength)+&#39;*/&#39;<br/>--开始计数<br/>SET&nbsp;@intProcSpace=1<br/>--使用字符填充临时变量<br/>SET&nbsp;@real_decrypt_01&nbsp;=&nbsp;replicate(cast(&#39;A&#39;as&nbsp;nvarchar(max)),&nbsp;(datalength(@real_01)&nbsp;/2&nbsp;))<br/>--循环设置每一个变量，创建真正的变量<br/>--每次一个字节<br/>SET&nbsp;@intProcSpace=1<br/>--如有必要，遍历每个@real_xx变量并解密<br/>WHILE&nbsp;@intProcSpace&lt;=(datalength(@real_01)/2)<br/>BEGIN<br/>--真的和假的和加密的假的进行异或处理<br/>SET&nbsp;@real_decrypt_01&nbsp;=&nbsp;stuff(@real_decrypt_01,&nbsp;@intProcSpace,&nbsp;1,<br/>NCHAR(UNICODE(substring(@real_01,&nbsp;@intProcSpace,&nbsp;1))&nbsp;^<br/>(UNICODE(substring(@fake_01,&nbsp;@intProcSpace,&nbsp;1))&nbsp;^<br/>UNICODE(substring(@fake_encrypt_01,&nbsp;@intProcSpace,&nbsp;1)))))<br/>SET&nbsp;@intProcSpace=@intProcSpace+1<br/>END<br/>--通过sp_helptext逻辑向表#output里插入变量<br/>ins&#101;rt&nbsp;#output&nbsp;(real_decrypt)&nbsp;sel&#101;ct&nbsp;@real_decrypt_01<br/>--&nbsp;sel&#101;ct&nbsp;real_decrypt&nbsp;AS&nbsp;&#39;#output&nbsp;chek&#39;&nbsp;from&nbsp;#output&nbsp;--测试<br/>--&nbsp;-------------------------------------<br/>--开始从sp_helptext提取<br/>--&nbsp;-------------------------------------<br/>declare&nbsp;@dbname&nbsp;sysname<br/>,@BlankSpaceAdded&nbsp;int<br/>,@BasePos&nbsp;int<br/>,@CurrentPos&nbsp;int<br/>,@TextLength&nbsp;int<br/>,@LineId&nbsp;int<br/>,@AddOnLen&nbsp;int<br/>,@LFCR&nbsp;int&nbsp;--回车换行的长度<br/>,@DefinedLength&nbsp;int<br/>,@SyscomText&nbsp;nvarchar(max)<br/>,@Line&nbsp;nvarchar(255)<br/>Sel&#101;ct&nbsp;@DefinedLength&nbsp;=&nbsp;255<br/>Sel&#101;ct&nbsp;@BlankSpaceAdded&nbsp;=&nbsp;0&nbsp;--跟踪行结束的空格。注意Len函数忽略了多余的空格<br/>Cr&#101;ate&nbsp;TABLE&nbsp;#CommentText<br/>(LineId&nbsp;int<br/>,Text&nbsp;nvarchar(255)&nbsp;collate&nbsp;database_default)<br/>--使用#output代替sys.sysobjvalues<br/>DECLARE&nbsp;ms_crs_syscom&nbsp;CURSOR&nbsp;LOCAL<br/>FOR&nbsp;Sel&#101;ct&nbsp;real_decrypt&nbsp;from&nbsp;#output<br/>o&#114;DER&nbsp;BY&nbsp;ident<br/>FOR&nbsp;READ&nbsp;ONLY<br/>--获取文本<br/>Sel&#101;ct&nbsp;@LFCR&nbsp;=&nbsp;2<br/>Sel&#101;ct&nbsp;@LineId&nbsp;=&nbsp;1<br/>OPEN&nbsp;ms_crs_syscom<br/>FETCH&nbsp;NEXT&nbsp;FROM&nbsp;ms_crs_syscom&nbsp;into&nbsp;@SyscomText<br/>WHILE&nbsp;@@fetch_status&nbsp;&gt;=&nbsp;0<br/>BEGIN<br/>Sel&#101;ct&nbsp;@BasePos&nbsp;=&nbsp;1<br/>Sel&#101;ct&nbsp;@CurrentPos&nbsp;=&nbsp;1<br/>Sel&#101;ct&nbsp;@TextLength&nbsp;=&nbsp;LEN(@SyscomText)<br/>WHILE&nbsp;@CurrentPos&nbsp;!=&nbsp;0<br/>BEGIN<br/>--通过回车查找行的结束<br/>Sel&#101;ct&nbsp;@CurrentPos&nbsp;=&nbsp;CHARINDEX(char(13)+char(10),&nbsp;@SyscomText,&nbsp;&nbsp;<br/>@BasePos)<br/>--如果找到回车<br/>IF&nbsp;@CurrentPos&nbsp;!=&nbsp;0<br/>BEGIN<br/>--如果@Lines的长度的新值比设置的大就插入@Lines目前的内容并继续<br/>While&nbsp;(isnull(LEN(@Line),0)&nbsp;+&nbsp;@BlankSpaceAdded&nbsp;+&nbsp;&nbsp;<br/>@CurrentPos-@BasePos&nbsp;+&nbsp;@LFCR)&nbsp;&gt;&nbsp;@DefinedLength<br/>BEGIN<br/>Sel&#101;ct&nbsp;@AddOnLen&nbsp;=&nbsp;@DefinedLength-(isnull(LEN(@Line),0)&nbsp;+&nbsp;&nbsp;<br/>@BlankSpaceAdded)<br/>Ins&#101;rt&nbsp;#CommentText&nbsp;VALUES<br/>(&nbsp;@LineId,<br/>isnull(@Line,&nbsp;N&#39;&#39;)&nbsp;+&nbsp;isnull(SUBSTRING(@SyscomText,&nbsp;&nbsp;<br/>@BasePos,&nbsp;@AddOnLen),&nbsp;N&#39;&#39;))<br/>Sel&#101;ct&nbsp;@Line&nbsp;=&nbsp;NULL,&nbsp;@LineId&nbsp;=&nbsp;@LineId&nbsp;+&nbsp;1,<br/>@BasePos&nbsp;=&nbsp;@BasePos&nbsp;+&nbsp;@AddOnLen,&nbsp;@BlankSpaceAdded&nbsp;=&nbsp;0<br/>END<br/>Sel&#101;ct&nbsp;@Line&nbsp;=&nbsp;isnull(@Line,&nbsp;N&#39;&#39;)&nbsp;+&nbsp;&nbsp;<br/>isnull(SUBSTRING(@SyscomText,&nbsp;@BasePos,&nbsp;@CurrentPos-@BasePos&nbsp;+&nbsp;@LFCR),&nbsp;N&#39;&#39;)<br/>Sel&#101;ct&nbsp;@BasePos&nbsp;=&nbsp;@CurrentPos+2<br/>Ins&#101;rt&nbsp;#CommentText&nbsp;VALUES(&nbsp;@LineId,&nbsp;@Line&nbsp;)<br/>Sel&#101;ct&nbsp;@LineId&nbsp;=&nbsp;@LineId&nbsp;+&nbsp;1<br/>Sel&#101;ct&nbsp;@Line&nbsp;=&nbsp;NULL<br/>END<br/>ELSE<br/>--如果回车没找到<br/>BEGIN<br/>IF&nbsp;@BasePos&nbsp;&lt;=&nbsp;@TextLength<br/>BEGIN<br/>--如果@Lines长度的新值大于定义的长度<br/>While&nbsp;(isnull(LEN(@Line),0)&nbsp;+&nbsp;@BlankSpaceAdded&nbsp;+&nbsp;&nbsp;<br/>@TextLength-@BasePos+1&nbsp;)&nbsp;&gt;&nbsp;@DefinedLength<br/>BEGIN<br/>Sel&#101;ct&nbsp;@AddOnLen&nbsp;=&nbsp;@DefinedLength&nbsp;-&nbsp;&nbsp;<br/>(isnull(LEN(@Line),0)&nbsp;+&nbsp;@BlankSpaceAdded)<br/>Ins&#101;rt&nbsp;#CommentText&nbsp;VALUES<br/>(&nbsp;@LineId,<br/>isnull(@Line,&nbsp;N&#39;&#39;)&nbsp;+&nbsp;isnull(SUBSTRING(@SyscomText,&nbsp;&nbsp;<br/>@BasePos,&nbsp;@AddOnLen),&nbsp;N&#39;&#39;))<br/>Sel&#101;ct&nbsp;@Line&nbsp;=&nbsp;NULL,&nbsp;@LineId&nbsp;=&nbsp;@LineId&nbsp;+&nbsp;1,<br/>@BasePos&nbsp;=&nbsp;@BasePos&nbsp;+&nbsp;@AddOnLen,&nbsp;@BlankSpaceAdded&nbsp;=&nbsp;&nbsp;<br/>0<br/>END<br/>Sel&#101;ct&nbsp;@Line&nbsp;=&nbsp;isnull(@Line,&nbsp;N&#39;&#39;)&nbsp;+&nbsp;&nbsp;<br/>isnull(SUBSTRING(@SyscomText,&nbsp;@BasePos,&nbsp;@TextLength-@BasePos+1&nbsp;),&nbsp;N&#39;&#39;)<br/>if&nbsp;LEN(@Line)&nbsp;&lt;&nbsp;@DefinedLength&nbsp;and&nbsp;charindex(&#39;&nbsp;&#39;,&nbsp;&nbsp;<br/>@SyscomText,&nbsp;@TextLength+1&nbsp;)&nbsp;&gt;&nbsp;0<br/>BEGIN<br/>Sel&#101;ct&nbsp;@Line&nbsp;=&nbsp;@Line&nbsp;+&nbsp;&#39;&nbsp;&#39;,&nbsp;@BlankSpaceAdded&nbsp;=&nbsp;1<br/>END<br/>END<br/>END<br/>END<br/>FETCH&nbsp;NEXT&nbsp;FROM&nbsp;ms_crs_syscom&nbsp;into&nbsp;@SyscomText<br/>END<br/>IF&nbsp;@Line&nbsp;is&nbsp;NOT&nbsp;NULL<br/>Ins&#101;rt&nbsp;#CommentText&nbsp;VALUES(&nbsp;@LineId,&nbsp;@Line&nbsp;)<br/>sel&#101;ct&nbsp;Text&nbsp;from&nbsp;#CommentText&nbsp;o&#114;der&nbsp;by&nbsp;LineId<br/>CLOSE&nbsp;ms_crs_syscom<br/>DEALLOCATE&nbsp;ms_crs_syscom<br/>Dro&#112;&nbsp;TABLE&nbsp;#CommentText<br/>--&nbsp;-------------------------------------<br/>--结束从sp_helptext提取<br/>--&nbsp;-------------------------------------<br/>--删除用短横线创建的存储过程并重建原始的存储过程<br/>ROLLBACK&nbsp;TRAN<br/>Dro&#112;&nbsp;TABLE&nbsp;#output<img src="http://blog.fengning.cc/images/download.gif" alt="下载文件" style="margin:0px 2px -4px 0px"/> <a href="http://blog.fengning.cc/attachments/month_1203/j2012323122742.rar" target="_blank">点击下载此文件</a><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://blog.fengning.cc/default.asp?id=249" /> 
	  <id>http://blog.fengning.cc/default.asp?id=249</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[DZ模板修改后前台界面变成空白的解决办法]]></title>
	  <author>
		 <name>香橙</name>
		 <uri>http://blog.fengning.cc/</uri>
		 <email>info@hebei35.cn</email>
	  </author>
	  <category term="" scheme="http://blog.fengning.cc/default.asp?cateID=8" label="其他文章" /> 
	  <updated>2012-03-11T14:59:11+08:00</updated>
	  <published>2012-03-11T14:59:11+08:00</published>
		  <summary type="html"><![CDATA[DZ模板修改后前台界面变成空白的解决办法：<br/><br/>此方法是经本人多次尝试后才找到的原因，大概很多朋友安装DZ模板后修改了模板文件后前台显示异常，如页面内容部分空白等均为这种情况，原因是模板编辑后生成的目录没有写权限，而改动后与原文件不同所以造成显示空白。（有的朋友会问为什么刚刚安装没有改动的时候正常呢？因为当时已经存在了一个生成的文件，且与原模板相同）&nbsp;无论你看到没看懂，按照我的方法查一下，希望对你有帮助！方法如下：<br/><br/>查看/data/diy/目录是否有写权限，如果没有添加写权限，如linux服务器设置为777，并且设置该目录下的所有子目录具有写权限即可。<br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://blog.fengning.cc/default.asp?id=248" /> 
	  <id>http://blog.fengning.cc/default.asp?id=248</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[DEDE5.6升级5.7错误 后台管理“系统基本参数”变成空白的解决办法]]></title>
	  <author>
		 <name>香橙</name>
		 <uri>http://blog.fengning.cc/</uri>
		 <email>info@hebei35.cn</email>
	  </author>
	  <category term="" scheme="http://blog.fengning.cc/default.asp?cateID=8" label="其他文章" /> 
	  <updated>2012-02-20T22:44:37+08:00</updated>
	  <published>2012-02-20T22:44:37+08:00</published>
		  <summary type="html"><![CDATA[问题：dedecms5.6升级到dedecms5.7,配置系统基本参数，发现配置参数显示空白。<br/>原因：管理员目录中（默认为dede）,inc子目录中缺少文件configgroup.txt.<br/><br/>解决方法1：查看dede\templets\sys_info.htm,发现第61行的代码为“$ds&nbsp;=&nbsp;file(DEDEADMIN.&#39;/inc/configgroup.txt&#39;);”。<br/>进dede\inc目录，找不到configgroup.txt文件。遂下完整升级包，找到了此文件。上传到网站空间，问题解决。完整安装包的dede\inc目录里另外还多出“fieldtype.txt”和“grouplist.txt”两个文件，建议一起上传到空间。<br/><br/>解决办法2：<br/>如果嫌下载完整包麻烦，那么可以新建文本文档，命名为configgroup.txt.文本内容如下：<br/>1,站点设置<br/>2,核心设置<br/>3,附件设置<br/>4,会员设置<br/>5,互动设置<br/>6,性能选项<br/>7,其它选项<br/>8,模块设置<br/>保存文件，解决问题。]]></summary>
	  <link rel="alternate" type="text/html" href="http://blog.fengning.cc/default.asp?id=247" /> 
	  <id>http://blog.fengning.cc/default.asp?id=247</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[齐博地方门户多城市版改为单城市版]]></title>
	  <author>
		 <name>香橙</name>
		 <uri>http://blog.fengning.cc/</uri>
		 <email>info@hebei35.cn</email>
	  </author>
	  <category term="" scheme="http://blog.fengning.cc/default.asp?cateID=6" label="SEO" /> 
	  <updated>2012-02-16T08:57:18+08:00</updated>
	  <published>2012-02-16T08:57:18+08:00</published>
		  <summary type="html"><![CDATA[将齐博地方门户多城市版改为单城市版的简单方法(不破坏数据库,推荐)<br/>主要讨论如何有效利用定时自动采集结合伪原创技术帮助站在更好的运营网站。<br/>有很多朋友问到我如何将齐博地方门户多城市版改为单城市版?大家一般想到的办法是删除多余的城市即可，可是默认城市大概700多个，后台没有批量删除功能，手工删除的话非常费时间，而且一旦你日后打算启用其他城市，再回复添加也很麻烦，因此删除数据库其他城市方法是不推荐的。下面给大家介绍一种简单方法，几句话就能搞定，而且不破坏原来数据库，方便日后升级。<br/>1、找到&nbsp;inc/common.inc.php<br/>查找：<br/>//商家认证分类<br/>在上面添加语句：<br/>//强制单城市<br/>$city_id=你的城市ID;&nbsp;//城市ID请在后台查看<br/>2、建议在前台模板哪里，将城市选择功能去掉。一般在头部模板中：<br/>将：&nbsp;&lt;a&nbsp;href=”$webdb[www_url]/allcity.php”&gt;[切换城市]&lt;/a&gt;<br/>改为：&nbsp;[替换成你的门户城市或标语均可]&nbsp;，即把超链接去除<br/>这样就可以实现单城市了&nbsp;<br/>在这里推荐一个齐博地方门户V2.5做的网站：<a href="http://www.hebei35.cn" target="_blank">http://www.hebei35.cn</a>]]></summary>
	  <link rel="alternate" type="text/html" href="http://blog.fengning.cc/default.asp?id=246" /> 
	  <id>http://blog.fengning.cc/default.asp?id=246</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[盗墓笔记8全集txt下载]]></title>
	  <author>
		 <name>香橙</name>
		 <uri>http://blog.fengning.cc/</uri>
		 <email>info@hebei35.cn</email>
	  </author>
	  <category term="" scheme="http://blog.fengning.cc/default.asp?cateID=8" label="其他文章" /> 
	  <updated>2012-01-04T13:18:20+08:00</updated>
	  <published>2012-01-04T13:18:20+08:00</published>
		  <summary type="html"><![CDATA[盗墓笔记8终于完整出来了，至此盗墓笔记全书完结。据说盗墓笔记一书已被好莱坞买下，期待成为中国版的哈利波特！<br/>留个下载地址，方便自己随时阅读，有兴趣的朋友欢迎下载，本地址只有盗墓笔记8，前七部网上流传就很多了。<br/><br/>下载地址：<img src="http://blog.fengning.cc/images/download.gif" alt="下载文件" style="margin:0px 2px -4px 0px"/> <a href="http://blog.fengning.cc/attachments/month_1201/7201214131735.rar" target="_blank">点击下载盗墓笔记8</a><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://blog.fengning.cc/default.asp?id=245" /> 
	  <id>http://blog.fengning.cc/default.asp?id=245</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[Godaddy空间不支持zend的解决办法]]></title>
	  <author>
		 <name>香橙</name>
		 <uri>http://blog.fengning.cc/</uri>
		 <email>info@hebei35.cn</email>
	  </author>
	  <category term="" scheme="http://blog.fengning.cc/default.asp?cateID=8" label="其他文章" /> 
	  <updated>2011-12-31T17:27:18+08:00</updated>
	  <published>2011-12-31T17:27:18+08:00</published>
		  <summary type="html"><![CDATA[Godaddy自带的Zend版本太低了（2.5.X版本的），很多程序都无法正常的运行，看见很多人问怎么升级Zend，这里就跟大家介绍一下如何独立操作来升级和安装Zend的最新版本。<br/>关于PHP5：<br/>有朋友说Godaddy不支持PHP5+ZEND的组合，不过经过本人验证，PHP5也是可以使用Zend的，只要按照如下的方法操作，最后把Php.ini文件变为PHP5.ini文件即可了。(注意，Php.ini和PHP5.ini两个文件不能共存，不然升级不成功。)<br/><br/>通过本人下面的做法，PHP5可以完美支持Zend3.3，绝对没问题！记得看清重点标注的地方！！！<br/><br/>这里就用PHP4的方法来做演示，PHP5的大家只要改php.ini文件名为php5.ini即可。<br/><br/>首先去www.zend.com官方下载一个最新版本的Zend&nbsp;optimizer，进入官方网站后点击菜单中的Download，进入下载页面，找到Zend&nbsp;optimizer，点击后便的Try，进入正式的下载页面，选择合适的版本下载即可。Sel&#101;ct&nbsp;Package这里是选择相关的包文件。这里我选择的是：Linux&nbsp;x86&nbsp;(32&nbsp;bit)&nbsp;(TAR.GZ)&nbsp;|&nbsp;9.74&nbsp;MB&nbsp;|&nbsp;3.3.3。注意：如果下载不了，需要填一下你的相关信息，注册一下，然后就能下载了。<br/><br/>这里提供给大家一个zend&nbsp;optimizer下载地址：（linux系统，3.3.3的）<a href="http://downloads.zend.com/optimizer/3.3.3/ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz" target="_blank">http://downloads.zend.com/optimizer/3.3.3/ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz</a><br/><br/>目前最新版本的Zend是3.3版本的。下面就以3.3为例子来和大家说明：<br/><br/>1、解压缩下载的zend&nbsp;optimizer文件，你会找到一个名字为data的文件夹。把文件夹的名字修改为比较特殊的名字（主要是为了避免混淆），如&nbsp;zend_arzn，最好由zend开头，这样方便将来查找和更新。<br/><br/>2、上传zend_arzn文件夹（就是原来的data文件夹，这个名字是自己修改的，修改成什么名字将来就使用什么）到网站根目录。<br/><br/>3、找到根目录下的PHP.INI文件，如果目录中没有这个文件的，就自行建立一个，键入如下内容：<br/>引用:<br/>register_globals&nbsp;=&nbsp;on<br/>allow_url_fopen&nbsp;=&nbsp;on<br/><br/>expose_php&nbsp;=&nbsp;on<br/>max_input_time&nbsp;=&nbsp;60<br/>variables_order&nbsp;=&nbsp;&#34;EGPCS&#34;<br/>extension_dir&nbsp;=&nbsp;./<br/>upload_tmp_dir&nbsp;=&nbsp;/tmp<br/>precision&nbsp;=&nbsp;12<br/>SMTP&nbsp;=&nbsp;relay-hosting.secureserver.net<br/>url_rewriter.tags&nbsp;=&nbsp;&#34;a=href,area=href,frame=src,input=src,form=,fieldset=&#34;<br/><br/>[Zend]<br/>zend_optimizer.optimization_level=15<br/>zend_extension=/home/content/u/s/user/html/zend_arzn/4_3_x_comp/ZendOptimizer.so<br/>zend_extension_ts=/home/content/u/s/user/html/zend_arzn/4_3_x_comp/TS/ZendOptimizer.so<br/><br/>红色部分的为自己的登录路径和登录用户名，比如你的ID是taohost,红色部分就是/u/s/taohost，如果用户名比较长可能会取前3位。路径可以通过如下方法获得（路径不正确可能导致zend不能正常使用）：<br/><br/>特别注意：<br/><br/>需要得到文件和用户的路径，您需要立即建立一个php文件，将&lt;?&nbsp;echo&nbsp;phpinfo();&nbsp;?&gt;放入文件中，保存为文件名info.php。<br/>在浏览器中访问这个文件，得到两个参数，一个是Configuration&nbsp;File&nbsp;(php.ini)&nbsp;Path&nbsp;（php文件的路径），如果这个没有的话，就搜索&nbsp;DOCUMENT_ROOT&nbsp;这个节点，得到路径。<br/>通过这个文件可以得到“/home/content/u/s/user/html”中红色部分的值。还有一个是您当前的PHP版本号（一般在顶部），存留备用，下面会用到。<br/><br/>4、得到正确的路径后，修改PHP.ini文件即可。使用这个php的版本号，到zend_arzn文件夹找一个和你的服务器PHP版本最相近的文件夹，（zend_arzn文件夹包含很多文件夹，例如4_3_x_comp，5_1_x_comp，和&nbsp;5_2_x_comp）。然后替换上述代码的4_3_x_comp中的4_3_x&nbsp;。实际上就是调用这个文件夹里的资源。如果文件夹指定的不正确，将可能不正常工作。<br/><br/>5、想确认zend&nbsp;optimizer是否升级成功，就访问刚才建立的那个PHP文件info.php，找到Zend字段即可看到zend的版本了！<br/><br/>注意：PHP5的记住，一定要把php.ini修改为php5.ini<br/><br/>需要注意的是Godaddy更新Zend后的生效时间，要过一小会的（我是等了2分钟），时间长的话可能需要至少半小时左右。所以如果更新了还是不好用，那么你就耐心的等等吧，喝杯咖啡。<br/><br/>三个ON视个人情况改OFF，有的功能最好关了。]]></summary>
	  <link rel="alternate" type="text/html" href="http://blog.fengning.cc/default.asp?id=244" /> 
	  <id>http://blog.fengning.cc/default.asp?id=244</id> 
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[PHP在线解压程序，在线解压zip文件的php程序]]></title>
	  <author>
		 <name>香橙</name>
		 <uri>http://blog.fengning.cc/</uri>
		 <email>info@hebei35.cn</email>
	  </author>
	  <category term="" scheme="http://blog.fengning.cc/default.asp?cateID=8" label="其他文章" /> 
	  <updated>2011-07-06T14:43:28+08:00</updated>
	  <published>2011-07-06T14:43:28+08:00</published>
		  <summary type="html"><![CDATA[有时候，我们用FTP上传大连文件太慢了，而且容易出错。这时候，我们可以吧要上传的文件，压缩成zip文件（不能是rar，不能是gz格式），然后再上传这个zip文件。&nbsp;接下来，我们只要上传一个在线解压zip文件的php程序就可以将zip文件在线解压了。<br/>PHP在线解压程序的使用方法：<br/><br/>下载上面的zip文件，解压成unzip.php,把这个unzip.php用ftp上传到你的网站/目录&nbsp;<br/>用ie浏览器访问unzip.php，如&nbsp;<a href="http://" target="_blank">http://</a>你的域名/unzip.php&nbsp;<br/>第一次访问，会要你设置密码，这是为了防止其他人随便访问此程序，请设置一个复杂点的密码，但你自己要能记住。&nbsp;<br/>压缩你的程序目录为zip文件，并ftp上传，上传完成后，刷新&nbsp;<a href="http://" target="_blank">http://</a>你的域名/unzip.php&nbsp;<br/>看到你的zip文件了吗？点旁边红色的&nbsp;[解压]&nbsp;链接，就会自动开始解压了&nbsp;<br/>解压成功后，请FTP刷新查看解压后的文件，unzip.php网页里面可能看不到。&nbsp;<br/>注意：zip文件最好不要超过8M，解压完成后，可以删除unzip.php文件。如果忘记密码，可以删除pass.php文件&nbsp;<br/>如果你下载的是.gz&nbsp;或&nbsp;.tar.gz&nbsp;文件，请先在你的电脑上解压，然后再压缩成zip格式的文件上传。&nbsp;<br/>在非Windows环境下将压缩包解压以后若所解压的程序的安装使用出现问题请认真检查程序的目录和文件权限。<br/><br/>PHP在线解压程序，在线解压zip文件的php程序&nbsp;下载：unzip.zip&nbsp;<img src="http://blog.fengning.cc/images/download.gif" alt="下载文件" style="margin:0px 2px -4px 0px"/> <a href="http://blog.fengning.cc/attachments/month_1107/m201176144249.zip" target="_blank">点击下载unzip在线解压zip文件的php程序文件</a><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://blog.fengning.cc/default.asp?id=243" /> 
	  <id>http://blog.fengning.cc/default.asp?id=243</id> 
  </entry>	
		
</feed>
