??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲乱妇熟女爽到高潮的片,亚洲嫩草影院在线观看,亚洲AV无码一区二区乱孑伦AShttp://www.tkk7.com/savage100/category/12709.htmlzh-cnTue, 27 Feb 2007 12:08:19 GMTTue, 27 Feb 2007 12:08:19 GMT60AJAX开发简?(l典)http://www.tkk7.com/savage100/articles/71340.html谢玮谢玮Fri, 22 Sep 2006 08:09:00 GMThttp://www.tkk7.com/savage100/articles/71340.htmlhttp://www.tkk7.com/savage100/comments/71340.htmlhttp://www.tkk7.com/savage100/articles/71340.html#Feedback0http://www.tkk7.com/savage100/comments/commentRss/71340.htmlhttp://www.tkk7.com/savage100/services/trackbacks/71340.htmlhttp://dev2dev.bea.com.cn/bbsdoc/20051114125.html
另外一个 ?a href="/emu/archive/2006/09/21/62318.html#70988">http://www.tkk7.com/emu/archive/2006/09/21/62318.html#70988

谢玮 2006-09-22 16:09 发表评论
]]>
JSPackeger, 脚本库管?/title><link>http://www.tkk7.com/savage100/articles/69401.html</link><dc:creator>谢玮</dc:creator><author>谢玮</author><pubDate>Wed, 13 Sep 2006 08:41:00 GMT</pubDate><guid>http://www.tkk7.com/savage100/articles/69401.html</guid><wfw:comment>http://www.tkk7.com/savage100/comments/69401.html</wfw:comment><comments>http://www.tkk7.com/savage100/articles/69401.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/savage100/comments/commentRss/69401.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/savage100/services/trackbacks/69401.html</trackback:ping><description><![CDATA[ <p> <font face="宋体">官方地址<a ><br />http://jspackager.sourceforge.net/doc/userguide/</a></font> </p> <img src ="http://www.tkk7.com/savage100/aggbug/69401.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/savage100/" target="_blank">谢玮</a> 2006-09-13 16:41 <a href="http://www.tkk7.com/savage100/articles/69401.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Ajax in Action 阅读W记http://www.tkk7.com/savage100/articles/66444.html谢玮谢玮Tue, 29 Aug 2006 07:09:00 GMThttp://www.tkk7.com/savage100/articles/66444.htmlhttp://www.tkk7.com/savage100/comments/66444.htmlhttp://www.tkk7.com/savage100/articles/66444.html#Feedback0http://www.tkk7.com/savage100/comments/commentRss/66444.htmlhttp://www.tkk7.com/savage100/services/trackbacks/66444.html

谢玮 2006-08-29 15:09 发表评论
]]>
JSON 入门与JavaScript提高(原创)http://www.tkk7.com/savage100/articles/60754.html谢玮谢玮Sat, 29 Jul 2006 07:13:00 GMThttp://www.tkk7.com/savage100/articles/60754.htmlhttp://www.tkk7.com/savage100/comments/60754.htmlhttp://www.tkk7.com/savage100/articles/60754.html#Feedback0http://www.tkk7.com/savage100/comments/commentRss/60754.htmlhttp://www.tkk7.com/savage100/services/trackbacks/60754.html出处 http://www.sergiopereira.com/articles/advjs.html


什么是JSONQ?JavaScript Object Notation -------javascript对象W号,一个Ajax中砰然出现的新话?其实它就是javascript中申明对象的Ҏ。让我们来看一个示?br />
var myPet = 
   color: 'black', 
   leg_count: 
4
   communicate: 
function(repeatCount)
for(i=0;i<repeatCount;i++) alert('Woof!');}
 
}
;

q里我们创Z一个对象引用,q个对象包含?个属?color,leg_count)和一个方?communicate),
在myPet对象的列表中不难看出Q这些属性和Ҏ之间都是用逗号","分隔开来的。属性很好理解,而方法的创徏则是׃个匿名function标记的?br />
在该对象被创Z后ƈ且以myPet变量声明了以后我们就可以q样使用了:
alert('my pet is ' + myPet.color);
alert('my pet has ' 
+ myPet.legCount + ' legs');
//if you are a dog, bark three times:
myPet.communicate(3);

