<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0059)http://wlbookwl.diy.myrice.com/jck2002/01/0201116vbtemp.htm -->
<HTML><HEAD><TITLE>用VB创建临时文件</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META
content=编程先锋----给你无限编程动力,vc、vb、delphi、c++、汇编电子书籍全面下载,大量编程技术文章,你一定不会空手而归…………
name=description>
<META content=编程先锋,VB,VC,DLEPHI,asm,编程电子书籍下载,技术文章,编程工具,超精品软件 name=keywords>
<STYLE type=text/css>TD {
FONT-SIZE: 9pt
}
.td1 {
FONT-SIZE: 14pt
}
P {
FONT-SIZE: 9pt
}
</STYLE>
<META content="MSHTML 6.00.2800.1106" name=GENERATOR></HEAD>
<BODY text=#000000 bgColor=#ffffff>
<TABLE borderColor=#cccccc height="100%" cellPadding=10 width="91%"
align=center>
<TBODY>
<TR>
<TD class=td1 vAlign=center align=middle bgColor=#339900 height=2><B><FONT
color=#ffffff>用VB创建临时文件</FONT></B></TD></TR>
<TR>
<TD vAlign=top align=left bgColor=#fafafa height=30><BR> 在Visual
Basic中开发应用程序时,可能会需要在磁盘上创建一 个临时目录或文件,本文介绍如何在Visual Basic 中创建临时文件。
<BR> 使用GetTempFileName函数 <BR> Windows API函数中的GetTempFileName函数可以用来在指定的磁
盘驱动器上创建一个新的文件。尽管所创建的文件是一个临时文件, 但不再需要它的时候,程序员还是需要将它从磁盘上物理地删除掉。
<BR> 要在VB中使用GetTempFileName函数,必须将如下声明语句包含在 程序中(请注意该声明语句需要书写在一行内):
<BR> Private Declare Function GetTempFileName Lib"kernel32" A
lias"GetTempFile NameA" (ByVal lpszPath As String, ByVal lpP refixString
As String, ByVal wUni que As Long, ByVal lpTempF ileName As String) As
Long <BR> 该GetTempFileName函数需要4个参数: <BR> 第一个参数是希望创建新文件的驱动器和/或路径的名称,在下面
的样例程序中,新文件创建在驱动器C的根目录下。 <BR> 第二个参数是指派给文件名称的前缀。如果将该前缀指定为"TES
T",则函数将把创建的新文件名称的前四个字符设置为"TEST",即"TES T*.TMP"。
<BR> 第三个参数应该被设置为0,告诉该函数为文件名称自动产生随机 号码。该随机号码会被添加到前缀字符的后面,以产生一个独特而且
完整的文件名称。 <BR> 第四个参数是一个字符串缓存,它至少要有256个字符的长度,以 存放临时文件的名称。
<BR> 在调用该函数之后,新文件创建在指定的磁盘上。这里重申一下, 当退出应用程序时,必须物理地将该文件从磁盘上删除。 <BR> 样例程序
<BR> 该程序显示了如何在VB应用程序中创建一个临时文件。 <BR> 1.在Visual
Basic中开始一个新的工程,采用缺省的方法建立For m1。 <BR> 2.将如下声明语句添加到Form1的通用声明部分中(请注意该声明
语句需要被书写在一行内): <BR> Private Declare Function GetTempFileName Lib"kernel32"
A lias"GetTempFile NameA"(ByVal lpszPath As String, ByVal lpPr efixString
As String, ByVal wUniq ue As Long, ByVal lpTempFi leName As String) As
Long <BR> 3.将如下代码添加到Form1的Form_Load事件中: <BR> Private Sub Form_Load()
<BR> Text1.TEXT = "" <BR> End Sub
<BR> 4.在Form1上添加一个文本框控件,采用缺省的方法建立Text1。
<BR> 5.在Form1上添加一个命令按钮控件,采用缺省的方法建立Comman d1。
<BR> 6.将如下代码添加到Command1的单击事件中: <BR> Private Sub Command1_Click()
<BR> Dim FilePrefix As String <BR> Dim NewFile As String * 256
<BR> FilePrefix = "TEST" <BR> NewFile = GetTempName(FilePrefix)
<BR> Text1.TEXT = NewFile <BR> End Sub
<BR> 7.创建一个新的名为GetTempName的函数,将如下代码添加到该函 数中: <BR> Private Function
GetTempName(TmpFilePrefix As String) As String <BR> Dim TempFileName As
String * 256 <BR> Dim X As Long <BR> Dim DriveName As String <BR>
DriveName = "c:" <BR> X = GetTempFileName(DriveName, TmpFilePrefix, 0,
TempFi leName) <BR> GetTempName = Left$(TempFileName,
InStr(TempFileName, Ch r(0)) - 1) <BR> End Function
<BR> 按下F5键,执行本样例程序.单击命令按钮,在驱动器C的根目录下创建一个新的临时文件.该新创建的文件的名称被显示在文本框控件中.<BR>
<P></P></TD></TR></TBODY></TABLE><BR>
<DIV align=center></DIV>
<P align=center>资料整理:<a href="http://wlbookwl.myrice.com/" target=_blank rel='nofollow' onclick='return false;'>编程先锋
http://wlbookwl.myrice.com</A> 站长:小黑侠 </P></BODY></HTML>