I can believe fly.

Wednesday, April 28, 2010

mput使用手记

mput使用手记

说明:以下是win下使用wput工具的情况
工具下载地址:http://sourceforge.net/projects/wput/files/wput/pre0.6/wput-pre0.6.zip/download
使用手记:
1. 目标ftp路径未尾要带有/号
错误: wput E:\WorkDir\temp\123 ftp://user:pwd@10.20.1.1/Public/yusulian
正确: wput E:\WorkDir\temp\123 ftp://user:pwd@10.20.1.1/Public/yusulian/

2. 数据上传的目录结构
执行: wput E:\WorkDir\temp\123 ftp://user:pwd@10.20.1.1/Public/yusulian/
结果: ftp的存放路径为Public/yusulian/E:/WorkDir/temp/123
为了保持干净的目标目录,则可以
执行:E:\WorkDir\ftp\wput .\2008 ftp://user:pwd@10.20.1.1/Public/yusulian/
结果: ftp的存放路径为Public/yusulian/2008

3. 上传一半数据提示信息错误,skipping file:...........
答;不明真相

4. 换种执行方式(3问题还是存在)
## 将要上传的文件写入list.txt 
find . -type f >> list.txt 
## 将要上传的文件写入list.txt 
for /F %%f in (list.txt) do  E:\WorkDir\ftp\wput "%%f"  ftp://user:pwd@10.20.1.1/Public/yusulian/


Thursday, April 15, 2010

NET USE 命令用法

NET USE命令使用指南

NET USE 命令说明

    将计算机连接到某个共享资源或与其断开连接,或者显示有关计算机连接的信息.

该命令还控制永久性网络连接.在没有参数的情况下使用,net use 可以检索网络连接列表.

NET USE 命令用法

net use

## 列出本机网络连接

net use \\IP\ipc$ /user:"帐号" "密码"  

## 建立与指定IP的IPC$(空连接)

net use z:\\IP\c$ /user:"帐号" "密码"

## 将对方的c盘映射为自己的z盘

net use \\IP\ipc$ /d

## 删除与指定IP的IPC$连接

net use z: /d

## 删除本机映射的z盘

net use * /d

## 删除本机所有映射和IPC$连接

NET USE语法

[devicename | *] [\\computername\sharename[\volume] [password | *]]

        [/USER:[domainname\]username]

        [/USER:[dotted domain name\]username]

        [/USER:[username@dotted domain name]

        [/SMARTCARD]

        [/SAVECRED]

        [[/DELETE] | [/PERSISTENT:{YES | NO}]]

NET USE {devicename | *} [password | *] /HOME

NET USE [/PERSISTENT:{YES | NO}]

NET USE参数说明

1.       DeviceName:指派名称以便连接到资源或指定断开的设备.有两种类型的设备名: 磁盘驱动器号(即 D: 到 Z:} 和打印机(即 LPT1:到 LPT3:}.如果键入星号而不是特定设备名,则系统会指派下一个可用的设备名.这个名称以后可以作为访问共享资源的名称进行引用.

2.       \\computername:指控制共享资源的计算机的名字.如果计算机名中包含有空字符,就要将双反斜线 (\\) 和计算机名一起用引号 (" ")括起来.计算机名可以有1 到 15 个 字符.\volume :指定一个服务器上的NetWare卷.用户必须安装 Netware 的客户服务 (Windows 工作站) 或者 Netware 的网关服务(Windows 服务器) 并使之与 NetWare 服务器相连. Password:指定访问共享资源所需的密码.输入星号 (*) 产生一个密码提示在密码提示行处键入密码时不显示密码.

3.       /user:在其后指定建立连接时使用的不同于目前登录用户的用户名.DomainName:指定不同于目前登录域的其他域.如果省略则net use使用当前登录的域.注意,/user:后的登录用户和域可以有三种不同的表示形式,分别为domainname\username,dotted domain name\username和username@dotted domain name,其中dotted domain name提指域名的全称,如office.yesky.com,也即域名加域后缀的完全形式.

4.       /SAVECRED:指定保留用户名和密码.除非命令提示输入用户名和密码.否则此开关被忽略

5.       /SMARTCARD:指定连接使用在智能卡上的凭据.

6.       /delete:取消指定的网络连接.如果使用星号 (*) 指定连接,则所有网络连接均将取消.

7.       /persistent:{yes | no}:控制持久网络连接的使用.默认值为最后一次使用的设置.非设备连接不会持久.Yes 将按其建立时的原样保存所有连接,并在下次登录时还原它们.No 则不保存已建立的连接或后续连接.现存的连接在下一次登录时还原.使用 /delete 删除持久连接.

Net use命令还有另两种使用格式,分别如下:

  NET USE {devicename | *} [password | *] /HOME

  NET USE [/PERSISTENT:{YES | NO}]

  其中第一种命令格式将用户连到其域的主目录并将主目录映射为设备名DeviceName.后一种格式用来修改持久连接的使用.

NET USE断开例子

C:\Documents and Settings\admin>net use \\192.168.1.10\IPC$ /delete

有打开的文件和/或没有结束的目录搜索.[exec] 是否继续断开连接并强行关闭? (Y/N) [N]:

要去掉“是否继续断开连接并强行关闭? (Y/N)”,加参数"/yes"即可,如下:

C:\Documents and Settings\admin>net use \\192.168.1.10\IPC$ /delete /yes

\\192.168.1.10\IPC$ 已经删除


Monday, April 5, 2010

关于Fatal Error C1902的错误

关于Fatal Error C1902的错误


需求: 有个开发人员有个需求要在构建服务器调试程序,说是本地编译出来的文件会崩溃服务器上不会.

为了不跟构建环境混肴,另外开通了一个账号给他使用且要求要用开始->所有程序->附件->通讯->远程桌面工具登录
开发人员在使用vs2005编译程序时,出现如下错误:
 Error 1 fatal error C1902: Program database manager mismatch; please check your installation
奈闷了,换个账号也不行.在网上查了一下 fatal error C1902获取如下资讯
Fatal Error C1902

Error Message

program database manager mismatch; please check your installation

A program database file (.pdb) was created using a newer version of mspdb80.dll than the one found while compiling.

This error usually indicates that mspdbsrv.exe or mspdbcore.dll are missing or have different versions from mspdb80.dll. Ensure matching versions of mspdbsrv.exe, mspdbcore.dll, and mspdb80.dll are installed on your system.

解决方案参考:
Here are steps how I got it and solve:1. 
I like to compile some sources from the command prompt, so I added to the PATH environment variable - "C:\Program Files\Microsoft Visual Studio 8\VC\bin\".
 After that I had to copy some files from "C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\" to get cl.exe working (one of files was mspdb80.dll).
2. Some time later I tryed to compile a project from MSDev and got C1902 error.
3. With MSDN search I got to this place to see Jonathan Caves's helpful message about mspdbsrv.exe.
4. I just copied that EXE to \VC\bin\ and everithing becomes Ok.5. Now I can compile anything from both MSDev and C:\ :)
本人直接解决方式:
1. 将C:\Program Files\Microsoft Visual Studio 8\Common7\IDE下的三个文件mspdb80.dll、mspdbsrv.exe、mspdbcore.dllcopy到C:\Program Files\Microsoft Visual Studio 8\VC\bin\
2. 重启系统

