2009年3月28日

转载:LINUX上快速使用SVN

LINUX上快速使用SVN

服务器端:


    (1) 启动svn服务器:

    svnserve -d -r /home/user/svnserve

    -d 表示以服务启动,-r表示svn服务的根目录

    (2) 检测服务器是否启动:

    netstat -ntlp

    (3) 在服务器目录上创建存贮目录

    svnadmin create myProject

    (4) 进入存贮目录修改权限

    改conf下svnserve.conf 把anon-access = read ,auth_access = write和password-db = passwd 的注释去掉。

    再改passwd,加上你取得服务器上文件的用户名和密码

    myName = mypaswd

    到此为止,你的服务器已经建好了。

    客户端:

    (1)将你现有的工程存到服务器上

    先用kdevelop建立一个用subversion管理的工程myProject

    终端里输入:

    svn import yourproject svn://localhost/myProject -m "这里输入你要的说明"

    服务器会提示你输入用户名和密码

    (2) 从服务端取出你存的文件

    svn co svn://localhost/myProject /home/user/workspace/xxname

    搞定。

    启动kdevelop 从project->import existing project里

    这样就可以从容使用kdevelop集成subversion,svn 不用记这么多命令参数了。

posted @ 2009-03-28 02:19 appleMay 阅读(136) 评论(0) 编辑

2008年6月13日

LPC2132 调试记

posted @ 2008-06-13 03:06 appleMay 阅读(2375) 评论(0) 编辑

2008年1月28日

Trojan.BAT.KillAV.ec杀毒记

2008 Jan 25
病毒名称:Trojan.BAT.KillAV.ec(arp 病毒,打不开网页)

卡巴有查到病毒,但是删除不了,估计这几天学校的局域网的ARP攻击导致的,
装了360ARP防火墙也没能抵挡,前几天提示了好几次拦截成功的信息了!


网上查了解决方法,但是按照上面的提示,
需要找的文件一个也没找到,只是做了下面的一步,删除了注册表,不过值与下面有所不同
[HKEY_LOCAL_MACHINE"SOFTWARE"Microsoft"Windows"CurrentVersion"Explorer"ShellExecuteHooks]
"{DD7D4640-4464-48C0-82FD-21338366D2D2}"=  *


用userlcleaner查毒,有发现系统时间给更改过,每次重设后,又被改回来,没有办法,就用了极端的办法,在安全策略中把允许修改系统时间的所有用户都删除啦


但是,一直PING 192.168.0.1(网关)都不通,将网卡DOWN了重新启用,再重设了IP及DNS (北京网通的为202.106.0.20).  刚开始只重新设置了IP,发现主机及局域网内的机器都能PING通,打开网页,左下角有闪一下,但马上就是网页没有,卡巴升级说是域名解析错误,CMD下PING www.google.com 不行,用另一台机试ping www.google.com (知道google的ip  66.249.89.147)直接ping 66.249.89.147 ,能ping通,在IE地址栏上直接输入http://66.249.89.147 打开了GOOGLE网页啦,终于松了一口气。DNS的问题啦,网上查了下北京网通的DNS,填入,重启,再直接打开网页,久违的网页终于出现。卡巴也终于能升级了,升完级,又在安全模式下进行了全盘扫描,又铲除了一个木马病毒。终于可以告一个段落啦!

对window的命令都不太熟悉,在解决问题的过程中,学了一些命令和小知识:
查看本机IP地址 运行——cmd(命令)——ipconfig ,也可以到网上邻居属性里去看去改
net share 查看所有共享的资源
net user 查看所有用户
sfc/scannow 修复命令
arp -a 查看所有局域网内IP

对付初级黑客的arp攻击,可将右键点击“我的电脑”,选择“属性”,在弹出的系统属性窗口中选择“计算机名”标签页,在“计算机描述”后的文本框的内容改为一个IP地址,最后点击应用即可。

命令提示框输入services.msc,开启arp,在服务中启用remote procedurce call 和Remote proced call locator 不行的话,再启用Dcom server process laucher

    


posted @ 2008-01-28 22:03 appleMay 阅读(430) 评论(0) 编辑

2007年12月31日

