<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>代码哥哥</title>
	<atom:link href="http://www.cbrother.com/feed" rel="self" type="application/rss+xml" />
	<link>http://www.cbrother.com</link>
	<description>发奋的人受人尊敬，正确发奋之人却受人敬仰。</description>
	<lastBuildDate>Thu, 16 Feb 2012 08:31:55 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>各种视频的分辨率及规格</title>
		<link>http://www.cbrother.com/html/2327.html</link>
		<comments>http://www.cbrother.com/html/2327.html#comments</comments>
		<pubDate>Thu, 16 Feb 2012 08:31:55 +0000</pubDate>
		<dc:creator>代码哥哥</dc:creator>
				<category><![CDATA[大杂烩]]></category>
		<category><![CDATA[视频的分辨率]]></category>

		<guid isPermaLink="false">http://www.cbrother.com/?p=2327</guid>
		<description><![CDATA[VCD、DVD常见有2种制式（PAL制式与NTSC制式）的区别，不同制式的碟片的帧率、分辨率不一样。
标准PAL    制式    帧率25
标准NTSC制式    帧率29.97
 




碟片种类


制式


标准分辨率




DVD


PAL


720×576




DVD


NTSC


720×480




SVCD


PAL


480×576




SVCD


NTSC


480×480




VCD


PAL


352×288




VCD


NTSC


352×240




 其中SVCD在国内以前有超级VCD之类的称呼，现在的VCD机器也都能直接支持，所以现在市场上已经一律称为VCD，但不常见。
稍微注意一下，就会发现，这些分辨率其实都不符合4:3或者16:9的比例。但我们在日常应用中，普通电视机/普屏显示器是4:3比例，国内的电视剧也多为这个比例。宽屏电影的画面比例常为16:9，因此，在转换VCD、DVD影片的时候，就必须选择合适的分辨率。否则转换出来的影片画面是变形的。
为什么出现这种情况：VCD、DVD规范都出现于模拟电视流行的时代，这种分辨率与模拟电视信号的特点有关。有兴趣的请自己上百度搜索相关知识。
国内的VCD碟多是PAL制式，画面比例为4:3，即使上下有黑边，那种黑边也多是已经压制进视频文件的，因此，实际转换的时候，只要按照VCD原始分辨率保存即可，如PAL制就输入352×288，NTSC制就输入352×240，这样可以省去对画面比例重取样的过程。现在电脑上的播放器多能自动识别PAL制VCD常见的352×288分辨率，在播放时会自动拉伸至4:3画面比例。很多网上的电视剧，RMVB格式的，分辨率为352×288就是这个原因。但如果是用于MP4播放器等便携式设备，此类设备常见分辨率为320×240，且很多MP4设备不能支持高于此分辨率的视频文件，就需要手动指定分辨率。这样画面刚好就是4:3比例，也能在此类设备上达到最佳视觉效果。PDA/智能手机等设备对分辨率要求不严格，即使画面分辨率大于320×240，也可在播放时自动调整为最佳画面大小。但播放效果方面，依然是最佳分辨率的视频文件效果最好。例如，多数PDA设备的液晶屏分辨率为320×240，你固然可以播放352×288分辨率的视频文件，但实际画面效果可能比不上320×240的视频文件。
DVD影片的转换相对麻烦一些，因为DVD影片中既有宽屏电影，播放时的实际画面效果为16:9比例；又有普通画面的电影，实际播放画面效果为4:3。因此不能简单的按照DVD分辨率标准设置转换后的分辨率。
第一步，自己播放下DVD源片，判断DVD画面比例
第二步，根据自己转换后的用途选择转换后的画面宽度，例如：如果用在MP4、PAD、智能手机上，则最佳宽度为320像素，如果保存到电脑上，4:3画面比例的影片则可以选择640像素宽度，16:9画面比例的影片常用720像素宽度。
第三步，根据源片画面比例计算转换后的最佳高度。
 




源片画面比例


转换后文件用途


参考的分辨率设置




4:3


MP4、PAD、智能手机播放用


320×240




4:3


保存至硬盘


640×480




16:9


MP4、PAD、智能手机播放用


320×180




16:9


保存至硬盘


720×405




 实际处理中，宽屏DVD影片制作为MP4、PAD、智能手机播放用的文件时，经常上下拓展黑边后调整画面分辨率为320×240，然后利用拓展出来的黑边安放字幕。宽屏DVD影片保存至硬盘或网络交流时，为了方便，常取近似值720×400，但我一般不这么做，毕竟从理论上来说画面已经变形了，虽然这种变形很小。有时候也根据DVD碟片具体情况取分辨率704×396。
保存至硬盘时，大家常有2种需求。一种是希望每张DVD碟刚好能保存在一张CD刻录碟上，就是希望每个DVD碟转换后的文件大小刚好为700M左右。还有一种是希望转换后的文件能保存尽可能高的原DVD质量，适当缩小体积，转换出的文件别像DVD一样4G多一个就可以了，同时能保存多声道、多字幕，这个就已经属于DVD Rip范畴了。
使用H264+AAC编码组合，一部约2小时的DVD影片转换后的大小为700M时，基本也能保持较好的画面质量了，此时的画面质量和声音效果都比网上流行的RMVB强的多。
但如果希望画面质量损失更小，保存更多的字幕和声道，或者影片长度比较长，如接近3小时，或者选择了其他压缩率比较低的编码方式，那么就需要更大的文件体积。DVD Rip时，往往把一部电影按700M的标准分割为1-3部分。但现在DVD刻录机的流行，也许以后对700M容量的这种需求会减少，直接把一部DVD电影压缩成1-2G大小的文件也可能越来越常见，电影不分割，看起来应该更连贯。
高清视频方面，有1080I/1080P等分辨率，一般习惯把一部高清电影用H264+AAC编码组合压缩为约4G左右大小，刚好适合一张DVD刻录碟。当然，大家应该还能见到一部高清电影容量高达30-40G的情况，那是因为使用了MPEG2编码（就是DVD用的编码方式），MPEG2编码方式弹性大，因此也可以用在高清视频编码领域，优点是对设备运算能力要求低，缺点是文件体积过于庞大。同样画面质量的情况下，H264编码的文件体积小的多，但对电脑CPU运算能力要求比较高，好在现在流行的双核电脑都已经可以完全胜任此类应用了，因此，以后H264编码的文件会越来越多。通过目前国内的网络来下载一个30G的文件是件痛苦的事。绝大多数人还只是在用本就不快还被限速的ADSL。
]]></description>
			<content:encoded><![CDATA[<p>VCD、DVD常见有2种制式（PAL制式与NTSC制式）的区别，不同制式的碟片的帧率、分辨率不一样。<br />
标准PAL    制式    帧率25<br />
标准NTSC制式    帧率29.97<br />
 </p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="244" valign="top">
<div>碟片种类</div>
</td>
<td width="244" valign="top">
<div>制式</div>
</td>
<td width="244" valign="top">
<div>标准分辨率</div>
</td>
</tr>
<tr>
<td width="244" valign="top">
<div>DVD</div>
</td>
<td width="244" valign="top">
<div>PAL</div>
</td>
<td width="244" valign="top">
<div>720×576</div>
</td>
</tr>
<tr>
<td width="244" valign="top">
<div>DVD</div>
</td>
<td width="244" valign="top">
<div>NTSC</div>
</td>
<td width="244" valign="top">
<div>720×480</div>
</td>
</tr>
<tr>
<td width="244" valign="top">
<div>SVCD</div>
</td>
<td width="244" valign="top">
<div>PAL</div>
</td>
<td width="244" valign="top">
<div>480×576</div>
</td>
</tr>
<tr>
<td width="244" valign="top">
<div>SVCD</div>
</td>
<td width="244" valign="top">
<div>NTSC</div>
</td>
<td width="244" valign="top">
<div>480×480</div>
</td>
</tr>
<tr>
<td width="244" valign="top">
<div>VCD</div>
</td>
<td width="244" valign="top">
<div>PAL</div>
</td>
<td width="244" valign="top">
<div>352×288</div>
</td>
</tr>
<tr>
<td width="244" valign="top">
<div>VCD</div>
</td>
<td width="244" valign="top">
<div>NTSC</div>
</td>
<td width="244" valign="top">
<div>352×240</div>
</td>
</tr>
</tbody>
</table>
<p> 其中SVCD在国内以前有超级VCD之类的称呼，现在的VCD机器也都能直接支持，所以现在市场上已经一律称为VCD，但不常见。<br />
稍微注意一下，就会发现，这些分辨率其实都不符合4:3或者16:9的比例。但我们在日常应用中，普通电视机/普屏显示器是4:3比例，国内的电视剧也多为这个比例。宽屏电影的画面比例常为16:9，因此，在转换VCD、DVD影片的时候，就必须选择合适的分辨率。否则转换出来的影片画面是变形的。</p>
<p>为什么出现这种情况：VCD、DVD规范都出现于模拟电视流行的时代，这种分辨率与模拟电视信号的特点有关。有兴趣的请自己上百度搜索相关知识。</p>
<p>国内的VCD碟多是PAL制式，画面比例为4:3，即使上下有黑边，那种黑边也多是已经压制进视频文件的，因此，实际转换的时候，只要按照VCD原始分辨率保存即可，如PAL制就输入352×288，NTSC制就输入352×240，这样可以省去对画面比例重取样的过程。现在电脑上的播放器多能自动识别PAL制VCD常见的352×288分辨率，在播放时会自动拉伸至4:3画面比例。很多网上的电视剧，RMVB格式的，分辨率为352×288就是这个原因。但如果是用于MP4播放器等便携式设备，此类设备常见分辨率为320×240，且很多MP4设备不能支持高于此分辨率的视频文件，就需要手动指定分辨率。这样画面刚好就是4:3比例，也能在此类设备上达到最佳视觉效果。PDA/智能手机等设备对分辨率要求不严格，即使画面分辨率大于320×240，也可在播放时自动调整为最佳画面大小。但播放效果方面，依然是最佳分辨率的视频文件效果最好。例如，多数PDA设备的液晶屏分辨率为320×240，你固然可以播放352×288分辨率的视频文件，但实际画面效果可能比不上320×240的视频文件。</p>
<p>DVD影片的转换相对麻烦一些，因为DVD影片中既有宽屏电影，播放时的实际画面效果为16:9比例；又有普通画面的电影，实际播放画面效果为4:3。因此不能简单的按照DVD分辨率标准设置转换后的分辨率。<br />
第一步，自己播放下DVD源片，判断DVD画面比例<br />
第二步，根据自己转换后的用途选择转换后的画面宽度，例如：如果用在MP4、PAD、智能手机上，则最佳宽度为320像素，如果保存到电脑上，4:3画面比例的影片则可以选择640像素宽度，16:9画面比例的影片常用720像素宽度。<br />
第三步，根据源片画面比例计算转换后的最佳高度。<br />
 </p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="244" valign="top">
<div>源片画面比例</div>
</td>
<td width="244" valign="top">
<div>转换后文件用途</div>
</td>
<td width="244" valign="top">
<div>参考的分辨率设置</div>
</td>
</tr>
<tr>
<td width="244" valign="top">
<div>4:3</div>
</td>
<td width="244" valign="top">
<div>MP4、PAD、智能手机播放用</div>
</td>
<td width="244" valign="top">
<div>320×240</div>
</td>
</tr>
<tr>
<td width="244" valign="top">
<div>4:3</div>
</td>
<td width="244" valign="top">
<div>保存至硬盘</div>
</td>
<td width="244" valign="top">
<div>640×480</div>
</td>
</tr>
<tr>
<td width="244" valign="top">
<div>16:9</div>
</td>
<td width="244" valign="top">
<div>MP4、PAD、智能手机播放用</div>
</td>
<td width="244" valign="top">
<div>320×180</div>
</td>
</tr>
<tr>
<td width="244" valign="top">
<div>16:9</div>
</td>
<td width="244" valign="top">
<div>保存至硬盘</div>
</td>
<td width="244" valign="top">
<div>720×405</div>
</td>
</tr>
</tbody>
</table>
<p> 实际处理中，宽屏DVD影片制作为MP4、PAD、智能手机播放用的文件时，经常上下拓展黑边后调整画面分辨率为320×240，然后利用拓展出来的黑边安放字幕。宽屏DVD影片保存至硬盘或网络交流时，为了方便，常取近似值720×400，但我一般不这么做，毕竟从理论上来说画面已经变形了，虽然这种变形很小。有时候也根据DVD碟片具体情况取分辨率704×396。</p>
<p>保存至硬盘时，大家常有2种需求。一种是希望每张DVD碟刚好能保存在一张CD刻录碟上，就是希望每个DVD碟转换后的文件大小刚好为700M左右。还有一种是希望转换后的文件能保存尽可能高的原DVD质量，适当缩小体积，转换出的文件别像DVD一样4G多一个就可以了，同时能保存多声道、多字幕，这个就已经属于DVD Rip范畴了。<br />
使用H264+AAC编码组合，一部约2小时的DVD影片转换后的大小为700M时，基本也能保持较好的画面质量了，此时的画面质量和声音效果都比网上流行的RMVB强的多。<br />
但如果希望画面质量损失更小，保存更多的字幕和声道，或者影片长度比较长，如接近3小时，或者选择了其他压缩率比较低的编码方式，那么就需要更大的文件体积。DVD Rip时，往往把一部电影按700M的标准分割为1-3部分。但现在DVD刻录机的流行，也许以后对700M容量的这种需求会减少，直接把一部DVD电影压缩成1-2G大小的文件也可能越来越常见，电影不分割，看起来应该更连贯。<br />
高清视频方面，有1080I/1080P等分辨率，一般习惯把一部高清电影用H264+AAC编码组合压缩为约4G左右大小，刚好适合一张DVD刻录碟。当然，大家应该还能见到一部高清电影容量高达30-40G的情况，那是因为使用了MPEG2编码（就是DVD用的编码方式），MPEG2编码方式弹性大，因此也可以用在高清视频编码领域，优点是对设备运算能力要求低，缺点是文件体积过于庞大。同样画面质量的情况下，H264编码的文件体积小的多，但对电脑CPU运算能力要求比较高，好在现在流行的双核电脑都已经可以完全胜任此类应用了，因此，以后H264编码的文件会越来越多。通过目前国内的网络来下载一个30G的文件是件痛苦的事。绝大多数人还只是在用本就不快还被限速的ADSL。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cbrother.com/html/2327.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>delphi中读写文本文件的方法</title>
		<link>http://www.cbrother.com/html/2324.html</link>
		<comments>http://www.cbrother.com/html/2324.html#comments</comments>
		<pubDate>Tue, 17 Jan 2012 15:58:43 +0000</pubDate>
		<dc:creator>代码哥哥</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[delphi中读写文本文件]]></category>

		<guid isPermaLink="false">http://www.cbrother.com/?p=2324</guid>
		<description><![CDATA[需要两个按钮和两个Richedit控件,采用默认名称即可.
procedure TForm1.Button1Click(Sender: TObject);  //写文件
var wText: TextFile;
begin
  AssignFile(wText, 'ip.txt');
  Rewrite(wText);//创建文件，或者使用ReSet打开文件
  Writeln(wText, richedit1.text);
  CloseFile(wText);
end;
procedure TForm1.Button2Click(Sender: TObject);  //读文件
var rText: TextFile;
    tmp:String;
begin
  richedit2.Clear;//清除原来的内容
  AssignFile(rText, 'ip.txt');
  reset(rText);
  while not EOF(rText) do
  begin
    readln(rText,tmp);
    richedit2.Lines.Add(tmp);
  end;
  closefile(rText);
end; 
相关知识内容:
  [...]]]></description>
			<content:encoded><![CDATA[<p>需要两个按钮和两个Richedit控件,采用默认名称即可.</p>
<p>procedure TForm1.Button1Click(Sender: TObject);  //写文件</p>
<p>var wText: TextFile;<br />
begin<br />
  AssignFile(wText, 'ip.txt');<br />
  Rewrite(wText);//创建文件，或者使用ReSet打开文件<br />
  Writeln(wText, richedit1.text);<br />
  CloseFile(wText);<br />
end;</p>
<p>procedure TForm1.Button2Click(Sender: TObject);  //读文件<br />
var rText: TextFile;<br />
    tmp:String;<br />
begin<br />
  richedit2.Clear;//清除原来的内容<br />
  AssignFile(rText, 'ip.txt');<br />
  reset(rText);<br />
  while not EOF(rText) do<br />
  begin<br />
    readln(rText,tmp);<br />
    richedit2.Lines.Add(tmp);<br />
  end;<br />
  closefile(rText);<br />
end; </p>
<p>相关知识内容:</p>
<p>    在对文本文件进行任何处理之前，首先要打开此文本文件。声明变量：通过此变量可以来引用一个文本文件。<br />
    打开一个文件需要两步：首先是 AssignFile(),它可以将文件变量与一个文件关联起来。例如：这时，你可以进行第二步：打开文件。有三种方式打开文件：使用R e w r i t e ( )过程创建并打开文件；对于一个已存在的文件，此操作将使文件被覆盖；使用R e s e t ( )过程只读地打开一个文件；使用Append() 过程向已存在的文件追加文本。<br />
    注意Reset()将以可读写方式打开类型文件和无类型文件。可以使用CloseFile()来关闭一个已打开的文件。</p>
<p>    下面是各种调用的函数:</p>
<p>    文件的打开与关闭：<br />
     AssignFile：把一个外部文件名和一个文件变量相关联<br />
     Reset：打开一个存在的文件<br />
     Rewrite：创建并打开一个新文件（或覆盖原有文件）<br />
     Append ：以添加方式打开一个文件（只适用于文本文件）<br />
     CloseFile：关闭一个打开的文件<br />
     FileOpen：打开一个特定的文件并返回文件句柄<br />
     FileCreate：创建一个给定文件名的文件并返回文件句柄<br />
     FileClose：关闭一个特定句柄的文件<br />
     后边三个文件主要供系统内部使用，在文件复制的编程中也往往会用到。它们操作的对象是文件句柄而不是文件变量。</p>
<p>    文件定位：<br />
     Seek：把文件当前位置移到指定部分<br />
     FilePos：返回文件的当前位置<br />
     Eoln：返回行结束标志<br />
     EOF：返回文件结束标志<br />
     FileSeek：改变当前文件指针的位置 </p>
]]></content:encoded>
			<wfw:commentRss>http://www.cbrother.com/html/2324.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Delphi中提升为Debug权限才能关闭服务进程</title>
		<link>http://www.cbrother.com/html/2322.html</link>
		<comments>http://www.cbrother.com/html/2322.html#comments</comments>
		<pubDate>Mon, 16 Jan 2012 17:49:32 +0000</pubDate>
		<dc:creator>代码哥哥</dc:creator>
				<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Delphi关闭服务进程]]></category>

		<guid isPermaLink="false">http://www.cbrother.com/?p=2322</guid>
		<description><![CDATA[Delphi中提升为Debug权限才能关闭服务进程,下面的例子只包含提权部份.
先引用 TlHelp32 单元

?Download download.txt1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
function EnablePrivilege&#40;hToken: Cardinal; PrivName: string; bEnable: Boolean&#41;: Boolean;  //进程提升权限
var
    TP: TOKEN_PRIVILEGES;
    Dummy: Cardinal;
&#160;
begin
&#160;
    TP.PrivilegeCount := 1;
    LookupPrivilegeValue&#40;nil, pchar&#40;PrivName&#41;, TP.Privileges&#91;0&#93;.Luid&#41;;
    if bEnable then
      TP.Privileges&#91;0&#93;.Attributes := SE_PRIVILEGE_ENABLED
    else
   [...]]]></description>
			<content:encoded><![CDATA[<p>Delphi中提升为Debug权限才能关闭服务进程,下面的例子只包含提权部份.</p>
<p>先引用 TlHelp32 单元</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left2">Download <a href="http://www.cbrother.com/wp-content/plugins/wp-codebox/wp-codebox.php?p=2322&amp;download=download.txt">download.txt</a></span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p23222"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
</pre></td><td class="code" id="p2322code2"><pre class="delphi" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> EnablePrivilege<span style="color: #000066;">&#40;</span>hToken<span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">Cardinal</span><span style="color: #000066;">;</span> PrivName<span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">string</span><span style="color: #000066;">;</span> bEnable<span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">Boolean</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">Boolean</span><span style="color: #000066;">;</span>  <span style="color: #808080; font-style: italic;">//进程提升权限</span>
<span style="color: #000000; font-weight: bold;">var</span>
    TP<span style="color: #000066;">:</span> TOKEN_PRIVILEGES<span style="color: #000066;">;</span>
    Dummy<span style="color: #000066;">:</span> <span style="color: #000066; font-weight: bold;">Cardinal</span><span style="color: #000066;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">begin</span>
&nbsp;
    TP<span style="color: #000066;">.</span><span style="color: #006600;">PrivilegeCount</span> <span style="color: #000066;">:</span><span style="color: #000066;">=</span> <span style="color: #0000ff;">1</span><span style="color: #000066;">;</span>
    LookupPrivilegeValue<span style="color: #000066;">&#40;</span><span style="color: #000000; font-weight: bold;">nil</span><span style="color: #000066;">,</span> <span style="color: #000066; font-weight: bold;">pchar</span><span style="color: #000066;">&#40;</span>PrivName<span style="color: #000066;">&#41;</span><span style="color: #000066;">,</span> TP<span style="color: #000066;">.</span><span style="color: #006600;">Privileges</span><span style="color: #000066;">&#91;</span><span style="color: #0000ff;">0</span><span style="color: #000066;">&#93;</span><span style="color: #000066;">.</span><span style="color: #006600;">Luid</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
    <span style="color: #000000; font-weight: bold;">if</span> bEnable <span style="color: #000000; font-weight: bold;">then</span>
      TP<span style="color: #000066;">.</span><span style="color: #006600;">Privileges</span><span style="color: #000066;">&#91;</span><span style="color: #0000ff;">0</span><span style="color: #000066;">&#93;</span><span style="color: #000066;">.</span><span style="color: #006600;">Attributes</span> <span style="color: #000066;">:</span><span style="color: #000066;">=</span> SE_PRIVILEGE_ENABLED
    <span style="color: #000000; font-weight: bold;">else</span>
    TP<span style="color: #000066;">.</span><span style="color: #006600;">Privileges</span><span style="color: #000066;">&#91;</span><span style="color: #0000ff;">0</span><span style="color: #000066;">&#93;</span><span style="color: #000066;">.</span><span style="color: #006600;">Attributes</span> <span style="color: #000066;">:</span><span style="color: #000066;">=</span> <span style="color: #0000ff;">0</span><span style="color: #000066;">;</span>
    <span style="color: #808080; font-style: italic;">//end if else</span>
    AdjustTokenPrivileges<span style="color: #000066;">&#40;</span>hToken<span style="color: #000066;">,</span> <span style="color: #000000; font-weight: bold;">False</span><span style="color: #000066;">,</span> TP<span style="color: #000066;">,</span> <span style="color: #000066;">SizeOf</span><span style="color: #000066;">&#40;</span>TP<span style="color: #000066;">&#41;</span><span style="color: #000066;">,</span> <span style="color: #000000; font-weight: bold;">nil</span><span style="color: #000066;">,</span> Dummy<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
    Result <span style="color: #000066;">:</span><span style="color: #000066;">=</span> <span style="color: #000066;">GetLastError</span> <span style="color: #000066;">=</span> ERROR_SUCCESS<span style="color: #000066;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">end</span><span style="color: #000066;">;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">//下面是调用方法</span>
&nbsp;
    <span style="color: #808080; font-style: italic;">//---------------------------需要将进程提升为Debug权限,才能杀掉服务进程</span>
    OpenProcessToken<span style="color: #000066;">&#40;</span>GetCurrentProcess<span style="color: #000066;">,</span> TOKEN_ADJUST_PRIVILEGES<span style="color: #000066;">,</span> hToken<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
    EnablePrivilege<span style="color: #000066;">&#40;</span>hToken<span style="color: #000066;">,</span> <span style="color: #ff0000;">'SeDebugPrivilege'</span><span style="color: #000066;">,</span> <span style="color: #000000; font-weight: bold;">True</span><span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
    CloseHandle<span style="color: #000066;">&#40;</span>hToken<span style="color: #000066;">&#41;</span><span style="color: #000066;">;</span>
    <span style="color: #808080; font-style: italic;">//----------------------------</span></pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://www.cbrother.com/html/2322.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>电驴资源搜索</title>
		<link>http://www.cbrother.com/html/2320.html</link>
		<comments>http://www.cbrother.com/html/2320.html#comments</comments>
		<pubDate>Fri, 13 Jan 2012 06:13:10 +0000</pubDate>
		<dc:creator>代码哥哥</dc:creator>
				<category><![CDATA[大杂烩]]></category>

		<guid isPermaLink="false">http://www.cbrother.com/?p=2320</guid>
		<description><![CDATA[以下为电驴资源站或者电驴资源搜索站，按推荐度排名。
1、http://www.simplecd.org/
新兴站点，号称山寨版的Verycd，注册就可发资源帖，下载资源无铜光盘限制！曾经据说由于某种缘故，Simplecd在国内暂时无法访问，网站很久不更新了！不过现在又能访问了，好消息！
2. http://www.qvocd.com/
一个新兴站点 QvoCD电驴，口号是“分享如此简单”，如果你厌倦了Verycd的审核和商业铜臭，以及对资源发布者辛苦劳动的不尊重，试试这个网站。
3、http://www.ied2k.com/
原来VC的大佬吕大建的！纯洁的ed2k资源网。据说某臭名昭著的“假电驴”公司告密的缘故，ied2k已经无法访问，可以使用1-Click Web Proxy辅助工具进行访问的，网站很久不更新了，管理员失踪！向ied2k致敬！
4、http://www.thshare.net/
Emule电骡影视音乐资源分享站点，非综合电驴资源站，主要内容是影音资源方面的，也是非商业网站！需要注册登陆才能看资源。
5、http://www.eastgame.net
TLF论坛Eastgame.net。这个论坛很有名，其中的“Edonkey电驴下载专区”很不错，亚洲资源论坛的元老！
6、http://www.chnp2p.com/
“中国驴”，这个地球人都知道。中国最早的电驴资源站，据说因某种原因，服务器曾被关闭，于是已经不再开放注册。放在这里作为致敬！
7、http://www.hatrix.org/
这个站点据可靠情报是Verycd建立的电驴资源搜索站，表面是英文，其实是通过阉割驴后门收集的所有Verycd电驴，Easymule阉割驴的用户资源，所以以中国用户共享的电驴资源为主。由于建立在海外所以什么资源都有，也可以看出Verycd通过“阉割驴”Easymule搜集用户隐私的能力多 大，这也是很多电驴爱好者斥责Verycd侵犯用户隐私的原因之一，不过对我们这些不使用Verycd“阉割驴”的用户来说，是个好地方，哈哈哈。
8、http://www.emule-ed2k.com/
新的电驴资源搜索站。
9、http://mirror.simplecd.org/
Simplecd镜像站点。
10、http://www.ied2k.rproxy.org/
ied2k镜像站点。
11、http://www.tlfcd.com/
顾名思义，和TLF有关。
12、http://www.beroko.com
菠萝客，很多ed2k资源。
13、http://www.ed2000.com
ED2000 资源分享。
14、http://www.zhaide.com/
摘的 – 分享互联网，模仿Verycd的网站，也有很多资源。
15、http://www.emule.com.cn/
中国.电骡，臭名昭著的Vagga。
]]></description>
			<content:encoded><![CDATA[<p>以下为电驴资源站或者电驴资源搜索站，按推荐度排名。</p>
<p>1、http://www.simplecd.org/</p>
<p>新兴站点，号称山寨版的Verycd，注册就可发资源帖，下载资源无铜光盘限制！曾经据说由于某种缘故，Simplecd在国内暂时无法访问，网站很久不更新了！不过现在又能访问了，好消息！</p>
<p>2. http://www.qvocd.com/</p>
<p>一个新兴站点 QvoCD电驴，口号是“分享如此简单”，如果你厌倦了Verycd的审核和商业铜臭，以及对资源发布者辛苦劳动的不尊重，试试这个网站。</p>
<p>3、http://www.ied2k.com/</p>
<p>原来VC的大佬吕大建的！纯洁的ed2k资源网。据说某臭名昭著的“假电驴”公司告密的缘故，ied2k已经无法访问，可以使用1-Click Web Proxy辅助工具进行访问的，网站很久不更新了，管理员失踪！向ied2k致敬！</p>
<p>4、http://www.thshare.net/</p>
<p>Emule电骡影视音乐资源分享站点，非综合电驴资源站，主要内容是影音资源方面的，也是非商业网站！需要注册登陆才能看资源。</p>
<p>5、http://www.eastgame.net</p>
<p>TLF论坛Eastgame.net。这个论坛很有名，其中的“Edonkey电驴下载专区”很不错，亚洲资源论坛的元老！</p>
<p>6、http://www.chnp2p.com/</p>
<p>“中国驴”，这个地球人都知道。中国最早的电驴资源站，据说因某种原因，服务器曾被关闭，于是已经不再开放注册。放在这里作为致敬！</p>
<p>7、http://www.hatrix.org/</p>
<p>这个站点据可靠情报是Verycd建立的电驴资源搜索站，表面是英文，其实是通过阉割驴后门收集的所有Verycd电驴，Easymule阉割驴的用户资源，所以以中国用户共享的电驴资源为主。由于建立在海外所以什么资源都有，也可以看出Verycd通过“阉割驴”Easymule搜集用户隐私的能力多 大，这也是很多电驴爱好者斥责Verycd侵犯用户隐私的原因之一，不过对我们这些不使用Verycd“阉割驴”的用户来说，是个好地方，哈哈哈。</p>
<p>8、http://www.emule-ed2k.com/</p>
<p>新的电驴资源搜索站。</p>
<p>9、http://mirror.simplecd.org/</p>
<p>Simplecd镜像站点。</p>
<p>10、http://www.ied2k.rproxy.org/</p>
<p>ied2k镜像站点。</p>
<p>11、http://www.tlfcd.com/</p>
<p>顾名思义，和TLF有关。</p>
<p>12、http://www.beroko.com</p>
<p>菠萝客，很多ed2k资源。</p>
<p>13、http://www.ed2000.com</p>
<p>ED2000 资源分享。</p>
<p>14、http://www.zhaide.com/</p>
<p>摘的 – 分享互联网，模仿Verycd的网站，也有很多资源。</p>
<p>15、http://www.emule.com.cn/</p>
<p>中国.电骡，臭名昭著的Vagga。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cbrother.com/html/2320.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress 验证码 防垃圾留言插件</title>
		<link>http://www.cbrother.com/html/2312.html</link>
		<comments>http://www.cbrother.com/html/2312.html#comments</comments>
		<pubDate>Thu, 05 Jan 2012 11:14:27 +0000</pubDate>
		<dc:creator>代码哥哥</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[WordPress 防垃圾留言]]></category>
		<category><![CDATA[WordPress 验证码]]></category>

		<guid isPermaLink="false">http://www.cbrother.com/?p=2312</guid>
		<description><![CDATA[WordPress 验证码 防垃圾留言插件,在网上找了很久,终于找到个有中国特色的验证码插件,但是这个插件有问题,虽然前台能验证,但是在后台审核的时候它也去验证了,而且后台根本不显示验证码,让你无法操作,于是决心重新修改一个,请下载附件中文件,上传到wp-content/plugins目录 然后启用即可
点击下载 wp-validcode1.1
]]></description>
			<content:encoded><![CDATA[<p>WordPress 验证码 防垃圾留言插件,在网上找了很久,终于找到个有中国特色的验证码插件,但是这个插件有问题,虽然前台能验证,但是在后台审核的时候它也去验证了,而且后台根本不显示验证码,让你无法操作,于是决心重新修改一个,请下载附件中文件,上传到wp-content/plugins目录 然后启用即可</p>
<h2>点击下载 <a href="http://www.cbrother.com/wp-content/uploads/2012/01/wp-validcode1.1.zip">wp-validcode1.1</a><a href="http://www.cbrother.com/wp-content/uploads/2012/01/wp-validcode.zip"></a></h2>
]]></content:encoded>
			<wfw:commentRss>http://www.cbrother.com/html/2312.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>批量删WordPress未审核评论 垃圾评论的SQL语句</title>
		<link>http://www.cbrother.com/html/2310.html</link>
		<comments>http://www.cbrother.com/html/2310.html#comments</comments>
		<pubDate>Thu, 05 Jan 2012 11:07:36 +0000</pubDate>
		<dc:creator>代码哥哥</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[批量删WordPress垃圾评论]]></category>
		<category><![CDATA[批量删WordPress未审核评论 SQL]]></category>
		<category><![CDATA[批量删除WordPress未审核评论]]></category>

		<guid isPermaLink="false">http://www.cbrother.com/?p=2310</guid>
		<description><![CDATA[请看如下语句,转载注明出处
删除未审核评论的语句：DELETE FROM  wp_comments WHERE  comment_approved =  0;
删除垃圾评论：DELETE FROM  wp_comments WHERE  comment_approved = 'spam';
下面这个不要随便用哦,用于就删除已经审核了的了
删除审核通过的评论：DELETE FROM  wp_comments WHERE  comment_approved = 1;
]]></description>
			<content:encoded><![CDATA[<p>请看如下语句,转载注明出处</p>
<p>删除未审核评论的语句：DELETE FROM  wp_comments WHERE  comment_approved =  0;</p>
<p>删除垃圾评论：DELETE FROM  wp_comments WHERE  comment_approved = 'spam';</p>
<p>下面这个不要随便用哦,用于就删除已经审核了的了</p>
<p>删除审核通过的评论：DELETE FROM  wp_comments WHERE  comment_approved = 1;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cbrother.com/html/2310.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>解决windows 7下IE8启动慢的问题和win7 sp1 右键弹出缓慢的问题</title>
		<link>http://www.cbrother.com/html/2308.html</link>
		<comments>http://www.cbrother.com/html/2308.html#comments</comments>
		<pubDate>Thu, 05 Jan 2012 10:31:23 +0000</pubDate>
		<dc:creator>代码哥哥</dc:creator>
				<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.cbrother.com/?p=2308</guid>
		<description><![CDATA[有朋友遇到这个问题。打开IE8浏览器要几十秒中才能打开。
　　其实解决的方法很简单：
　　　　首先，打开浏览器，在“工具(T) -&#62; Internet选项(O)”，找到“连接”选项卡，点击“局域网设置(L)”，去掉“自动检测设置”的选项勾选。点击确定按钮。
　　然后关闭IE再重新打开，试试启动的速度变快了？
这个办法适用于任何版本的IE浏览器.
经过本人测试有效!!!!!!!!!!!!!!!!
 ——不知道是哪位朋友了，总之谢谢了！
关于win7 sp1 右键弹出缓慢的问题
所谓的优化软件折腾死人，没有个管用的，排除是病毒左右的，经测试：
解决鼠标右键菜单弹出极慢的问题
在文件夹或程序图标上点右键，弹出菜单特别慢。
原因和解决方法：
一、显卡引起
安装某些显卡驱动后，在桌面右键菜单多了三项。
解决：
1.开始--运行:regsvr32 /u igfxpph.dll  去掉Intel集成显卡的桌面右键菜单
2.开始--运行:regedit---&#62;删除hkey_classes_root\directory\background\shellex\contextmenuhandlers\igfxcui          ---删除其中的igfxcui键 
3.重启电脑
二、微软补丁KB908531引起，只要在桌面上点右键就会出现这个进程verclsid.exe，此时系统假死
解决：卸载此补丁
如果不能卸载的话，使用sreng2\pendmove等删除工具删除system32\verclsid.exe文件，然后清空system32/dllhost文件夹
xp的解决：右键点击桌面时菜单显示迟缓的问题去掉Intel集成显卡的桌面右键菜单: 运行里输入：regsvr32 /u igfxpph.dll
恢复使用运行里输入：regsvr32 igfxpph.dll
微软公司证实：在WINDOWS XP的资源管理器里，选中文件单击右键会占用大量的内存，显示弹出菜单时的CPU占用率为100%。这一缺陷存在于所有的Windows XP版本中，包括修复BUG的SP1,和SP1a版中。
Intel集成显卡的桌面右键菜单包含：“另存为图式...”、“图形选项”、“显示模式”。三项，这样会拖慢右键菜单的反映速度，所以你有两条路可以解决这个问题：
1.点击：开始--运行 输入：regsvr32 /u igfxpph.dll
恢复使用
regsvr32 igfxpph.dll
2.修改注册表：
HKEY_CLASSES_ROOT\Directory\Background\shellex\
ContextMenuHandlers 删除其中的igfxcui键
重新启动即可删除那三个键！
]]></description>
			<content:encoded><![CDATA[<p>有朋友遇到这个问题。打开IE8浏览器要几十秒中才能打开。<br />
　　其实解决的方法很简单：<br />
　　　　首先，打开浏览器，在“工具(T) -&gt; Internet选项(O)”，找到“连接”选项卡，点击“局域网设置(L)”，去掉“自动检测设置”的选项勾选。点击确定按钮。<br />
　　然后关闭IE再重新打开，试试启动的速度变快了？<br />
这个办法适用于任何版本的IE浏览器.<br />
经过本人测试有效!!!!!!!!!!!!!!!!</p>
<p> ——不知道是哪位朋友了，总之谢谢了！</p>
<p><strong>关于win7 sp1 右键弹出缓慢的问题</p>
<p></strong>所谓的优化软件折腾死人，没有个管用的，排除是病毒左右的，经测试：</p>
<p>解决鼠标右键菜单弹出极慢的问题</p>
<p>在文件夹或程序图标上点右键，弹出菜单特别慢。</p>
<p>原因和解决方法：</p>
<p>一、显卡引起</p>
<p>安装某些显卡驱动后，在桌面右键菜单多了三项。</p>
<p>解决：</p>
<p>1.开始--运行:regsvr32 /u igfxpph.dll  去掉Intel集成显卡的桌面右键菜单</p>
<p>2.开始--运行:regedit---&gt;删除hkey_classes_root\directory\background\shellex\contextmenuhandlers\igfxcui          ---删除其中的igfxcui键 </p>
<p>3.重启电脑</p>
<p>二、微软补丁KB908531引起，只要在桌面上点右键就会出现这个进程verclsid.exe，此时系统假死</p>
<p>解决：卸载此补丁</p>
<p>如果不能卸载的话，使用sreng2\pendmove等删除工具删除system32\verclsid.exe文件，然后清空system32/dllhost文件夹</p>
<p><strong>xp的解决</strong>：右键点击桌面时菜单显示迟缓的问题去掉Intel集成显卡的桌面右键菜单: 运行里输入：regsvr32 /u igfxpph.dll</p>
<p>恢复使用运行里输入：regsvr32 igfxpph.dll</p>
<p>微软公司证实：在WINDOWS XP的资源管理器里，选中文件单击右键会占用大量的内存，显示弹出菜单时的CPU占用率为100%。这一缺陷存在于所有的Windows XP版本中，包括修复BUG的SP1,和SP1a版中。</p>
<p>Intel集成显卡的桌面右键菜单包含：“另存为图式...”、“图形选项”、“显示模式”。三项，这样会拖慢右键菜单的反映速度，所以你有两条路可以解决这个问题：</p>
<p>1.点击：开始--运行 输入：regsvr32 /u igfxpph.dll</p>
<p>恢复使用</p>
<p>regsvr32 igfxpph.dll</p>
<p>2.修改注册表：</p>
<p>HKEY_CLASSES_ROOT\Directory\Background\shellex\</p>
<p>ContextMenuHandlers 删除其中的igfxcui键</p>
<p>重新启动即可删除那三个键！</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cbrother.com/html/2308.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>按键精灵出现乱码的解决办法</title>
		<link>http://www.cbrother.com/html/2305.html</link>
		<comments>http://www.cbrother.com/html/2305.html#comments</comments>
		<pubDate>Wed, 28 Dec 2011 18:37:37 +0000</pubDate>
		<dc:creator>代码哥哥</dc:creator>
				<category><![CDATA[大杂烩]]></category>

		<guid isPermaLink="false">http://www.cbrother.com/?p=2305</guid>
		<description><![CDATA[很多人都提到按键精灵会输出乱码，经过我们长期的跟踪，发现这不是按键精灵的原因，而是自己电脑设置的问题电脑输入法设置错误，是出现乱码的罪魁祸首。  如果出现乱码问题，请看一下“控制面板”-&#62;“区域和语言选择”-&#62;“语言”-&#62;“详细信息”（文字服务和输入语言）
将预设输入语言更改为“中文（中国）简体中文-美式键盘”，就可以了
]]></description>
			<content:encoded><![CDATA[<p>很多人都提到按键精灵会输出乱码，经过我们长期的跟踪，发现这不是按键精灵的原因，而是自己电脑设置的问题电脑输入法设置错误，是出现乱码的罪魁祸首。<span>  </span>如果出现乱码问题，请看一下“控制面板”-&gt;“区域和语言选择”-&gt;“语言”-&gt;“详细信息”（文字服务和输入语言）<br />
将预设输入语言更改为“中文（中国）简体中文-美式键盘”，就可以了</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cbrother.com/html/2305.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>解决DEDECMS 后台空白的方法</title>
		<link>http://www.cbrother.com/html/2302.html</link>
		<comments>http://www.cbrother.com/html/2302.html#comments</comments>
		<pubDate>Tue, 29 Nov 2011 03:04:04 +0000</pubDate>
		<dc:creator>代码哥哥</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.cbrother.com/?p=2302</guid>
		<description><![CDATA[DedeCMS 5.3/5.5/5.6等版本的UTF版本会经常遇到一个问题，就是后台登录会什么都不显示，空白一片，这是什么原因呢？
一般这个问题都是由于使用了“记事本”而没有使用专业的文本编辑软件来编辑DedeCMS的文件造成的，一般是由于修改了以下几个文件：
include/common.inc.php
data/common.inc.php
dede/config.php
如果你使用了“记事本”之类的软件修改这些文件，修改后都会在文件中加上BOM，造成程序不能正常运行。
解决办法简单，下一个emeditor之类的编辑器打开重新保存，去掉BOM即可
]]></description>
			<content:encoded><![CDATA[<p>DedeCMS 5.3/<strong>5.5</strong>/5.6等版本的UTF版本会经常遇到一个问题，就是<strong>后台</strong>登录会什么都不显示，<strong>空白</strong>一片，这是什么原因呢？</p>
<p>一般这个问题都是由于使用了“记事本”而没有使用专业的文本编辑软件来编辑DedeCMS的文件造成的，一般是由于修改了以下几个文件：</p>
<p>include/common.inc.php<br />
data/common.inc.php<br />
<strong>dede</strong>/config.php</p>
<p>如果你使用了“记事本”之类的软件修改这些文件，修改后都会在文件中加上BOM，造成程序不能正常运行。</p>
<p>解决办法简单，下一个emeditor之类的编辑器打开重新保存，去掉BOM即可</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cbrother.com/html/2302.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ubuntu中安装vpn服务器</title>
		<link>http://www.cbrother.com/html/2296.html</link>
		<comments>http://www.cbrother.com/html/2296.html#comments</comments>
		<pubDate>Tue, 22 Nov 2011 17:15:35 +0000</pubDate>
		<dc:creator>代码哥哥</dc:creator>
				<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.cbrother.com/?p=2296</guid>
		<description><![CDATA[Linux下的VPN服务器软件主要是pptpd和openvpn,pptpd架设好后在windows下建个VPN连接就可以fan墙了，比较简单，这里说下ubuntu下安装配置pptpd。首先安装pptpd这个VPN服务器软件，ssh连接登录后用下面这个命令：
sudo apt-get install pptpd
安装好了在webmin的网络这一栏里就可以看到pptp vpn server这项了。
安装完了需要对相关文件进行配置修改，用webmin上的文件管理或ssh端用vi命令修改都行。
第一步：
方法一：ssh连接修改/etc/pptpd.conf这个文件
vi /etc/pptpd.conf
找到#localip 192.168.0.1和#remoteip  192.168.0.234-238,192.168.0.245这两行，把前面的#号去掉，然后保存就行了。
这里，localip 是 VPN 链接成功后服务器的 ip 地址， remoteip 则客户端的可分配 ip 地址范围。下面是我的配置：
# (Recommended)
localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245
# or
#localip 192.168.0.234-238,192.168.0.245
#localip 192.168.0.234-238,192.168.0.245
#remoteip 192.168.1.234-238,192.168.1.245
方法二：用webmin的pptpd服务器项修改，点击webmin网络&#62;PPTP VPN Server&#62;PPTP Server  Options,加上localip和romoteip就行了，如下图







第二步：
然后再要编辑/etc/ppp/pptpd-options这个文件,为vpn指定DNS服务器,  你可以找到你服务器用的DNS服务器地址，或者直接使用Google Public DNS：
vi /etc/ppp/pptpd-options
找到ms-dns这项，去掉前面的#号，修改成google提供的DNS，很好记哈
ms-dns 8.8.8.8
ms-dns 8.8.4.4
修改好后保存。
第三步：
接下来建立vpn账号和密码了，可以直接在webmin的pptp vpn server选项里修改，修改文件也行。
方法一：点击webmin里的网络&#62;PPTP VPN Server&#62;PPP Accounts&#62;Create new PPP  account，就可以创建新的账号和密码了。
webmin创建VPN账号

方法二：修改/etc/ppp/chap-secrets文件，按一行四列添加账号、服务器名、密码和IP限制。即第一列是用户名，第二列是服务器名（默认写pptpd  即可，注意与 pptpd-options 文件保持一致），第三列是密码，第四列是 IP 限制（不做限制用 *  [...]]]></description>
			<content:encoded><![CDATA[<p>Linux下的VPN服务器软件主要是pptpd和openvpn,pptpd架设好后在windows下建个VPN连接就可以fan墙了，比较简单，这里说下ubuntu下安装配置pptpd。首先安装pptpd这个VPN服务器软件，ssh连接登录后用下面这个命令：</p>
<p>sudo apt-get install pptpd</p>
<p>安装好了在webmin的网络这一栏里就可以看到pptp vpn server这项了。</p>
<p>安装完了需要对相关文件进行配置修改，用webmin上的文件管理或ssh端用vi命令修改都行。</p>
<p><strong>第一步：</strong></p>
<p>方法一：ssh连接修改/etc/pptpd.conf这个文件</p>
<p>vi /etc/pptpd.conf</p>
<p>找到#localip 192.168.0.1和#remoteip  192.168.0.234-238,192.168.0.245这两行，把前面的#号去掉，然后保存就行了。</p>
<p>这里，localip 是 VPN 链接成功后服务器的 ip 地址， remoteip 则客户端的可分配 ip 地址范围。下面是我的配置：</p>
<p># (Recommended)</p>
<p>localip 192.168.0.1</p>
<p>remoteip 192.168.0.234-238,192.168.0.245</p>
<p># or</p>
<p>#localip 192.168.0.234-238,192.168.0.245</p>
<p>#localip 192.168.0.234-238,192.168.0.245</p>
<p>#remoteip 192.168.1.234-238,192.168.1.245</p>
<p>方法二：用webmin的pptpd服务器项修改，点击webmin网络&gt;PPTP VPN Server&gt;PPTP Server  Options,加上localip和romoteip就行了，如下图</p>
<div>
<dl id="attachment_59">
<dt><a href="http://www.wincold.com/wp-content/uploads/2010/03/pptpd-conf.png" target="_blank"><img title="pptpd-conf" src="http://www.wincold.com/wp-content/uploads/2010/03/pptpd-conf-1024x391.png" alt="webmin配置pptpd" width="480" height="183" /></a></dt>
<dd>
</dd>
</dl>
</div>
<p><strong>第二步：</strong></p>
<p>然后再要编辑/etc/ppp/pptpd-options这个文件,为vpn指定DNS服务器,  你可以找到你服务器用的DNS服务器地址，或者直接使用Google Public DNS：</p>
<p>vi /etc/ppp/pptpd-options</p>
<p>找到ms-dns这项，去掉前面的#号，修改成google提供的DNS，很好记哈</p>
<p>ms-dns 8.8.8.8</p>
<p>ms-dns 8.8.4.4</p>
<p>修改好后保存。</p>
<p><strong>第三步：</strong></p>
<p>接下来建立vpn账号和密码了，可以直接在webmin的pptp vpn server选项里修改，修改文件也行。</p>
<p>方法一：点击webmin里的网络&gt;PPTP VPN Server&gt;PPP Accounts&gt;Create new PPP  account，就可以创建新的账号和密码了。</p>
<div id="attachment_60"><a href="http://www.wincold.com/wp-content/uploads/2010/03/webmin-ppp-account.png" target="_blank"><img title="webmin-ppp-account" src="http://www.wincold.com/wp-content/uploads/2010/03/webmin-ppp-account.png" alt="webmin创建VPN账号" width="468" height="193" /></a>webmin创建VPN账号</p>
</div>
<p>方法二：修改/etc/ppp/chap-secrets文件，按一行四列添加账号、服务器名、密码和IP限制。即第一列是用户名，第二列是服务器名（默认写pptpd  即可，注意与 pptpd-options 文件保持一致），第三列是密码，第四列是 IP 限制（不做限制用 *  ）。如创建一个名为test，密码为123，不限制登录IP的VPN账号：</p>
<p>test pptpd 123 *</p>
<p>修改好后保存行了。</p>
<p>最后重启pptpd服务，就可以生效了。</p>
<p>到了这一步，正常的话在XP里建立个VPN连接应该可以连接上了，但还不能访问外网，还需要另外的配置。但是如果连接不上VPN服务器的话，那就是碰上传说中的人品问题了，我就碰到过，明明所有步骤都做了，但是就是不能连接上，然后就胡乱折腾，看运气什么时候能折腾好了。</p>
<p><strong>继续下一步，第四步：</strong></p>
<p>修改/etc/sysctl.conf 这个文件，把ipv4  forward开启，方法是找到/etc/sysctl.conf这个文件里的这一行#net.ipv4.ip_forward=1后，去掉net.ipv4.ip_forward=1前面的#号，使他生效，然后保存，运行命令sysctl  –p.</p>
<p>root@s:~# sysctl -p</p>
<p>运行命令后会显示这样的一行，那就表示修改生效了。</p>
<p>net.ipv4.ip_forward = 1</p>
<p>这样，vpn 服务器就算是搭建成功了。</p>
<p>重启pptpd后如果还不能访问外网，那么就要再来一步。</p>
<p><strong>第五步：</strong></p>
<p>使用iptables建立一个NAT, 用下面的命令：</p>
<p>apt-get install iptables （如果已经安装iptables，这一步就不用了）</p>
<p>iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE</p>
<p>上面的24表示子网掩码，代表24个1.</p>
<p>OK，到了这一步就应该可以用VPN了哈。如果不能，我也不知是哪里出问题了。</p>
<p>如果要防止重启服务器后iptables丢失，先运行</p>
<p>iptables-save &gt; /etc/iptables-rules</p>
<p>然后修改/etc/network/interfaces 文件，在eth0 下面加入</p>
<p>pre-up iptables-restore &lt; /etc/iptables-rules</p>
<p>这样，服务器重启后，就能自动挂载规则了。</p>
<p>好了，有了VPN，墙再高也不怕了哈</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cbrother.com/html/2296.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