大家可以看到QJSON可以漂亮地应用到javascript中Q何一个地方,作ؓfunction参数、返回倹{服务器响应...

你理解了吗?function同样也是一个对象?br />---------------------------------------------------------------
或许JSE序员中有些Z来就不这么认为,但是function实也是一个Object。下面我们可以做个实验来验证一下,你的functionl你的另一个function做ؓ参数传递,׃一个String一栗?br />
var myDog = {
    bark: 
function(){
        alert('Woof
!');
    }

}
;

var myCat = {
    meow: 
function(){
        alert('I am a lazy cat. I will not meow 
for you.');
    }

}
;
 
function annoyThePet(petFunction){
    
//let's see what the pet can do
    petFunction();
}


//annoy the dog:
annoyThePet(myDog.bark);
//annoy the cat:
annoyThePet(myCat.meow);

在这里我们传递了myDog.bark和myCat.meowlannoyThePet。注意它们后面都没有带括?font color="#ff0000">"()"
Q如果不q样做的话我们传递的不?Ҏ",而是该方法的q回|在此例中?font color="#ff0000">"Undefine"Q?br />
如果你想我的懒猫学狗狗叫Q你可以q样做:
myCat.meow = myDog.bark;
myCat.meow(); 
//alerts 'Woof!'

 
Arrays, items 和对象成员object members
L下面2?br />

var a = new Array();
var b = [];

 

你可以在array中添加items:

var a = ['first', 'second', 'third'];
var v1 = a[0];
var v2 = a[1];
var v3 = a[2];

但是你在声明时对索引不做数量限制Q你可以通过它的名字讉Kq个JS对象中的M成员,pq样Q创Z个空的对象,然后可以不停地d了:

var obj = {}//new, empty object
obj['member_1'] = 'this is the member value';
obj['flag_2'] 
= false;
obj['some_function'] 
= function()/* do something */};
            
{h?

var obj = {
    member_1:'
this is the member value',
    flag_2: 
false,
    some_function: 
function()/* do something */}
}
;

在JS中,对象和关pd数组QhashesQ两个概念通常是没有区别,下面的这两行代码是等LQ?br />


obj.some_function();
obj['some_function']();


{了q么久,我可以拥有自qClass了么Q?br />OO的强大力量来自于cClass。当然了我们的JavaScript同样也可以做到这一点,L?

//defining a new class called Pet
var Pet = function(petName, age){
    
this.name = petName;
    
this.age = age;
}
;

//let's create an object of the Pet class
var famousDog = new Pet('Santa\'s Little Helper', 15);
alert('This pet is called ' 
+ famousDog.name);

但是我们如何能够方法加到我们的Pet  Class中来呢。我们可以ؓ我们所有的cd义一个prototype属性。prototype属性其实也是一个对象,它包含一个类所拥有的一切其他对象。甚至默认JSc(Date,String,NumberQ也可以拥有prototype对象Q得各U新的方法和属性能扩充其中Q让基础c获得更多的Ҏ?br />
Pet.prototype.communicate = function()
    alert('I 
do not know what I should say, but my name is ' + this.name);
}
;
别忘了,我们得先导入 prototype.js才行?br />ps: 个h认ؓ象下面创建类Q可能更z一炏V?br />
var Pet = Class.create();
Pet.prototype 
= {
    
//our 'constructor'
    initialize: function(petName, age){
        
this.name = petName;
        
this.age = age;
    }
,
    
    communicate: 
function(){
        alert('I 
do not know what I should say, but my name is ' + this.name);
    }

}
;    

方法做为参?br />如果你没有用过支持closure的语aQ象Ruby,C#Q你会发现象q样的语法真是太有趣?
var myArray = ['first', 'second', 'third'];
myArray.each( 
function(item, index){
    alert('The item 
in the position #' + index + ' is:' + item);
}
);

未完带箋.........


谢玮 2006-07-29 15:13 发表评论
]]>
了解Prototypehttp://www.tkk7.com/savage100/articles/60697.html谢玮谢玮Sat, 29 Jul 2006 02:46:00 GMThttp://www.tkk7.com/savage100/articles/60697.htmlhttp://www.tkk7.com/savage100/comments/60697.htmlhttp://www.tkk7.com/savage100/articles/60697.html#Feedback0http://www.tkk7.com/savage100/comments/commentRss/60697.htmlhttp://www.tkk7.com/savage100/services/trackbacks/60697.html1、最单的例子Q了?prototypeQ?br />(1) Number.add(num)Q作用,数字相加
实现ҎQNumber.prototype.add = function(num){return(this+num);}
试验Qalert((3).add(15)) -> 昄 18


(2) Boolean.rev(): 作用Q布变量取?br />实现ҎQBoolean.prototype.rev = function(){return(!this);}
试验Qalert((true).rev()) -> 昄 false

是不是很单?q一节仅仅是告诉读者又q么一U方法,q种Ҏ是这栯用的?br />

2、已有方法的实现和增强,初识 prototypeQ?br />(1) Array.push(new_element)
  作用Q在数组末尾加入一个新的元?br />  实现ҎQ?br />  Array.prototype.push = function(new_element){
        this[this.length]=new_element;
        return this.length;
    }
  让我们进一步来增强他,让他可以一ơ增加多个元素!
  实现ҎQ?br />  Array.prototype.pushPro = function() {
        var currentLength = this.length;
        for (var i = 0; i < arguments.length; i++) {
            this[currentLength + i] = arguments[i];
        }
        return this.length;
    }
  应该不难看懂吧?以此cLQ你可以考虑一下如何通过增强 Array.pop 来实现删除Q意位|,L多个元素Q具体代码就不再l说了)

(2) String.length
  作用Q这实际上是 String cȝ一个属性,但是׃ JavaScript 全角、半角均视ؓ是一个字W,在一些实际运用中可能会造成一定的问题Q现在我们通过 prototype 来I补这部不?br />  实现ҎQ?br />  String.prototype.Tlength = function(){
        var arr=this.match(/[^\x00-\xff]/ig);
        return this.length+(arr==null?0:arr.length);
    }
  试验Qalert("aa啦啦aa".Tlength()) -> 昄 8
  q里用到了一些正则表辑ּ的方法和全角字符的编码原理,׃属于另两个比较大的类别,本文不加说明Q请参考相x料?br />

3、新功能的实玎ͼ深入 prototypeQ在实际~程中所用到的肯定不只是已有Ҏ的增强,更多的实行的功能的要求,下面我就举两个用 prototype 解决实际问题的例子:
(1) String.left()
  问题Q用q?vb 的应该都知道left函数Q从字符串左边取 n 个字W,但是不是将全角、半角均视ؓ是一个字W,造成在中英文h的版面中不能截取{长的字W串
  作用Q从字符串左Ҏ?n 个字W,q支持全角半角字W的区分
  实现ҎQ?br />  String.prototype.left = function(num,mode){
        if(!/\d+/.test(num))return(this);
        var str = this.substr(0,num);
        if(!mode) return str;
        var n = str.Tlength() - str.length;
        num = num - parseInt(n/2);
        return this.substr(0,num);
    }
  试验Qalert("aa啦啦aa".left(4)) -> 昄 aa啦啦
     alert("aa啦啦aa".left(4,true)) -> 昄 aa?br />  本方法用C上面所提到的String.Tlength()ҎQ自定义Ҏ之间也能l合Z些不错的新方法呀Q?br />
(2) Date.DayDiff()
  作用Q计出两个日期型变量的间隔旉Q年、月、日、周Q?br />  实现ҎQ?br />  Date.prototype.DayDiff = function(cDate,mode){
        try{
            cDate.getYear();
        }catch(e){
            return(0);
        }
        var base =60*60*24*1000;
        var result = Math.abs(this - cDate);
        switch(mode){
            case "y":
                result/=base*365;
                break;
            case "m":
                result/=base*365/12;
                break;
            case "w":
                result/=base*7;
                break;
            default:
                result/=base;
                break;
        }
        return(Math.floor(result));
    }
  试验Qalert((new Date()).DayDiff((new Date(2002,0,1)))) -> 昄 329
     alert((new Date()).DayDiff((new Date(2002,0,1)),"m")) -> 昄 10
  当然Q也可以q一步扩充,得出响应的小时、分钟,甚至是秒?br />
(3) Number.fact()
  作用Q某一数字的阶?br />  实现ҎQ?br />  Number.prototype.fact=function(){
        var num = Math.floor(this);
        if(num<0)return NaN;
        if(num==0 || num==1)
            return 1;
        else
            return (num*(num-1).fact());
    }
  试验Qalert((4).fact()) -> 昄 24
  q个Ҏ主要是说明了递归的方法在 prototype Ҏ中也是可行的Q?br />




扩展代码1:
<script>
/*
 This following code are designed and writen by Windy_sk <seasonx@163.net>
 You can use it freely, but u must held all the copyright items!
*/

//字W串实际长度
String.prototype.Tlength = function(){var arr=this.match(/[^\x00-\xff]/ig);return this.length+(arr==null?0:arr.length);}

//字符串左?br />String.prototype.left = function(num,mode){if(!/\d+/.test(num))return(this);var str = this.substr(0,num);if(!mode) return str;var n = str.Tlength() - str.length;num = num - parseInt(n/2);return this.substr(0,num);}

//字符串右?br />String.prototype.right = function(num,mode){if(!/\d+/.test(num))return(this);var str = this.substr(this.length-num);if(!mode) return str;var n = str.Tlength() - str.length;num = num - parseInt(n/2);return this.substr(this.length-num);}

//字符串包?br />String.prototype.GetCount = function(str,mode){return eval("this.match(/("+str+")/g"+(mode?"i":"")+").length");}

//字符串去除两端空字符
String.prototype.Trim=function(){return this.replace(/(^\s*)|(\s*$)/g,"");}
String.prototype.Ltrim = function(){return this.replace(/(^\s*)/g, "");}
String.prototype.Rtrim = function(){return this.replace(/(\s*$)/g, "");}

document.write("'aa啦啦aa'.Tlength() = " + "aa啦啦aa".Tlength());
document.write("<br>");
document.write("'aabbcc'.Tlength() = " + "aabbcc".Tlength());
document.write("<br>");
document.write("'aa啦啦aa'.left(4) = " + "aa啦啦aa".left(4));
document.write("<br>");
document.write("'aa啦啦aa'.left(4,true) = " + "aa啦啦aa".left(4,true));
document.write("<br>");
document.write("'aa啦啦aa'.right(4) = " + "aa啦啦aa".right(4));
document.write("<br>");
document.write("'aa啦啦aa'.right(4,true) = " + "aa啦啦aa".right(4,true));
document.write("<br>");
document.write("'abAcae'.GetCount('a') = " + "abAcae".GetCount("a"));
document.write("<br>");
document.write("'abAcae'.GetCount('a',true) = " + "abAcae".GetCount("a",true));
document.write("<br>");
document.write("'  abc  de    '.Ltrim() = " + "  abc  de    ".Ltrim());
document.write("<br>");
document.write("'  abc  de    '.Rtrim() = " + "  abc  de    ".Rtrim());
document.write("<br>");
document.write("'  abc  de    '.Trim() = " + "  abc  de    ".Trim());
</script>




代码2:
/*Number Object*/
if(!Number.prototype.toFixed) {
 Number.prototype.toFixed = function(n) {
  with(Math) return round(Number(this)*pow(10,n))/pow(10,n)
 }
}
/*Array Object*/
if (!Array.prototype.pop) {
 Array.prototype.pop = function() {
  var lastElement = this[this.length-1];
  this.length = Math.max(this.length-1,0);
  return lastElement;
 }
}
if (!Array.prototype.push) {
 Array.prototype.push = function() {
  for(var i=0;i<arguments.length;i++) {
   this[this.length]=arguments[i];
  }
  return this.length;
 }
}
if (!Array.prototype.shift) {
 Array.prototype.shift = function() {
  var firstElement = this[0];
  this.reverse();
  this.pop();
  this.reverse();
  return firstElement;
 }
}
if (!Array.prototype.splice) {
 Array.prototype.splice = function() {
  var start = arguments[0];
  var deleteCount = start+arguments[1];
  var deleteItem = this.slice(start,deleteCount);
  var beforeItem = this.slice(0,start);
  var afterItem = this.slice(deleteCount);
  this.length=beforeItem.length;
  var i;
  for (i=2;i<arguments.length;this[this.length]=arguments[i++]);
  for (i=0;i<afterItem.length;this[this.length]=afterItem[i++]);
  return deleteItem;
 }
}
if (!Array.prototype.unshift) {
 Array.prototype.unshift = function() {
  var arr = new Array();
  for (var i=0;i<arguments.length;arr[i]=arguments[i++]);
  arr = arr.concat(this);
  this.length = 0;
  for (i=0;i<arr.length;this[i]=arr[i++]);
 }
}



代码3:
function getCookie(mainKey,subKey) {
 var reg = new RegExp("(^| )"+mainKey+"=([^;]*)(;|$)");
 var arr = document.cookie.match(reg);
 if (arguments.length == 2) {
  if (arr!=null)
   return key(subKey,arr[2]);
  else
   return null;
 } else if (arguments.length == 1) {
  if (arr!=null)
   return unescape(arr[2]);
  else
   return null;
 }

 function key(subKey,findWith) {
  var arr,reg = new RegExp("(^| |&)"+subKey+"=([^&]*)(&|$)");
  var findWith = findWith?findWith:document.cookie;
  if (arr =  findWith.match(reg))
   return unescape(arr[2]);
  else
   return null;
 }
}

function getQuery(name) {
 var reg = new RegExp("(^|&)"+name+"=([^&]*)(&|$)");
 var r = location.search.substr(1).match(reg)
 if (r!=null) return unescape(r[2]);
}

function DateAdd(strInterval, NumDay, dtDate) {
 var dtTmp = new Date(dtDate);
 if (isNaN(dtTmp)) dtTmp = new Date();
 switch (strInterval) {
  case "s":return new Date(Date.parse(dtTmp) + (1000 * NumDay));
  case "n":return new Date(Date.parse(dtTmp) + (60000 * NumDay));
  case "h":return new Date(Date.parse(dtTmp) + (3600000 * NumDay));
  case "d":return new Date(Date.parse(dtTmp) + (86400000 * NumDay));
  case "w":return new Date(Date.parse(dtTmp) + ((86400000 * 7) * NumDay));
  case "m":return new Date(dtTmp.getFullYear(), (dtTmp.getMonth()) + NumDay, dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds());
  case "y":return new Date((dtTmp.getFullYear() + NumDay), dtTmp.getMonth(), dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds());
 }
}
// DateDiff("m","2002/12/1 00:00:00","2004/12/1 00:00:00")
function DateDiff(strInterval, dtStart, dtEnd) {
 var dtStart = new Date(dtStart);
 if (isNaN(dtStart)) dtStart = new Date();
 var dtEnd = new Date(dtEnd);
 if (isNaN(dtEnd)) dtEnd = new Date();
 switch (strInterval) {
  case "s":return parseInt((dtEnd - dtStart) / 1000);
  case "n":return parseInt((dtEnd - dtStart) / 60000);
  case "h":return parseInt((dtEnd - dtStart) / 3600000);
  case "d":return parseInt((dtEnd - dtStart) / 86400000);
  case "w":return parseInt((dtEnd - dtStart) / (86400000 * 7));
  case "m":return (dtEnd.getMonth()+1)+((dtEnd.getFullYear()-dtStart.getFullYear())*12) - (dtStart.getMonth()+1);
  case "y":return dtEnd.getFullYear() - dtStart.getFullYear();
 }
}
// b2s("11新浪|?@#E序员_+}{:><")
function b2s(strng) {
 var Matches = strng.match(/[\x21-\x7e]/g);
 for (var i=0;i<Matches.length;i++) {
  strng = strng.replace(Matches[i],String.fromCharCode(Matches[i].charCodeAt (0)+65248))
 }
 return strng;
}






出处:http://bbs.blueidea.com/viewthread.php?tid=716195&page=



谢玮 2006-07-29 10:46 发表评论
]]>
SQL注入技术和跨站脚本d的检?http://www.tkk7.com/savage100/articles/58740.html谢玮谢玮Tue, 18 Jul 2006 06:02:00 GMThttp://www.tkk7.com/savage100/articles/58740.htmlhttp://www.tkk7.com/savage100/comments/58740.htmlhttp://www.tkk7.com/savage100/articles/58740.html#Feedback0http://www.tkk7.com/savage100/comments/commentRss/58740.htmlhttp://www.tkk7.com/savage100/services/trackbacks/58740.html阅读全文

谢玮 2006-07-18 14:02 发表评论
]]>
_注册表高U用?/title><link>http://www.tkk7.com/savage100/articles/58680.html</link><dc:creator>谢玮</dc:creator><author>谢玮</author><pubDate>Tue, 18 Jul 2006 01:24:00 GMT</pubDate><guid>http://www.tkk7.com/savage100/articles/58680.html</guid><wfw:comment>http://www.tkk7.com/savage100/comments/58680.html</wfw:comment><comments>http://www.tkk7.com/savage100/articles/58680.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/savage100/comments/commentRss/58680.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/savage100/services/trackbacks/58680.html</trackback:ping><description><![CDATA[ <div id="pjxh33r" class="ftitle">_注册表高U用法——安全篇</div> <div> </div> <span id="35v35jn" class="fwriter"> </span> <font class="fbody" id="zoom"> <div class="15xdb3z" id="p_content"> <p>  W者发现现在介l注册表的书c的重点内容都讲解注册表关于个性化讄和系l优化等部分Q而对于现实网l环境下日益猖獗的“黑客”行为、木马病毒以及那些o人恶心的恶意|站却关注甚。笔者在此就注册表有兛_全内容略加阐qͼ希望能v抛砖引玉之效?br /><br />  一、注册表与“黑客”行?br /><br />  “黑客”利用注册表主要包括Q?br /><br />  AQ突破部分网Y仉?br /><br />  BQ共享特定硬盘分区ƈq行指定E序<br /><br />  CQ启动黑客程序等三方面,而其中又属B、C两方面危完大?br /><br />  1、突破部分网Y仉?br /><br />  现在行的网Y件基本上都可以对PC机采取隐藏桌面和盘特定分区、禁止修改IE览器、隐藏“开始”工hQ封锁注册表~辑器regedit.exe{诸多限Ӟ有的|吧理员甚臛_了变态的地步。于是“自q战士”便开始利用注册表q行大突围?br /><br />  <img src="http://www.people.com.cn/mediafile/200411/03/F2004110308384900000.jpg" border="1" /><br /><br />  Word也可以给注册表解锁?没错Q我们利用的是微软在Word中提供的“宏”,没想到吧Q具体方法是Q运行WordQ然后编写如下面所C的q个“Unlock”宏Q即可给注册表解锁:<br /><br />  Sub Unlock()<br /><br />  Dim RegPath As String<br /><br />  RegPath = “HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System?br /><br />  System.PrivateProfileString(FileName:=“?Section:=RegPath,Key:=“Disableregistrytools?=“OK!?br /><br />  End Sub<br /><br />  ③用JavaScript、VBScript脚本语言解锁<br /><br />  脚本语言解锁注册表,q个没的_很多恶意|站是靠它来锁住我们的注册表,现在我们反其道行之用它来解锁注册表。这里只l出JavaScript的核心代码。用C本编辑如下内容的文gQ保存ؓ?js为后~名的L文gQ用时双击可以了?br /><br />  VAR WSHShell=WSCRIPT.CREA-TOBJEt(“WSCRIPT.SHELL?;<br /><br />  WSHShell.Popup(“解锁注册表?;<br /><br />  WSHShell.RegWrite(“HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\<br /><br />  system\\DisableRegistryTools? 0,“reg_dword?;<br /><br />  需要注意:用JS寚wD行操作时要用两斜杠“\\”,q且要用?”表C结?<br /><br />  ④利用SCR文gl注册表解锁<br /><br />  众所周知QSCR文g是屏保文ӞSCR文g如何用来解锁注册表呢Q方法是注册表~辑器regedit.exe改名为Regedit.scr。然后,在桌面上点击鼠标右键Q在弹出菜单中选择“属性”,在弹出的“显C属性”对话框中选中“屏q保护程序”,在“屏q保护程序”下拉列表框中找到Regeditq个“屏保文件”(?Q,最后点几Z预览”按U,你会发现注册表编辑器成功地打开了。再更改相关键|重启计算机后可以给注册表解锁了Q(记着把SCR文g改回哦!Q?br /><br />  <img src="http://www.people.com.cn/mediafile/200411/03/F2004110308402200000.jpg" border="1" /><br /><br />  ⑤用INF文g解锁<br /><br />  在Windows中有一U后~为INF的驱动安装文Ӟ它实际上是一U脚本语aQ通过解释来执行。它包含了设备驱动程序的所有安装信息,其中也有涉及修改注册表的相关语句Q所以我们也可以利用INF文gҎ册表解锁?br /><br />  [Version]<br /><br />  Signature=?CHICAGO$?br /><br />  [DefaultInstall]<br /><br />  DelReg=UnLock<br /><br />  [UnLock]<br /><br />  HKCU,Software\Microsoft\Windows\CurrentVersion\Policies\<br /><br />  System,Disableregistrytools,<br /><br />  1,00,00,00,00<br /><br />  上面的内容另存为后~名是.inf的文Ӟ使用时只要右键点dQ在弹出菜单中选择“安装”即可给注册表解锁(如图2Q?br /><br />  <img src="http://www.people.com.cn/mediafile/200411/03/F2004110308414900000.jpg" border="1" /><br /><br />  首先我们打开C本编辑reg文g如下Q?br /><br />  REGEDIT4<br /><br />  [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows<br /><br />  \CurrentVersion\Network\Lanman\C$]<br /><br />  //q里我只׃n了C盘,需要的可以再加<br /><br />  “Path?”C:\\?br /><br />  “Remark?“ ?br /><br />  “Type?dword:00000000<br /><br />  “Flags?dword:00000192<br /><br />  “Parm1enc?hex:<br /><br />  “Parm2enc?hex:<br /><br />  然后另存为ShareDrives.reg文g。  再打开C本,键入以下内容Q?br /><br />  [AutoRun]<br /><br />  open=regedit /s ShareDrives.reg // q里/s参数作用是导入注册表信息不显CZQ何提C?br /><br />  再另存ؓAutoRun.inf文g?br /><br />  这两个文g复制到对方共享出来的驱动盘根目录下,此后只要双击׃n出来的驱动盘׃自动ShareDrives.reg文g导入注册表,Ҏ重启pȝ后C盘也共享出来了。试xQ我们如果在 “open=…”句后添上木马名q将已配|好的木马服务端一起复制过去,以后会怎样Q?br /><br />  那么如何对付q种d呢?因ؓ盘根目录下基本不需要AutoRun.inf文g来运行程?因此我们可以采用一个一x逸的办法是硬盘的AutoRun功能完全关闭Q这样即使硬盘根目录下有AutoRun.inf文gQ操作系l也不会q行指定的程序。Win98ZQ打开注册表编辑器Q找到[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]主键Q在注册表编辑器右侧框中可以看到有二q制值“NoDriveTypeAutoRun?最后只需要将其数据数值由默认的?5 00 00 00”改为?d 00 00 00”就可以了。其原理我就不在讲解了?br /><br />  3、启动黑客程?br /><br />  利用注册表启动黑客程序,目的是想每次开机启动时自动q行黑客E序Q这同时也是很多木马病毒自启动常用的Ҏ之一。普遍的Ҏ是在黑客程序名及参数添加到注册表相应的键gQ这样一来,每次开机时计算机将自动加蝲相应的注册表,q而黑客E序辑ֈ帔R内存的目的。另外还有更为隐蔽的Ҏ会在“注册表与木马病毒”部分详l介l?br /><br />  下面我们打开注册表编辑器Q查看:<br /><br />  HKEY_LOCAL_MACHINE\Software\Microsoft<br /><br />  \Windows\CurrentVersion下所有以“run”开头的键|<br /><br />  HKEY_CURRENT_USER\Software\Microsoft<br /><br />  \Windows\CurrentVersion下所有以“run”开头的键|<br /><br />  HKEY_USERS\.Default\Software\ Microsoft\Windows\CurrentVersion下所有以“run”开头的键倹{?br /><br />  如果发现未知不明的键|可很有可能就是非法植入的E序?br /><br />  二、注册表与病?br /><br />  下面我们来看看病毒是如何利用注册表的。一般,病毒会利用注册表来得到系l的基本信息Q例如操作系l类型、系l安装的服务E序、IE、OutLook{应用Y件的版本信息{等。这主要是ؓ了探系l及软g本n的漏z然后加以利用。更主要的,病毒是想通过注册表实现黑客程序一L目的——开启,帔R内存。只有这P病毒才能感染其他机器和文Ӟ才有Zq行“破坏”?br /><br />  打开注册表编辑器Q我们找刎ͼ<br /><br />  HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion下所有以“run”开头的键|<br /><br />  HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion下所有以“run”开头的键|<br /><br />  HKEY_USERS\.Default\Software\ Microsoft\Windows\CurrentVersion下所有以“run”开头的键倹{?br /><br />  大部分病毒都会悄悄的在上qC个位|安家。这时我们只需要删除相应的键值再删除掉病毒程序就可以了?br /><br />  此外Q病毒还可以把自己注册ؓpȝ服务来达到更为隐蔽的开启的目的。其基本原理是利用在WIN2K中,“启动类型”设|ؓ“自动”的服务Q启动时pȝ׃自动q行Q所以,病毒只需自w添加到pȝ服务中,q将“启动类型”设|ؓ“自动”就可以每次启动pȝ旉自动q行病毒E序。其在注册表中的位置如下Q  [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ ServiceName\Parameters]<br /><br />  “Application? “C:\\winnt\\system32\\ ServiceName.exe<br /><br />  其中QServiceName是病毒名?br /><br />  不过病毒自w注册ؓpȝ的“服务”程序还有一个缺点,是在“系l配|实用程序”(在“开始→q行”中执行“Msconfig”)的“启动”项和“服务”项中可以看得到。那么有没有比这更隐蔽的Ҏ呢?{案是肯定的。在“开始→q行”中执行“Gpedit.msc”。 打开“组{略”,可看到“本地计机{略”中有两个选项Q“计机配置”与“用户配|”,展开“用户配|→理模板→系l→d”,双击“在用户d时运行这些程序”子进行属性设|,选定“设|”项中的“已启用”项q单几Z显C”按钮弹出“显C内容”窗口,再单几Z添加”按钮,在“添加项目”窗口内的文本框中输入要自启动的E序的\径,单击“确定”按钮就完成了。如?所C:<br /><br />  <img src="http://www.people.com.cn/mediafile/200411/03/F2004110308435900000.jpg" border="1" /><br /><br />  <img src="http://www.people.com.cn/mediafile/200411/03/F2004110308441600000.jpg" border="1" /><br /><br />  其实恶意|站所使用的技术ƈ不复杂,只要懂一点JavaScript、VBScript脚本语言~程和ActiveX控g原理可以。所以在q我׃一一列DQ而是重点介绍一下如何在技术上防范和杜l这些恶意网站?br /><br />  常用Ҏ是在IE讄中将ActiveX插g和控件、Java脚本{全部禁止。方法是Q打开IEQ点击[工具]→[Internet选项]→[安全]→[自定义别]Q在“安全设|”对话框中,其中所有的ActiveX插g和控件以及与Java相关的组件全部禁止即可。如? 所C:<br /><br />  <img src="http://www.people.com.cn/mediafile/200411/03/F2004110308461500000.jpg" border="1" /><br /><br />  另外我们q可以卸载WSH或升U到WSH5.6。WSH(Windows Script Host)是微软提供的一U基?2位Windowsq_的、与语言无关的脚本解释机制。利用WSHQ用戯够操UWSH对象、ActiveX对象、注册表和文件系l,在NT环境下还可以利用WSH讉Kzd目录服务?br /><br />  卸蝲ҎQ进入“控刉李쀝,选择“添?删除E序”,切换到“Windows安装E序”,选择“附件”,再选择“详l资料”中的Windows Scripting HostQ最后点几Z确定”即可卸载?br /><br />  其实Qؓ了避免Windows对脚本不加限制的滥用Q微软ؓWSH5.6采用了一U新的安全模型,使得脚本用户在运行脚本之前验证其真实性。脚本开发h员对其脚本进行签名,以免发生未经授权的修攏V管理员可以强制实施严格的策略,定哪些用户有权在本地或q程q行脚本。在Windows 2000中,{֐验证{略是通过“本地安全策略”编辑器讄的。签名验证策略注册表位于以下配|单元:HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows ScriptHost\Settings\TrustPolicyQ该注册表项讄Z下某个REG_DWORD|如果?则运行所有的脚本Q如果认本不可信Q则提示用户Q此旉值可设ؓ1Q如果键gؓ2则只q行可信脚本。徏议将该DWORDD??br /><br />  四、小l?br /><br />  有关注册表与安全的话题笔者就讲到q,W者只是指Zq个安全话题的冰׃角,q有很多安全问题׃旉和篇q的限制׃再一一说明Q例如防范共享入侵和止I接,防止ICMP重定向报文的dQ防止SYNz水d{等很多l典的安全问题都和注册表息息相连。笔者只是希望就此话题引起大家够认识,q且在以后实际工作、学习中遇到问题能够拓开思\Q灵zd变。最后需指出Q技术只是解决问题的一个方面,对h的管理很多时候更为重要!</p> </div> </font> <table cellspacing="0" cellpadding="4" width="100%" align="center" border="0"> <tbody> <tr> <td class="fblack" width="50%"> <div class="p3f355d" id="p_origin">来源Q?a >天极|Yesky</a></div> </td> <td class="fblack" align="right"> <div class="dn5zpz5" id="p_editor">Q责ȝ辑:陈健</div> </td> </tr> </tbody> </table> <img src ="http://www.tkk7.com/savage100/aggbug/58680.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/savage100/" target="_blank">谢玮</a> 2006-07-18 09:24 <a href="http://www.tkk7.com/savage100/articles/58680.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用javascript实现x功能http://www.tkk7.com/savage100/articles/58402.html谢玮谢玮Sun, 16 Jul 2006 03:05:00 GMThttp://www.tkk7.com/savage100/articles/58402.htmlhttp://www.tkk7.com/savage100/comments/58402.htmlhttp://www.tkk7.com/savage100/articles/58402.html#Feedback0http://www.tkk7.com/savage100/comments/commentRss/58402.htmlhttp://www.tkk7.com/savage100/services/trackbacks/58402.html在IE中实现关?br /><script language="Javascript">
var Application=new ActiveXObject('Shell.Application.1');
</script>
<br>
<button onclick=Application.ShutdownWindows();>x</button>
   