新年总结之狼的感悟

    在2007年的倒数第二天,也就是昨天,去了北京动物园。正巧看到管理员给狼喂食的一幕,深有感触,所以在本应写一些自我总结的今天,却写了这样一篇随笔。
    来到动物园已经是中午12点半左右了,差不多在一点左右逛到了狼的铁笼子前面。忽然间,原来比较安静的相互隔着铁笼的狼群忽然热闹起来,所有的狼都来回奔跑起来.一开始我还以为他们在相互进行比赛呢。定睛仔细一看,原来不远处动物园的管理员正推着一车肉缓缓过来。只见管理员来到第一个铁笼子前,将肉从缝里塞进去,才刚塞上去,马上就给这个笼子里的一群狼叨走。强壮的自然抢着多点,而瘦小的则只能拣些剩下的骨头。尤其使我印象深刻的是中间的一个笼子,里面的关着的是一肥一瘦的二条狼。从头自尾,一直是那条强壮的狼霸占着门口,而且,即使他前面已经堆满了很多肉,他还是不允许瘦小的狼靠近门口一步。将所有的肉都占为己有。看着那条瘦小的狼可怜却又无可奈何的样子,心中想:真的是弱肉强食啊!
    其实,现实社会何尝不是这样呢,不充实自己,不使自己变得POWERFUL,又如何能在人生的舞台上同人竞争呢!即使机会来了,也只能看着机会白白溜走。
    暗暗对自己说,要努力,2008年,一定要努力!

   

posted @ 2007-12-31 20:36 appleMay 阅读(46) 评论(0) 编辑

2007年9月12日

如何更好的理解控件的层次关系

今天做项目,在做到dataGrid嵌套dataGrid时,做成了二个模板列,在用FindControl()时,却找不到对应名字的控件。其实还是没有弄清楚理解里面的层次关系。
偶尔想起网上看到的一篇博客调用一个方法可以解决这个问题,与大家分享一下。
  大部分ASP.NET控件都实现INamingContainer接口,包括 DataGrid,  Repeater, 和 the DataList.
下例是建一个带有
DataGrid的form 。以HTML格式输出.

<form id="Form1" method="post" runat="server">

   <asp:DataGrid id=DataGrid1 runat="server" DataSource="<%# employees1 %>"

        AutoGenerateColumns="False"

        OnSelectedIndexChanged="DataGrid1_SelectedIndexChanged"

        OnEditCommand="DataGrid1_EditCommand">

     <Columns>

       <asp:BoundColumn DataField="emp_id" SortExpression="emp_id" HeaderText="emp_id"/>

       <asp:BoundColumn DataField="fname" SortExpression="fname" HeaderText="fname"/>

       <asp:BoundColumn DataField="lname" SortExpression="lname" HeaderText="lname"/>

       <asp:TemplateColumn>

         <ItemTemplate>

           <asp:TextBox Runat="server" ID="TextBox1" />

         </ItemTemplate>

       </asp:TemplateColumn>

       <asp:ButtonColumn Text="Select" CommandName="Select"></asp:ButtonColumn>

       <asp:EditCommandColumn ButtonType="LinkButton" UpdateText="Update"

               CancelText="Cancel" EditText="Edit">

       </asp:EditCommandColumn>

     </Columns>

   </asp:DataGrid>

</form>

form中的DataGird将从一个已知的table里显示数据。使用模板列,在DataGird的每一行增加一个带有ID的TextBox。下面是ASP.NET形成的HTML的内容(浏览器上的源文件):

<table cellspacing="0" rules="all" border="1" id="DataGrid1">

    <tr>

    <td>emp_id</td><td>fname</td><td>lname</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td>

  </tr>

  <tr>

    <td>A-C71970F</td><td>Aria</td><td>Cruz</td><td>

      <input name="DataGrid1:_ctl2:TextBox1" type="text" id="DataGrid1__ctl2_TextBox1" />

    </td><td>

  </tr>

  <tr>

    <td>A-R89858F</td><td>Annette</td><td>Roulet</td><td>

      <input name="DataGrid1:_ctl3:TextBox1" type="text" id="DataGrid1__ctl3_TextBox1" />

    </td><td>

  </tr>

public class FindUtil

{

   public static string DumpParents(Control c)

   {

      StringBuilder sb = new StringBuilder();

      sb.Append(c.ID + " (" + c.GetType().ToString() + ")");

      while(c.Parent != null)

      {

         c = c.Parent;

         sb.Append(" -><br>");

         sb.Append(c.ID + " (" + c.GetType().ToString() + ")");

      }

      return sb.ToString();

   }

}

