对InstallSh...的使用建议
来源:互联网 发布:淘宝手机端的网址 编辑:程序博客网 时间:2024/05/16 17:51
强烈建议大家把自己平时自定义的函数写成一个rul文件,以后要用的时候只要#include一下就可以用了,也方便自己对自己平时写的函数的积累,也方便对这个些对待管理,随着时间你的rul文件会越来越大,你的积累也就越多!
也省得以后写代码的时候还要打开以前的工程,找来找去的,麻烦,也不好维护!
下来我给出自己平时的方法
把自己平时写的函数全部写到一个CoustFunction.url 中
这个文件的内容如下:
/*********************************************************
*
* 文 件 名 : CoustFunction.url
* 作 者 : *****
* 完成日期 : 2007-0-02
* 描 述 : 自定义函数文件( 此文件包含两个自定义函数:1- 遍历目录
* 2- 遍历自定义类型文件)
* 3- 去掉指定文件的只读、隐藏属性
* 4- 结束系统进程
* 修改记录 :
* 数据结构 :
* 备注:
*
*********************************************************/
/*-----------------------------------------------------------------
名称: FindCoustFile
功能: 获取指定目录下的自定义文件的大小和日期,并输出到FindCoustFile.snap中
入参: 1 指定查找的目录
2 指定查找的文件类型,支持通配符,如:*.*;
出参: 查找出来的结果写入到当前目录中FindCoustFile.snap
/*---------------------------------------------------------------*/
export prototype FindCoustFile ( BYREF string, BYREF string );
function FindCoustFile ( svDir, svFile )
LIST listID;
number nLineNumber;
number Count;
string svResult;
number nvFileHandle;
number nvResult;
string svData;
number nvItem;
string tmp;
string svTime;
begin
listID = ListCreate ( STRINGLIST );
ListGetFirstItem ( listID, nvItem );
while (FindAllFiles ( svDir, svFile, svResult, CONTINUE ) = 0 )
GetFileInfo ( svResult, FILE_SIZE, nvResult, svData );
GetFileInfo ( svResult, FILE_DATE, nvResult, svData );
GetFileInfo ( svResult, FILE_TIME, nvResult, svTime );
NumToStr ( tmp, nvResult );
svResult = svResult + " " + tmp + "|" + svData + "//" + svTime;
ListGetNextItem ( listID, nvItem );
ListAddString ( listID, svResult, AFTER );
endwhile;
ListGetFirstString ( listID, svResult );
OpenFileMode ( FILE_MODE_APPEND );
CreateFile ( nvFileHandle, TARGETDIR, "FindCoustFile.snap" );
nLineNumber = 0;
if ( FileInsertLine ( TARGETDIR^"FindCoustFile.snap", svResult, nLineNumber, AFTER ) < 0 ) then
abort;
endif;
Count = ListCount ( listID );
for nLineNumber = 1 to Count - 1
ListGetNextString ( listID, svResult );
FileInsertLine ( TARGETDIR^"FindCoustFile.snap", svResult, nLineNumber, AFTER );
endfor;
ListDestroy ( listID );
end;
自己用的话只需要在工程当中
#include "CoustFunction.url"
然后就可以直接调用你自己的函数了!
也省得以后写代码的时候还要打开以前的工程,找来找去的,麻烦,也不好维护!
下来我给出自己平时的方法
把自己平时写的函数全部写到一个CoustFunction.url 中
这个文件的内容如下:
/*********************************************************
*
* 文 件 名 : CoustFunction.url
* 作 者 : *****
* 完成日期 : 2007-0-02
* 描 述 : 自定义函数文件( 此文件包含两个自定义函数:1- 遍历目录
* 2- 遍历自定义类型文件)
* 3- 去掉指定文件的只读、隐藏属性
* 4- 结束系统进程
* 修改记录 :
* 数据结构 :
* 备注:
*
*********************************************************/
/*-----------------------------------------------------------------
名称: FindCoustFile
功能: 获取指定目录下的自定义文件的大小和日期,并输出到FindCoustFile.snap中
入参: 1 指定查找的目录
2 指定查找的文件类型,支持通配符,如:*.*;
出参: 查找出来的结果写入到当前目录中FindCoustFile.snap
/*---------------------------------------------------------------*/
export prototype FindCoustFile ( BYREF string, BYREF string );
function FindCoustFile ( svDir, svFile )
LIST listID;
number nLineNumber;
number Count;
string svResult;
number nvFileHandle;
number nvResult;
string svData;
number nvItem;
string tmp;
string svTime;
begin
listID = ListCreate ( STRINGLIST );
ListGetFirstItem ( listID, nvItem );
while (FindAllFiles ( svDir, svFile, svResult, CONTINUE ) = 0 )
GetFileInfo ( svResult, FILE_SIZE, nvResult, svData );
GetFileInfo ( svResult, FILE_DATE, nvResult, svData );
GetFileInfo ( svResult, FILE_TIME, nvResult, svTime );
NumToStr ( tmp, nvResult );
svResult = svResult + " " + tmp + "|" + svData + "//" + svTime;
ListGetNextItem ( listID, nvItem );
ListAddString ( listID, svResult, AFTER );
endwhile;
ListGetFirstString ( listID, svResult );
OpenFileMode ( FILE_MODE_APPEND );
CreateFile ( nvFileHandle, TARGETDIR, "FindCoustFile.snap" );
nLineNumber = 0;
if ( FileInsertLine ( TARGETDIR^"FindCoustFile.snap", svResult, nLineNumber, AFTER ) < 0 ) then
abort;
endif;
Count = ListCount ( listID );
for nLineNumber = 1 to Count - 1
ListGetNextString ( listID, svResult );
FileInsertLine ( TARGETDIR^"FindCoustFile.snap", svResult, nLineNumber, AFTER );
endfor;
ListDestroy ( listID );
end;
自己用的话只需要在工程当中
#include "CoustFunction.url"
然后就可以直接调用你自己的函数了!
- 对InstallSh...的使用建议
- 对使用Synchronized的一些建议
- 七牛对用户使用webp图片格式的使用建议
- 对脚本的建议
- 对CSDN的建议
- 对软件的建议
- 对csdn的建议
- 对思归者的建议
- 对计算机专业的建议
- 对思归者的建议
- 对程序员的建议
- 对程序员的建议
- 对考研的建议。
- 对使用Delphi制作DLL复用文件的建议
- 对Tomcat和Eclipse整合使用的朋友一点建议
- 对HTML5中LocalStorage的一些使用建议
- 对使用动态SQL的几点建议
- 对大学生的一些建议
- CSS网页布局DIV垂直居中的各种方法
- ASP.NET2.0中使用AJAX1.0控件的一点经验
- 登山的故事(什么是XP,设计)
- 函数的调用机制_用递归实现栈(Function call machenism_Recursive calls stimulate stack)
- 不写代码已经很多年了
- 对InstallSh...的使用建议
- ajax control toolkit2005的使用方法
- JSP开发中Cookie使用完全详解
- Fileupload使用小结
- C++模板类声明与实现
- Url Rewrite Filter 使用全攻略
- 冒烟测试与BVT测试
- HLSL error X3025的问题
- 软件开发有前途吗?