<button onclick=Application.Suspend();>挂v</button>




Windowsx命o


如果你想出门Q但电脑又正在进行工作,q时p用到自动x。大多数实现自动x的方法都是用一些第三方软gQ这样不仅麻烦,而且为实现这个小功能而专门动用一个YӞ昄题大做了!其实Windows XP(Windows 2000也可?自n具备定时关机的功能Q下面我们就来看看如何实现Windows XP的自动关机?/p>

 

Windows XP的关机是由Shutdown.exeE序来控制的Q位于WindowsQSystem32文g夹中

  。如果想让Windows 2000也实现同L效果Q可以把Shutdown.exe复制到系l目录下。  

  比如你的电脑要在22:00xQ可以选择"开始→q行"Q输?at 22:00 Shutdown -s"Q这PC22点电脑就会出?pȝx"对话框,默认?0U钟的倒计时ƈ提示你保存工作。如果你想以倒计时的方式xQ可以输?Shutdown.exe -s -t 3600"Q这里表C?0分钟后自动关机,"3600"代表60分钟?

  讄好自动关机后Q如果想取消的话Q可以在q行中输?shutdown -a"。另外输?shutdown -i"Q则可以打开讄自动x对话框,对自动关行设|。  

  Shutdown.exe的参敎ͼ每个都具有特定的用途,执行每一个都会生不同的效果Q比?-s"pC关闭本地计机Q?-a"表示取消x操作Q下面列Z更多参数Q大家可以在Shutdown.exe中按需使用?

  -fQ强行关闭应用程?

  -m Q|计算机名Q控制远E计机

  -iQ显C图形用L面,但必LShutdown的第一个选项

  -lQ注销当前用户

  -rQ关机ƈ重启
  
  -t旉Q设|关机倒计?

  -c "消息内容"Q输入关机对话框中的消息内容(不能?27个字W?



谢玮 2006-07-16 11:05 发表评论
]]>
常用站点http://www.tkk7.com/savage100/articles/56979.html谢玮谢玮Thu, 06 Jul 2006 08:55:00 GMThttp://www.tkk7.com/savage100/articles/56979.htmlhttp://www.tkk7.com/savage100/comments/56979.htmlhttp://www.tkk7.com/savage100/articles/56979.html#Feedback0http://www.tkk7.com/savage100/comments/commentRss/56979.htmlhttp://www.tkk7.com/savage100/services/trackbacks/56979.html Ajax
dojo         http://download.dojotoolkit.org/
dwr          http://getahead.ltd.uk/dwr/download
prototype  http://prototype.conio.net/
prototype 在线学习指南   http://www.sergiopereira.com/articles/prototype.js.html
prototype 1.4中文手册(hot!!!)  http://thinhunan.cnblogs.com/archive/2006/04/01/DeveloperNotesForPrototype.html
wiki.script.aculo.us API
http://wiki.script.aculo.us/scriptaculous/show/Prototype
某prototype W记   https://compdoc2cn.dev.java.net/prototype/html/prototype.js.cn.html 