这里我们可以看到有很多TextBox1的实例,但是每个ID都预先有增加一些的标识符信息的处理。这个行为是因为有INamingContainer在工作。DataGrid实现INamingContainer接口,并且以每个子控件的ID再加上DataGrid1来描述此控件。因此我们可以很马上看出来,DataGrid是使用一个DataGridItem集合控件来呈现每一行的数据。一个DataGridItem 控件也实现INamingContainer接口,用子控件的名字和它自己产生的标识符来描述自己(‘_ctrl2’, ‘_ctrl3’等等)。现在,如果我们使用如下的代码,FindControl将返回一个空值

Control c = Page.FindControl(“TextBox1”)

Page控件找不到TextBox1,因为TextBox控件把自己隐藏在INamingContainer控件集合中。另外,哪个控件是我们真正想要返回的控件呢?是页上的TextBox控件?最后的TextBox控件?有代表性的例子是,当你想要找到一个在DataGrid中TextBox,将会在客户已经选择的指定的行上找TextBox.例如:我们增加一个选择列来允许用户点击一个Hyperlink来选择已选择的列。让我们来试下捕获下TextBox控件SelectedIndexChanged事件吧

以下代码是在选择DataGridItem对象时调用FindControl方法

private void DataGrid1_SelectedIndexChanged(object sender, System.EventArgs e)

{

   TextBox b;

   b = DataGrid1.Items[DataGrid1.SelectedIndex].FindControl("TextBox1") as TextBox;

   if(b != null)

   {

      Response.Write("Sender = " + sender.GetType().ToString() + "<br>");

      Response.Write("Found Textbox1 in SelectedIndexChanged event<br>");

      Response.Write(FindUtil.DumpParent(b));  

}}

我们可以增加一些额外的输出来更清楚地看下TextBox的关系链。 TextBox1控件有个TableCell对象作为父控件,返回一个DataGridItem对象的子控件,这个链一直到Page控件。代码演示如下(运行结果见页末)

public class FindUtil

{

   public static string DumpParents(Control c)

   {

      StringBuilder sb = new StringBuilder();

      sb.Append(c.ID + " (" + c.GetType().ToString() + ")");

      while(c.Parent != null)

      {

         c = c.Parent;

         sb.Append(" -><br>");

         sb.Append(c.ID + " (" + c.GetType().ToString() + ")");

      }

 

      return sb.ToString();

   }

}

  以上代码将使父类控件引用建立一个控件IDS的string对象(当一个控件ID存在---不是所有的在form中的控件都有一个服务端的ID)和控件类型

我们也可以增加一个EditCommandColumn在DataGrid中,便于用户选择一行来编辑。EditCommand event handler 是较简单的,因为第二个参数对于Handler来讲是DataGridCommandEventArgs类型,其包含一个用户已经选择的DataGridItem的引用。

protected void DataGrid1_EditCommand(object source,

                                     DataGridCommandEventArgs e)

{

   TextBox b;

   b = e.Item.FindControl("TextBox1") as TextBox;

   if(b != null)

   {

      Response.Write("Found Textbox1 in EditCommand event<br>");

   }       

}

运行结果如下:
Sender = System.Web.UI.WebControls.DataGrid
Found TextBox1 in SelectedIndexChanged event
TestBox1(System.Web.UI.WebControls.TextBox)->
(System.Web.UI.WebControls.TableCell)->
(System.Web.UI.WebControls.DataGridItem)->
(System.Web.UI.WebControls.DataGridTable)->
DataGrid1(System.Web.UI.WebControls.DataGrid)->
Form1(System.Web.UI.HtmlControls.HtmlForm)->
(ASP.FindControl4pre_aspx)

英文网址如下:
http://www.odetocode.com/Articles/116.aspx

posted @ 2007-09-12 22:25 appleMay 阅读(171) 评论(0) 编辑

Linux系统中tomcat的按装

**按装tomcat
1.使用虚拟光驱导入带有JDK的包的ISO镜像。
2.挂载光驱 mount /dev/cdrom  /media(挂载到/media上,可自己建立个挂载目录)
3.cd /media  进入到里面查看
    ls -al
  . .. accp (有accp存在)
    cd accp
  ls -a(看有三个包)
