viveywang  
简单的男人 简单的生活
公告
  • 昵称:V的四次方
    园龄:4年4个月
    粉丝:1
    关注:0
日历
<2012年2月>
2930311234
567891011
12131415161718
19202122232425
26272829123
45678910
统计
  • 随笔 - 7
  • 文章 - 1
  • 评论 - 0
  • 引用 - 0

导航

搜索

 
 

常用链接

随笔档案

最新评论

阅读排行榜

评论排行榜

推荐排行榜

 

2010年5月6日

ALTER LOGIN sa
WITH  password ='sa',
      CHECK_POLICY =OFF,
      CHECK_EXPIRATION = OFF
posted @ 2010-05-06 23:27 V的四次方 阅读(21) 评论(0) 编辑

2009年11月29日

转自:http://hi.baidu.com/ernest_xu/blog/item/a08d1131daaf0da05fdf0ee4.html

  分析:系统中UI采用第三方控件Dev,vs2005在调用时会调用许可编辑器,所以出现如上错误。

  解决方法:把Properties文件下的license.licx给删除,重新编译,问题解决。

      如果还出现这个问题的话,必须将你的破解版的哪个组件使用lidism给翻译成il语言,然后用ilasm重新编译成dll,在编译的时候加入 /key=[你的强名称文件].snk 参数,自己加入强名称签名,然后使用vs2005重新编译,就可以成功了。

 

posted @ 2009-11-29 09:29 V的四次方 阅读(382) 评论(0) 编辑

2009年9月25日

转自: http://lantx.blog2.cnool.net/Article/2007/11/19/72906.html

比方说在页面里面有个LinkButton,要点击以后要打开新窗口,而且新窗口的URL是根据用户选择结果动态产生的。LinkButton的代码这样写:
    protected void ServiceManHistoryButton_Click(object sender, EventArgs e)
    {
        Response.Write("<script>window.open('EquipmentHistory.aspx?eid=" + ServiceManDropDownList.SelectedValue + "');</script>");
     }
运行以后会发现,新窗口是打开了,但是原来页面的字体变大了,奇怪的问题!
有人想也不想就说是CSS没设置好,对这些人我很无语,求教的时候最怕遇到他们
实际原因是直接Response.write输出脚本代码到顶部,打乱了文档模型,所以造成了这样的结果。

OK,解决方法有两个。

方法一:把Response.Write()语句替换为这个

Page.RegisterStartupScript("ServiceManHistoryButtonClick", "<script>window.open('EquipmentHistory.aspx?eid=" + ServiceManDropDownList.SelectedValue + "');</script>");

这个方法用于在页响应中发出客户端脚本块,前一个参数是该Script在页面中的唯一名称(随便起,不重复就行),后一个是脚本内容。

这个方法应该是微软官方推荐的方法。

方法二:在原程序的Response.Write()语句后再加一句

Response.Write("<script>document.location=document.location;</script>");

想出这个办法的人真高!但是如果在一个输入页面,有多提醒状态下,使用这个办法会导致页面内容清空哦 哈
posted @ 2009-09-25 12:24 V的四次方 阅读(214) 评论(0) 编辑

2009年9月12日

转自:http://jsfox.cn/blog/javascript/debug-js-quick-locate.html

快速定位,其实就是快速定位程序的错误,所以也算是调试。这个在实际的码代码时往往比较实用。大多数情况下,你的js代码不多(少于1000行),只要能迅速发现代码的错误,往往不用复杂的调试。关于常用的快速定位方法,我总结了一下几点,欢迎大家补充。

1. 使用alert

alert其实比较实用。本地调试中,在合适的位置写alert,打出来一些变量,虽然比较土,但是往往事半功倍!另外有一个alert技巧,想看看一个对象中的属性和它的值吗,试试这个:

var str = "", i;
for (i in obj) {
str += i + ": " +obj[i] + "\n";
}
alert(str);

2. 使用地址栏

使用地址栏,输入javascript: doSomething(),可以在Runtime时输出或者执行一些代码。输出东西时也使用alert,例如在地址栏输入:

javascript: alert(document.getElementsByTagName("a").length);

可以输入当前的document下的链接数量。如果想执行已经加载的自定义函数,可以输入例如:

javascript: deleteFirstChildNode();

3. 错误查看器

最快捷的错误查看器当属Firefox的错误控制台,快捷键ctrl+shift+j。在你觉得脚本执行不正常时,首先按一下这个快捷键,往往能立刻知道哪里出了问题,并且点一下就能到问题脚本所在的位置,非常方便,强烈推荐!