json  指南: Quick guide to somewhat advanced JavaScript  tour of some OO features
http://www.sergiopereira.com/articles/advjs.html
《征服Ajax web2.0详解》作者的blog
http://www.x2blog.cn/supNate/#sid.0/page.1/
Eclipse
eclipse     http://www.eclipse.org
csdn文章中心        http://kb.csdn.net/java/Articles/200606/7105353e-2f75-4398-9282-119b58937764.html
JSEclipse 插g下蝲地址       http://www.apple.com/downloads/macosx/development_tools/jseclipse.html
JSEclipse 插g官方地址       http://www.interaktonline.com/
视频教程                              http://www.interaktonline.com/Products/Eclipse/JSEclipse/Flash-Demos/
java视线                 http://www.hibernate.org.cn
Ҏ刚满江红        http://www.redsaga.com/mambo/content/view/42/2/

在线javascript手册   http://www.8esky.com/handbook/JavaScript/index.html
Mysql 手册         http://www.uplinux.com/download/doc/mysql/mysql4/index.html
CVSclient入门     http://www.redsaga.com/CVS_newbie_win32/
一个不错的Ajax Blog      https://blueprints.dev.java.net/ajax-faq-zh.html#ajax-libraries
框架视频教程   http://www.tkk7.com/oksonic/archive/2005/11/06/18370.aspx

