首 页 网络编程
网页制作 图形图象 操作系统 冲浪宝典
软件教学 认证考试

网络安全 网络办公 行业资讯 评测对比
您当前位置:站长天空 -> 网络安全-> 黑客攻防
在vb中取得windows的当前目录_visualbasic教程
作者:网友供稿 点击:0
推荐
西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金
站内搜索
文章页数:[1] 
很多情况下我们需要在程序中确定当前Windows的目录,VB中自身并没有这样的函数,但我们可以借助WindowsAPI来达到目的,这个关键的函数就是:Kernel32中的GetWindowsDirectory。

  首先要在新建的程序中加入一个Module,在该Module中作如下声明:

DeclareFunctionGetWindowsDirectoryLib“kernel32”Alias“GetWindowsDirectoryA”(ByVallpBufferAsString,ByValnSizeAsLong)AsLong
  
  这里的几个参数说明一下:lpBuffer是一个字符串,用以返回Windows的目录值(实际上是一个指针),这个目录值不带反斜杠的,比如C:\Windows,但有一种情况例外:当Windows安装在根目录下时返回反斜杠,比如C:\;第二个参数是前一个字串的长度,你得告诉系统为返回值预留的字串的最大长度(其实这个参数实在有些鸡肋的感觉);函数的返回值,在成功的情况下是目录字符串的长度,在不成功时返回NULL值,还有一种情况,就是返回值超出预留的串长度,那么该函数就返回实际值应有的长度。

  函数说明完毕,可以看到,为了防止出错情况,函数引入了nSize参数,但只要使用下述经典的取目录代码,可保证程序平稳运行。

PublicFunctionMyGetWinDirectory()AsString
  DimsBufferAsString
  DimlSizeAsLong
  sBuffer=String(255,0)
  lSize=GetWindowsDirectory(sBuffer,Len(sBuffer))
  sBuffer=Left(sBuffer,lSize)
  sBuffer=sBuffer+“\”
  MyGetWinDirectory=sBuffer
EndFunction
  
  这里程序首先为字符预留了255Bytes,应该是足够了,不会有人用这么长的Windows目录名的,更重要的是超出255的长文件名Windows是不支持的;然后调用GetWindowsDirectory函数,通过返回值lSize截取缓冲区中有用的部分重新定义sBuffer;最后再加上反斜杠,形成完整的路径名。

  现在你可以试一下你的新函数:在窗体Form1中加入一个文本框Text1,然后再加入一个命令键Command1,在Command1_Click()事件中加入以下代码:

 PrivateSubCommand1_Click()
  Text1=MyGetWinDirectory
  MsgBoxText1
 EndSub
 
  最后运行程序,占击一下Command1,看一下实际的运行效果。

以上程序在中文Windows98,VB6中通过。

->


文章整理:站长天空 网址:http://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

文章页数:[1] 


放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·J2EE平台介绍-JSP教程,J2ME开发
·自己制作友好的页面“确认对话框”-ASP教程,ASP应用
·DataAdapter是如何更新数据库数据的?-.NET教程,数据库应用
·jsp项目中实现关闭浏览器后吊线,只要不关闭不操作也保持在线-JSP教程,Jsp/Servlet
·企业Java技术开发技巧2则-JSP教程,Java技巧及代码
·刚刚整理好-汉字转拼音缩写的函数-.NET教程,评论及其它
·关于数据返回给调用页面-ASP教程,数据库相关
·如何使用C#压缩文件及注意的问题!-.NET教程,C#语言
·数据库安装程序-.NET教程,数据库应用
·DataGrid的自定义分页UserControl-.NET教程,数据库应用
最新文章
·王通:网站推广的18种秘笈_营销推广
·什么是mfa,以及停止mfa的好处_网赚技巧
·google adsense 域名保护功能是否作恶_网赚技巧
·关于无效点击-adsense团队资深专员如是说_网赚技巧
·google adsense将以人民币支付_站长访谈
·bbmao的神秘配方:打破中文聚类搜索的低迷_站长访谈
·你的网站为什么粘不住流量?_站长心得
·决定网站成败重要的六个因素_站长心得
·widnows vista是吃内存大户 优化vista攻略_windows vista
·首页所应该达到的几个目标(1)_站长心得
相关主题
西部数码虚拟主机

友情链接
CNNIC 西部数码
万网 自助建站
虚拟主机 asp空间
域名注册 域名
域名申请 主页空间
论坛空间 网站空间
国际域名 虚拟空间
空间租用 DDOS防火墙
成都主机托管 四川主机托管
主机租用 服务器租用
网站目录 自助建站
虚拟主机 网址大全
软件下载
自助链接
虚拟主机资讯 特价虚拟主机
版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
关于我们:站长天空:专业提供最新的站长资讯、在线教程、虚拟主机权威评测、虚拟主机性能对比、网站制作教程,开发教程,站长工具。包括网页制作教程、冲浪宝典、编程参考、操作系统、软件教学、行业动态等。
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
发表评论 打印  刷新     关闭