image

qke 奇客

Home >> November, 2008

Your application is not running with full trust

Posted on: Friday, November 28th, 2008 in: DotNet

Your application is not running with full trust

问题描述:
当我使用AspxLab.WebControls控件时出现了一下错误

安全性异常
说明: 应用程序试图执行安全策略不允许的操作。要授予此应用程序所需的权限,请与系统管理员联系,或在配置文件中更改该应用程序的信任级别。
异常详细信息: System.Security.SecurityException: Your application is not running with full trust. Please call AspxLab.WebControls.Runtime.Initialize to manually initialize AspxLab Controls runtime environment.

 解决方法:
在system.web节点下添加
<httpModules>
<add name=“ASPXLAbsRuntime“ type=“AspxLab.WebControls.Runtime“/>
</httpModules>

七个有效的文本编辑习惯[转]

Posted on: Thursday, November 20th, 2008 in: opensource

觉得这篇文章写得比较好,于是转来与大家分享:)
作者Bram Moolenaar
Bram@Moolenaar.net
slimzhao@hotmail.com 翻译整理
如果你要花大量的时间键入文本, 写程序或编写HTML脚本, 你可以通
过有效地使用一个好的编辑器来替你节省时间。本文将引导你如果快速地
完成你的编辑工作, 并且减少你的错误。
本文将以开放源码软件Vim(Vi IMproved)为例向你展示如何进行有效
的编辑, 但这里提到的原则对其它的编辑器也是一样, 选择合适的编辑器
是进行高效的编辑的第一步, 关于哪个编辑器最好的争论已经数不胜数,
本文不打算对此再说些什么。如果你还不知道用什么编辑器或者觉得你现
在使用的编辑差强人意, 试一下Vim, 保你满意。
第一部分: 编辑一个文件
1. 快速移动
文本编辑的多数时间都花费在浏览, 检查错误或者找出你要进行编辑
工作的正确位置, 输入新的内容或改变已有的内容倒在其次。在文本中随
意漫游是非常常见的操作。所以高效编辑的第一要义是学习如何能够在文
本中快速移动, 准确定位。
通常情况下, 你知道要查找的内容, 或者查看所有的文本行只是为了
找出某个单词或者短语。你可以使用查找命令”/pattern”查找文本, 但有
几点要注意的:
如果你已经找到了一个单词并且想找出这个单词还在其它哪些地方出
现, 可以使用”*”命令, 它查找下一个匹配的目标。如果你设置了`incsearch’选
项, Vim将会以反白显示出第一个被找出的匹配。这能在你还在/命令下敲
入关键字时就快速地显示出来(类似于emacs的递增查找功能) 如果你设置
了`hlsearch’选项, Vim将会高亮显示所有查找到的匹配, 这种策略可以
让你对要查找的内容有一个概括的了解, 如果你在程序代码中使用这一功
能, 它能显示出所有引用某个变量的地方。你不需要移动光标就可以看到
所有符合条件的匹配(同一屏幕上可以看到不至一个地方被匹配)。
在一些结构规范的文本中还有其它一些更方便的小技巧进行快速移
动, Vim内嵌了方便C程序(以及与C语言很相象的C++和Java)的命令: 使
用”%”命令可以从一个打开的括号跳转到与它成对匹配的另一个括号处,
还可以从一个预处理指令”#if”跳转到与之匹对的”#endif”。其实”%”命令
能跳转到好几种文本元素的`另一半’去。这对检查你的() 和fg是否正确
匹对非常方便。使用”f[f"跳转到当前代码块的开头(代码块是用"fg"括起
来的程序段)。
使用"gd"可以跳转到当前光标所在的单词(变量)的局部定义处。当
然, 还有很多其它的技巧。关键是你要知道有这样的命令。你也许会说你
不可能学习所有的命令---共有几百个不同的移动命令, 一些很简单, 还
有一些是智能化的---不过它可能要花费你数周的时间学习使用它们。当
然, 你不必全部掌握, 只要有你自己的一套办法, 并且能处理你所要进行
的操作。
有三个步骤可以使你学到你需要的技巧:
当你编辑文件的时侯, 留意一下你经常要重复进行的操作是什么。或
者你花大部分时间都在干些什么。想一想有没有一个编辑命令可以替你
做最让你头痛的事。读在线文档, 问一个朋友, 或者看一下别人是怎么做
的。
练习使用这些命令, 直到你的手指可以不假思索地运用自如。举个例
子来说明到底怎样做:
你在写C程序的时侯, 你经常要花时间找到一个函数的定义。现在你
使用的是"*"命令查找这个函数名都在哪些地方出现过, 但在你到达真正
的目标之前, 可能还有符合你的查找条件的很多个匹配(如注释中出现的
或该函数在其它地方被调用) 骚扰你。你可能会想一定有一种捷径可以一
步到位。
浏览一下参考手册你就会发现关于tag的主题。文档会告诉你如何使
用这一功能跳转到函数的定义处。这正是你要的东东!
你已经知道如何生成一个tags文件(ctags *.[ch]或etags *.[ch]),
使用ctags 程序就可生成Vim所要的tags文件。接下来你练习使用CTRL-]命
令。为了更方便地使用这一功能, 你还可以往你的makefile文件里加入自
动生成tags文件的命令。当你使用这面的三个原则时要当心:
“我想使用这些命令, 但我没时间去看文档中的一些新命令”。如果你
还这样想, 那么你可能还处于计算机的石器时代(就是说你比较菜啦)。有
些人做什么都用notepad, 他们可能觉得别人用更短的时间完成相同的工
作是不可思议的事。
不要重复做相同的事。如果你经常要去找一个你常用的命令, 你就没
时间专注于你手头上的事的。只要找到耗费你太多时间的操作, 练习使用
这些操作对应的快捷命令, 直到你可以不假思索地使用它们。这样你才可
能把精力集中在你要编辑的文本上面。
下面是一些多数人都会遇到的常见问题的解决方案的建议。你可以以
此为例, [...]

越狱中的胡克定律-拆墙受力关键点示意图

Posted on: Wednesday, November 19th, 2008 in: unsorted

越狱中的胡克定律-拆墙受力关键点示意图
越狱第一季才出来的时候,LBJ同学就极力推荐。昨天终于有时间开始来细细品位了。
真不错,不然我会错过一部精彩连续剧。一天一口气看了十集,足见俺也是一个Tv show
Fans,LOL.里面有一个有意思的镜头,Michael和狱友利用胡克定律拆掉一堵水泥厚墙。因
为俺不是结构力学方面的专家,对胡克的认识也只有初中物理上,关于弹性系数f与其产生的力F
之间存在一个线性关系,真想不到胡克还是一个结构力学方面的天才。
仔细找了相关方面的资料,原来还真有那么回事。
材料力学和弹性力学的基本规律之一。由R.胡克于1678年提出而得名。胡克定律的内容为:在材料的线弹性范围内,固体的单向拉伸变形与所受的外力成正比;也可表述为:在应力低于比例极限的情况下,固体中的应力σ与应变ε成正比,即σ=Εε,式中E为常数,称为弹性模量或杨氏模量。把胡克定律推广应用于三向应力和应变状态,则可得到广义胡克定律。胡克定律为弹性力学的发展奠定了基础。各向同性材料的广义胡克定律有两种常用的数学形式:
σ11=λ(ε11+ε22+ε33)+2Gε11,σ23=2Gε23,
σ22=λ(ε11+ε22+ε33)+2Gε22,σ31=2Gε31,(1)
σ33=λ(ε11+ε22+ε33)+2Gε33,σ12=2Gε12,及
式中σij为应力分量;εij为应变分量(i,j=1,2,3);λ和G为拉梅常量,G又称剪切模 量;E为弹性模量(或杨氏模量);v为泊松比。λ、G、E和v之间存在下列联系: 式(1)适用于已知应变求应力的问题,式(2)适用于已知应力求应变的问题。
参见百度词条:http://baike.baidu.com/view/127907.htm
找到我所关心的拆墙受力关键点示意图吧,呵呵,说不定以后可以用这个才取乐,有机会还真想亲自试试它的威力。
好了废话就不多说了,看看这些 Michael的各位徒弟是怎么”越狱”的吧。:)

这是我们要拆除的一部分墙,可以通过上面的密码找到我们,你也可以来《越狱》!

看看这个墙的材质,你就知道这是不是糊弄人的了!

专用打孔设备

我们的“作案”工具

哈工大土木工程系一位朋友帮我计算出来的胡克定律效果图

我们在墙面上选择了12个点,作为受力点

每个点都要用工具打通。

事实证明,用越狱里用打蛋器来钻孔是极其不可取的,会把人累死的!看看我半个小时的杰作。

好在我准备了Michael也带不进监狱的东西:电钻
看看我的超强武器 其实就算用电钻也一样很吃力的

墙体太厚了

终于快钻出来了!

每个点都对我们来说很重要

事实证明越狱的确不是一件易事

越狱不仅是脑力活也是体力活

看看吧,这就是希望

知道么,看见绿色的一刻 我也觉得自己就要出狱了!

为了外面的美好世界……………

有了电钻果然效率提高了很多,如果Michael当时有电钻的话,估计可以提前几个小时出去,哈哈

又是体力活

纹丝不动的墙!

越狱需要坚持

毛主席教育我们一不怕苦二不怕累

开了一个口的墙,看看吧,这砖头真结实!

终于成功了!

再看一眼我们的场地吧

这是我们逃离的监狱

我逃走了,不服气的话来抓我吧!

有意思的fork

Posted on: Tuesday, November 18th, 2008 in: cpp

有意思的fork
pid_t fork(void)函数用来创建新的进程。
相关函数有wait exec等。
该函数创建一次,返回两次。
可以根据返回值区别当前进程是父进程,还是新创建的子进程。
子进程中返回值为0,父进程中返回其子进程号,出错为-1.
在fork()这个地方,新加了一个执行入口。子进程
拷贝了父进程的所有数据,堆栈空间,并继承了父进程的用户代码、组代码、环境变量、已经打开的
文件代码、工作目录和资源限制。子进程从父进程继承下列属性:
实际用户号、有效用户号以及保留的用户号
实际组号、有效组号以及保留的组号
补充组号列表
环境
文件描述符
执行时关闭标识
信号处理设置
信号掩码
配置处理开|关状态
记录帐号中的命令名
Nice值
所有连接的共享内存段
当前工作目录
根目录
文件模式创建掩码
文件大小限制
实时优先级
因为是数据的备份,所以这些数据并不能相互影响。
下面看一个例子:(是从Linux 高级程序与设计 人民邮电出版社 P151变形而来,原书中给出的结果有错误)
下载: getpgid_example.c//getpgid_example.c
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
int main(int argc ,char** agrv)
{
        int i;
        int num = atoi(agrv[1]);
        printf("\t pid\t ppid\t pgid\n");
        printf("parent\t%d\t%d\t%d\n",getpid(),getppid(),getpgid(0));
        for(i=0;i<num;i++)
        {
                if(fork()==0)
          [...]

Vim常用命令

Posted on: Monday, November 17th, 2008 in: opensource

vim txt.txt 创建文件
ESC用于换切模式
i:Insert
h:left
l:right
k:top
j:bottom
x:delete a char
dd:delete a line
J:join lines
u:undo
ctrl+R :redo
a:apend
o:new line after the cursor
O:new line before the cursor
3k:向上移3行
ZZ:save and exit
:q!:abort and quit
i:Insert
h:left
l:right
k:top
j:bottom
x:delete a char
dd:delete a line
J:join lines
u:undo
ctrl+R :redo
a:apend
o:new line after the cursor
O:new line before the cursor
3k:向上移3行
ZZ:save and exit
:q!:abort and quit
w:向前移动一个单词
b:向后移动一个单词
$:end 移到行尾
^:Home 移到行首
fx:在当前行向前查找x
Fx:在当前行向后查找
tx:在当前行向前查找,光标定位在匹配字符前
Tx:在当前行向后查找,光标定位在匹配字符后
%:查找匹配括号
7G:移动7行
G:移动最后一行行首
gg:移动到第一行行首
50%:移动到行数的50%位置
H:Home头
M:Middle中
L:Last 尾
Ctrl+G:这里显示了你正在编辑的文件的名称,你所处的当前行的行号,全文的总行数,光标
以前的行占全文的百分比,和你所处的列的列号。
:set number 加行号
:set nonumber 去行号
:set ruler 显示光标坐标