Java开?/font>

开源站?http://sourceforge.net/new/
一个国内的java开源站点 HOT  http://www.ideagrace.com/sf/bloggers/ 
java自由人  ?a >http://www.javayou.com/
开发工具下载站点?http://www.topdownloads.org/software/view.php?id=75020

谢玮 2006-07-06 16:55 发表评论
]]>
DWR使用指南http://www.tkk7.com/savage100/articles/56322.html谢玮谢玮Mon, 03 Jul 2006 05:53:00 GMThttp://www.tkk7.com/savage100/articles/56322.htmlhttp://www.tkk7.com/savage100/comments/56322.htmlhttp://www.tkk7.com/savage100/articles/56322.html#Feedback0http://www.tkk7.com/savage100/comments/commentRss/56322.htmlhttp://www.tkk7.com/savage100/services/trackbacks/56322.htmlhttp://getahead.ltd.uk/dwr/download


谢玮 2006-07-03 13:53 发表评论
]]>
用JAVASCRIPT实现可拖拽DIVhttp://www.tkk7.com/savage100/articles/drag.html谢玮谢玮Thu, 29 Jun 2006 08:43:00 GMThttp://www.tkk7.com/savage100/articles/drag.htmlhttp://www.tkk7.com/savage100/comments/55777.htmlhttp://www.tkk7.com/savage100/articles/drag.html#Feedback0http://www.tkk7.com/savage100/comments/commentRss/55777.htmlhttp://www.tkk7.com/savage100/services/trackbacks/55777.html阅读全文

谢玮 2006-06-29 16:43 发表评论
]]>
վ֩ģ壺 һësuvÿĹվ| 99þѹۺϾƷ| ޳AƬ77777| һƵ| ޹ƷȾþ| ˬָ߳ëƬ| պ߹ۿƵ| 츾avһ| ˾þۺӰԺ| 99ƵȫѾƷȫĻ| һѿ| 1234| ޾ƷþþþþҲ | Ļ| ƷŮٸAVѹۿ| þùһƬѹۿ| ɫƷվ| ۺ˾þôý| պѿվ| 91Ʒվ| 99ƵƷƵ76| ͵͵߳վý| ˳ɾƷþþþ| ts߹ۿƵ| 57paoƵ| 99ƵƷƵ76| avպƷþþþþa| þþƷĻ鶹| ޹þþۺ| õ998Ƶѹۿ| ʮ˽վ| www.avѹۿ| þþþ޹AV鶹 | þþþ޾Ʒվ | ɫƵ| 777ӰƬѹۿ| aƵ߹ۿ| һؼŮ18ëƬƵ| AVۺ뾫Ʒ| ߹ۿ| ƷAһ|