• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

如何提高调用Window API函数编程技巧

发布: 2007-6-21 21:57 | 作者:   | 来源: yesky  | 查看: 28次 | 进入软件测试论坛讨论

领测软件测试网

   


  一.创建临时文件

  ---- 临时文件用来保存软件运行过程中的临时变化,这对于熟悉WORD等软件的人来说,经常会遇到。那么临时文件是如何产生的呢,其实很简单,只需要一个API函数就可以。

  ---- 1.拷贝声明函数(方法同前)

  
Private Declare Function GetTempFileName Lib "kernel32" _
  Alias "GetTempFileNameA" (ByVal lpszPath As String, _
  ByVal lpPrefixString As String, ByVal wUnique As Long, _
  ByVal lpTempFileName As String) As Long

  参数定义如下:

  lpszPath =传入保存临时文件的路径 ,如"C:\mytemp"

  lpPrefixString=传入临时文件名开始的前三个字母,

  起到帮助识别临时文件来源的作用。

  wUnique =0 ,windows随机产生文件名;否则安其值定义文件名。

  lpTempFileName=返回随机文件名

  ---- 2.返回临时文件名

Private Function GenTempName(sPath As String)
  Dim sPrefix As String
  Dim lUnique As Long
  Dim sTempFileName As String

  If IsEmpty(sPath) Then sPath = "c:\temp"
  sPrefix = "TVB"
  lUnique = 0 'windows随机给名

  sTempFileName = Space$(100)
  GetTempFileName sPath, sPrefix, lUnique, sTempFileName
  sTempFileName = Mid$(sTempFileName, 1,
  InStr(sTempFileName, Chr$(0)) - 1) '去掉多余空格
  GenTempName = sTempFileName
End Function


  ---- 3.将下面代码加入到form1_click()事件中

  MsgBox GenTempName("c:\temp")

-  --- 4.运行,鼠标点击form,弹出msgbox,显示生成"c:\temp\TVB724.tmp"文件,用文件管理器查看,在c:\temp下有TVB724.tmp 文件,长度为0K。

  ---- 需要注意的是,传入的路径必须是有效路径,否则GenTempName函数返回0,lpTempFileName中也没有临时文件名。

  二.结束语

  ---- 从上面可以看出,API函数的确简单高效,但也充满一些看似高深的变量而使人却步。我们不禁会问,究竟什么时候要用到API函数?具体哪些函数可以解决我的问题?,那些函数中的变量都代表什么?其实对这些问题,即使对一个VB高手也难给出明确的回答,因为API函数库实在太庞大了,每一个人最终只能熟悉其中的一小部分(这也可能是调用API的文章层出不穷的原因吧)。总结自己的一点经验,我觉得应该注意以下几点。

  ---- 1.熟练掌握VB基本技巧,了解其所能所不能,这是最基本的要求。

  ---- 2.了解WINDOWS内部控制机理,这样对一些复杂的问题就可以逐步分析其调用机制,初步确定采用哪部分的API函数来解决问题。

  ---- 3.案头必备一本最新的VB版的WINDOWS API 大全。

  ---- 4.多看别人的程序。报纸杂志,尤其是网上这方面的文章数不清。这是最快的方法。

  ---- 5.随用随查。永远不要在用不到的函数上浪费宝贵的时间

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网