4.cp *  /home(将所有的东西复制到home下)
(Fedora-Core-1-i386.tar.gz/jakarta-tomcat-5.5.9tar.gz/jdk-1_5_0_05-linux-i586-rpm.bin)
copy 后别忘记将光盘解挂
5.java -version(查询当前系统的jdk版本,发现是1.4.2版本的
6.cd /home 进入home下执行bin
   ./jdk-1_5_0_05-linux-i586-rpm.bin(.bin即执行  ./文件名 执行)
同意按装 y 就开始解压 按装后发现 多了二个jdk
   (jdk-1_5_0_05-linux-i586.rpm /jdk-1_5_0_05-linux-i586-rp)
   另外 jdk 按装后是在 /usr/java/下面
7.做个链接 ln /usr/java/jdk1.5.0_05  /usr/jdk(为了方便引用)
8.vi /etc/profile (全局性的,会对所有用户都生效)
写在文件的最后
export JAVA_HOME=/usr/jdk
    export PATH=$PATH:$JAVA_HOME/bin
    export CLASSPATH=$JAVA_HOME/lib
shift+zz 保存退出 
用cat /etc/profile 再确认一次是否已经更改成功
    java -verion(发现是系统中的JDK),存在于
   /usr/bin/java
   将原先版本的jdk改名:mv /usr/bin/java /usr/bin/java.bak
   在未改名之前 java -version是1.4改了版本后 执行java -version 会讲没有此文件和目录
   查看jdk有没有按装  rpm -q jdk r(-qa 是查看所有带有jdk的版本)

logout注销,再登录(也可以执行 /etc/profile 即可)
java -verion发现已是安装的JDK版本


**配置tomcat
1.进入 cd /home
2. tar zxvf jakarta-tomcat-5.5.9.tar.gz -C /usr/local 将tomcat 解压到 /usr/local
3. cd /usr/local  ls -al 查看到tomcat
4. cd tomcat- jakarta-tomcat-5.5.9(用tab可以补齐)
5. ls 看到 bin 
   cd  bin 进入bin  再ls 看到有startup.sh 和 shutdown.sh
此处直接运行  startup.sh 即可(路径在 /usr/local/tomcat/bin下) shutdown.sh
服务器浏览器访问http://localhsot:8080
    客户端 http://192.168.1.110:8080 此IP地址为服务器端的IP地址
6. 如果还不能登录  vi startup.sh 进行更改 
    在...部分 加入上面的三行 同时加 export CATALINA_HOME=/usr/local/tomcat
    vi /etc/rc.d/local
    touch 下行 /usr/local/tomcat/bin/startup.sh
7.要修改tomcat 的端口号 
cd /usr/local/tomcat/bin/conf
    vi tomcat-users.xml
   将connet port 改为80 
8.发布路径在 /usr/local/jakarta-tomcat-5.5.9/webapps/ROOT/
  如果是jsp (下面有jsp 和web-config)

 

posted @ 2007-09-12 00:50 appleMay 阅读(200) 评论(0) 编辑

Linux中如何telnet


1.ifconfig命令查看当前的IP。若无,用ifconfig eth0 192.168.1.10来配制(举例)
2.打开widow的Vmware 1 查看Ip是否在一个段上 配为192.168.1.20(请确定网卡配置是选择host-only)
3.  rpm -qa(所有的) | grep telnet 查看有无装telnet 或者用rpm -q telnet-server
   显示 telnet-0.17-31.EL4.3 即表示已装
4. cd /etc/xinetd.d 启动telnet开关
   (a)chkconfig telnet on
   (b)修改 telnet or krbs-telnet文件的 中的disable改为no
    以上二种方法都可
注意:如果不能启动 可能是这二个文件都打开了,将其中一个的disable改为yes就行

5.重新启动 /etc/rc.d/init.d/xinetd restart 
  netstar -an | grep:23 检查23号端口是否打开
6.注意虚拟的网卡一定要设为host-only ,并用lokkit将防火墙关闭,还有linux安全也要设为disable
7.不可以root登陆,要新建一个用户
  groupadd a 
  useradd -g a may
  passwd may(后面要有用户名,否则会默认修改当前用户的密码的) 提示输入密码
8.在远程用window用cmd 打开 ,先ping 192.168.1.10看能否连接上
  连上后,用telnet 192.168.1.10 以用户may 登录后用 su- 切换成root用户



posted @ 2007-09-12 00:30 appleMay 阅读(379) 评论(0) 编辑

2007年9月5日

关闭无用的window启动项

posted @ 2007-09-05 00:24 appleMay 阅读(3591) 评论(0) 编辑

2007年8月22日

关于ORACLE的按装问题

posted @ 2007-08-22 02:04 appleMay 阅读(49) 评论(1) 编辑

2007年5月2日

CSS学习总结

posted @ 2007-05-02 15:25 appleMay 阅读(1048) 评论(3) 编辑

仅列出标题  下一页

导航

统计

公告