cc.net与hudson比较报告

cc.net与hudson比较报告

 

 

 

目录

 

 

 

 

前言              2

一、              优势              2

cc.net优势              2

Hudson优势              2

二、              看点              2

脚本配置方式              2

SVN仓库监控              3

构建触发器              4

Nant脚本启动支持              4

构建中断              5

构建报告查阅              6

构建报告发送方式              6

三、              结论              8

四、              相关资讯              8

 

   

 

前言

cc.net是持续工具CruiseControl的.net版本,采用.Net框架实现,提供了对于Windows平台和.Net编程更多更友好的支持。Hudson持续工具则是运行于java环境。两者比较如下:

1     优势

cc.net优势

1.               有第三方工具cctray监控构建状态

2.               构建结果的报告有html格式,简洁查

Hudson优势

1.               易于安装部署

2.               友好的脚本配置界面

3.               构建进度即时掌握

4.               支持分布式构建

5.               远程监控外部定时任务

6.               插件方便管理

7.               支持用户管理

8.               支持构建队列控制

2     看点

脚本配置方式

1. CC.NET需要利用第三方工具CCNETConfig来支持脚本配置以保证脚本格式可靠.

2. hudson工具本身Dashboard平台就提供了友好的web-UI

SVN仓库监控

1. CC.NET支持众多的版本控制工具,以下SVN控制块的参考信息

2. hudson可以支持众多的版本控制工具,可以通过插件管理加载.以下默认最基本的CVS/SVN

构建触发器

1.      cc.net支持以下几种构建启动时间方式

2.      hudson 

Nant脚本启动支持

1. CC.NET支持调用NANT脚本,配置形式:

2. hudson有nant支持插件,以下是工具路径及信息配置的形式:

构建中断

1. cc.net可以通过监控工具cctray或web构建视图选中构建对象,在弹出如下的快捷菜单里选abort build

2. hudson可以在Build History中,在构建进行中的报告旁边有X按钮,单击它可以关闭

构建报告查阅

1.  cc.net的构建报告是在构建结束后生效的

2.  Hudson支持即时日志查阅即在构建进行中跟踪构建进度(亮点)

构建报告发送方式

1.  cc.net

邮件通知

Rss支持

2.      Hudson支持email发送

邮件通知

通过rss定阅(for all/for filures)

3     结论

                 结合现有构建环境是由cc.netnant实现,所有构建业务(编译/打包/签名)都是由nant脚本来完成,所以不管是用cc.net还是用hudson,其要做的事情不多,最常见也就监控源码变化,指定构建周期,启动nant脚本,发送构建报告这几个.

              我们引入一个需求假设一次构建有3个任务要跑:删除代码重取,编译,打包(已用ant/Nant实现这3任务)求:

1. 全取全编即构建时代码全部删除,3个任务全执行

2. 部分编译即只需要删除部分代码,只执行个别任务(如编译动作)

那么,cc.net你需要配置多个project来支持;hudson你需要配置多个job来支持.

当项目少,版本少这种支持方式完全足够;但当项目多,版本开发协作分支线多,这种支持方式不方便了:构建脚本冗余/维护代价高.这时候我们一定希望工具有以下几个支持点:

1. 只需配置源码仓库就可以自动关联,支持选中任意开发线都可以构建

2. 各构建业务环节(编译/打包)可以独立进行也可以任意组合

3. 可以灵活指定历史版来作构建

4     相关资讯

1.        cc.net官网: http://ccnet.thoughtworks.com

2.        hudson官网: http://hudson-ci.org/

3.        大量CI工具比较: http://confluence.public.thoughtworks.org/display/CC/CI+Feature+Matrix

1/8