看不懂的代码

bite119 2005-01-27 11:17:31
Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long

这么长一段啥意思?
在后面调用了这个函数
pIntRetValue = GetPrivateProfileString("IRRL FA DB", "SERVER", "FAILED", pStrBuffer, 255, App.Path & "\irrldb.INI")

可是为什么这个函数没函数体?
...全文
108 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
dyshadow 2005-01-28
  • 打赏
  • 举报
回复
也就是在你程序之外有一个函数库,你要使用这个函数库中的函数就必须先对其进行声明。也就是你所看到的这么多“一大堆”。
bite119 2005-01-28
  • 打赏
  • 举报
回复
Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long

这段话定义啥。
Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
我看不懂啊,不是vb语言啊。啥意思?
wumylove1234 2005-01-28
  • 打赏
  • 举报
回复
这段话定义啥。
Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
我看不懂啊,不是vb语言啊。啥意思?

//这就是VB中引用动态库的语法啊.
Private Declare Function 私用
GetPrivateProfileString Lib "kernel.32" 函数名,和指出此函数的位置
Alias "GetPrivateProfileStringA" 别名
(ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
参数和返回值.
zyg0 2005-01-28
  • 打赏
  • 举报
回复
为初始化文件中指定的条目取得字串
返回值
Long,复制到lpReturnedString缓冲区的字节数量,其中不包括那些NULL中止字符。如lpReturnedString缓冲区不够大,不能容下全部信息,就返回nSize-1(若lpApplicationName或lpKeyName为NULL,则返回nSize-2)
参数
lpApplicationName - String,欲在其中查找条目的小节名称。这个字串不区分大小写。如设为vbNullString,就在lpReturnedString缓冲区内装载这个ini文件所有小节的列表

lpKeyName ------ String,欲获取的项名或条目名。这个字串不区分大小写。如设为vbNullString,就在lpReturnedString缓冲区内装载指定小节所有项的列表

lpDefault ------ String,指定的条目没有找到时返回的默认值。可设为空("")

lpReturnedString - String,指定一个字串缓冲区,长度至少为nSize

nSize ---------- Long,指定装载到lpReturnedString缓冲区的最大字符数量

lpFileName ----- String,初始化文件的名字。如没有指定一个完整路径名,windows就在Windows目录中查找文件
主要是用在对ini文件的操作

kmzs 2005-01-28
  • 打赏
  • 举报
回复
API的函数体在DLL中
撸大湿 2005-01-28
  • 打赏
  • 举报
回复
去买本书看看拉
或这你到这上面去看看
www.applevb.com
dyshadow 2005-01-28
  • 打赏
  • 举报
回复
当然是API方面的书了。实际上如果使用WINDOWS API,你只要知道什么函数做什么用、参数是什么,根本没有必要太了解什么意思 。
bite119 2005-01-28
  • 打赏
  • 举报
回复
请问这方面知识应该看哪书?
bite119 2005-01-27
  • 打赏
  • 举报
回复
到底啥意思啊?
viena 2005-01-27
  • 打赏
  • 举报
回复
只要把所需的DLL文件放在程序可执行程序文件夹或系统文件夹system32下就可以了
viena 2005-01-27
  • 打赏
  • 举报
回复
就是DLL(动态链接库)
bite119 2005-01-27
  • 打赏
  • 举报
回复
用API要装什么插件吗?
yangao 2005-01-27
  • 打赏
  • 举报
回复
此为API函数
作为一个编程初学者来说,API函数也许是一个时常耳闻却感觉有些神秘的东西。单看它的复杂语法,就足令人望而生畏,但是任何事物在我们深入了解它之前,总是会有这种感觉的。我们这篇API入门教程的目的,就是要把API函数的来龙去脉告诉大家,破除对API函数的畏惧,使它成为我们编程的好助手。

  大家可能在许多书上看到过API的英文全称(Application Programming Interface),WIN32 API也就是MicrosoftWindows 32位平台的应用程序编程接口。对这个定义的理解,需要追溯到操作系统的发展历史上,当WINDOWS操作系统开始占据主导地位的时候,开发WINDOWS平台下的应用程序成为人们的需要。而在WINDOWS程序设计领域处于发展的初期,WINDOWS程序员所能使用的编程工具唯有API函数,这些函数是WINDOWS提供给应用程序与操作系统的接口,他们犹如“积木块”一样,可以搭建出各种界面丰富,功能灵活的应用程序。所以可以认为API函数是构筑整个WINDOWS框架的基石,在它的下面是WINDOWS的操作系统核心,而它的上面则是所有的华丽的WINDOWS应用程序。(配图1)

  

  但是,那时的WINDOWS程序开发还是比较复杂的工作,程序员必须熟记一大堆常用的API函数,而且还得对WINDOWS操作系统有深入的了解。然而随着软件技术的不断发展,在WINDOWS平台上出现了很多优秀的可视化编程环境,程序员可以采用“即见即所得”的编程方式来开发具有精美用户界面和功能强大的应用程序。

  这些优秀可视化编程环境操作简单、界面友好(诸如VB、VC++、DELPHI等),在这些工具中提供了大量的类库和各种控件,它们替代了API的神秘功能,事实上这些类库和控件都是构架在WIN32 API函数基础之上的,是封装了的API函数的集合。它们把常用的API函数的组合在一起成为一个控件或类库,并赋予其方便的使用方法,所以极大的加速了WINDOWS应用程序开发的过程。有了这些控件和类库,程序员便可以把主要精力放在程序整体功能的设计上,而不必过于关注技术细节。

  实际上如果我们要开发出更灵活、更实用、更具效率的应用程序,必然要涉及到直接使用API函数,虽然类库和控件使应用程序的开发简单的多,但它们只提供WINDOWS的一般功能,对于比较复杂和特殊的功能来说,使用类库和控件是非常难以实现的,这时就需要采用API函数来实现。

  这也是API函数使用的场合,所以我们对待API函数不必刻来研究每一个函数的用法,那也是不现实的(能用的到的API函数有几千个呢)。正如某位大虾所说:API不要去学,在需要的时候去查API帮助就足够了。

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