4. 用浏览器的扩展或插件查看错误

这个话题比较大,一时说不完,所以先说说用扩展或插件来查看错误。对我来讲,Firebug一般就够用了,比较常见,就不截图了。启用 Firebug控制台后,如果页面上js脚本错误,就会立刻在右下角显示出来,点击可以查看错误。有一点需注意,我的Firebug有时会报这个带乱码的 错误:

 (¹Õ Location.toString

我一直不清楚这个为什么会乱码,但我知道这个是跨域的错误,比较常见。

其他浏览器的错误查看器,在这里我也简单总结一下:

Chrome:菜单 – 开发人员 – JavaScript控制台,下方可以看到类似于Firebug的console,在这里可以看到错误和警告信息。

Opera:菜单 – 工具 – 高级 – Error Console,功能比较强大,可以查看各类错误。

Safari:4.0版跟Chrome查看方式一样。Chrome/Opera/Safari都可以在Develope Tools里看到错误信息。

IE8:非常不好用,但是也有。开发人员工具 – Script标签 – 点击右边的console。在这个console里可以看到错误信息,但是不太友好。

5. console.log

在代码中使用console.log,也就是类似于alert,只不过把想要的信息输出到console里。console对象在Firefox、 Chrome、Safari里都可以使用。除了console.log,还有console.error,console.info等等。详见 Firebug的console API

6. Console

最后正式介绍一下Console,也就是控制台。Life is short, use console!以Firebug的console为例,把几个常用功能介绍总结一下:

  • 查看js对象

输入一个名字,例如window,window对象就会出现在结果中。这时可以点击这个window对象!点击以后就可以在DOM标签中查看这个对象的所有属性。那么现在应该能看到window下的全局变量了,方便吧!

  • 查看DOM对象

输入document.getElementById(”el_id”),这时el_id这个元素就会出现在结果中,点击可以看到它的详情,例如看看它当时的HTML代码。

  • 在Runtime执行脚本

输入任何的js代码,立刻执行。这样可以很方便地测试页面上的脚本了。也可以在多行模式中执行输入的js。

关于这个console,在输入js脚本时,别忘了按tab键进行代码自动补齐哦!代码补齐和提示功能,在Chrome、Safari和Opera里同样有效,IE8就惨点了。Chrome和Safari做的也非常好,大家可以试一下啊
posted @ 2009-09-12 11:25 V的四次方 阅读(321) 评论(0) 编辑
 

转自:http://www.zhuoda.org/irini/71408.html

以前我比较轻视javascript,但在的工作中越来越感觉到它的重要,测试部给我报的bug也多半源于此,所以决心补习js,那么首先要搞定的就是调试器,发现firefox 下的venkman很不错,强大 小巧,而且免费。

基于Mozilla的浏览器(如firefox)有个JavaScript调试环境,叫venkman,可以从http://www.hacksrus.com/~ginda/venkman/下载,然后用firefox打开得到的xpi文件,它就会自动安装,重启firefox,选择 工具->JavaScript Debugger 启动venkman,如图,

窗口布局很清晰,Loaded Scripts窗口中显示当前可用的javascript,点击文件旁边的加号,就会打开一个详细列表,列出该文件中的所有函数,其他窗口不用多说了。

断点跟踪才是我们关注的重点,venkman支持两种断点:硬(hard)端点和将来(future)断点。

两者的区别是,将来断点设置在函数体之外的代码行上。一旦这些代码行加载到浏览器上就会立即执行。与之相反,只有当为响应某个动作或事件执行了函数时,位于函数体内的代码才会?葱小?

看例子,一个js文件 DebugSample.js,和一个调用页面 CallPage.html

// DebugSample.js

var dateString = new Date().toString();

function doFoo(){

       var x = 2 + 2;

       var y = "hello";      

       alert("test");

}

// CallPage.html

<html>

       <title>test page</title>

       <script language="JavaScript" src="DebugSample.js"></script>

       <body>

              <form id="test">

                     <input type="button" value="test" onclick="doFoo()"/>

              </form>

       </body>

</html>

firefox打开CallPage.html,启动venkman,在所需的代码行上设置一个断点,点击代码行左侧的边栏即可。每次点击这一行时,这行就会轮流的切换为以下3种:无断点、硬断点、将来断点。硬断点由一个红色的B指示,将来断点有橙色的F指示。函数体外的代码行只能切换为无断点和将来断点。

我们在var y = "hello";这一行设个断点

然后点击页面的“test”按钮,可以看到在断点处停止了

接下来的操作想必都知道了,它和其他的debugger用法相同,下面看一下venkman的一个强大特性,可?员嘈炊ㄖ拼耄⒃诿看沃葱卸系闶痹诵姓庑┒ㄖ拼搿T?Breakpoints窗口中,右键点击一个断点,选择Breakpoint Properties(断点属性)

这样会打开Breakpoint Properties对话框,允许你修改断点的行为

这个窗口的强大之处在于“Wen triggered, execute…(如果触发,则执行…),选中这个复选框,会置一个文本框有效,可以编写js代码,每次遇到断点时都会执行此代码,向这个定制脚本传递的参数名为_count_,它表示遇到断点的次数,下面的4个行为中也以“Stop if result is true”的功能最强大,它意味着只有当定制代码的返回值为true时断点才会暂停执行。

想 象一下,假设你在迭代处理一个很大的对象列表,开发过程中,你注意到,计算时在一个特定对象处失败了。如果只是处理单个对象或只是个小的对象列表,则没有 问题,在循环中设个断点,进行跟踪,但如果列表很大,这样每个循环都进就很麻烦,这时就可以使用条件断点功能,知道某种情况会失败,编一个条件语句,满足 条件时断点才暂停。

继续看例子,在上面的DebugSample.js中添加方法:

function testBreakpointProperties(){

       var list = ["one", "two", "three", "four", "five", "six", "seven", "eight"];

       var item = null;

       for(var i=0; i<list.length; i++){

              item = list[i];

              item = "Text is: " + item;

       }

}

CallPage.html中按钮的onclick改为onclick="testBreakpointProperties()",在venkman中设置断点

右键点击红色断点标记,选择Breakpoint Properties,打开对话框,选择“Wen triggered, execute…”,在文本框中输入“return item == "seven";”,再选择“Stop if result is true”,在页面点击“test”按钮会进入venkman,这时item的值为“seven”,很方便吧,省去了我们自己一个一个循环的跟踪。

Venkman的确很不错,有了它我更喜欢写js了,但也发现个比较烦的怪问题,用完一次Venkman后关闭,再想打开它就不行了,得注销,重登陆后才能再打开,这在工作环境下是不可思议的,所以打开他后我就不敢关了,愁啊。

posted @ 2009-09-12 11:23 V的四次方 阅读(476) 评论(0) 编辑

2009年9月10日

转自:http://charlescui.javaeye.com/blog/306238

Sqlite中提供的方法和Mysql的一样,也是通过关键字limit限制。

SQL1
Sql代码
  1. select t.user_id,random() as Random from udb_user t limit 10;  

SQL2
Sql代码
  1. select t.user_id,random() as Random from udb_user t limit 10,15;  


LIMIT子句限定行数的最大值。负的LIMIT表示无上限。后跟可选的OFFSET说明跳过结果集中的前多少行。在一个复合查询中,LIMIT 子句只允许出现在最终SELECT语句中。限定对于所有的查询均适用,而不仅仅是添加了LIMIT子句的那一行。注意OFFSET关键字用于LIMIT子 句中,则限制值是第一个数字,而偏移量(offset)是第二个数字。若用逗号替代OFFSET关键字,则偏移量是第一个数字而限制值是第二个数字。这是 为了加强对遗留的SQL数据库的兼容而有意造成的矛盾。

SQL1查询当前表前10条记录,SQL2查询当前表前10条之后的15条记录,SQL2中的10是偏移量。

下面是一个哥们给出的其它数据库查询指定行数数据的方法

Sql代码
  1. http://blog.csdn.net/unixpro/archive/2007/03/20/1534561.aspx  
  2.   
  3. 各种不同数据库查询前几行/后几行的sql语句  
  4.   
  5. SqlServer  
  6.   
  7.  select top 10 * from tablename;  
  8.   
  9. Informix  
  10.   
  11. select first 10 * from tablename;  
  12.   
  13. Oralce  
  14.   
  15. select * from tablename where rownum<=10;  
  16.   
  17. MySql  
  18.   
  19. select * from tableName limit 10 
posted @ 2009-09-10 10:36 V的四次方 阅读(1172) 评论(0) 编辑

2007年10月19日

posted @ 2007-10-19 16:59 V的四次方 阅读(144) 评论(0) 编辑
 
Copyright © V的四次方 Powered by: 博客园 模板提供:沪江博客