⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 writereadini.prg

📁 VFP调用第三方接口动态库
💻 PRG
字号:
*-- 从SYSTEM.INI文件中读取系统常见硬件设备信息
DECLARE INTEGER GetPrivateProfileString IN Win32API AS GetPrivStr ;
  String cSection, String cKey, String cDefault, String @cBuffer, ;
  Integer nBufferSize, String cINIFile
lcIniFile = getenv("windir") + "\system.ini" 
*-- 读取系统
lcBuffer = space(100) 
=GetPrivStr("boot.description", "system.drv", "", ;
               @lcBuffer, LEN(lcBuffer), lcIniFile)
lcSystem = allt(lcBuffer)
lcSystem = left(lcSystem,len(lcSystem)-1)

*-- 读取键盘
lcBuffer = space(100) 
=GetPrivStr("boot.description", "keyboard.typ", "", ;
               @lcBuffer, LEN(lcBuffer), lcIniFile)
lcKeyBoard = allt(lcBuffer)
lcKeyBoard = left(lcKeyBoard,len(lcKeyBoard)-1)

*-- 读取鼠标
lcBuffer = space(100) 
=GetPrivStr("boot.description", "mouse.drv", "", ;
               @lcBuffer, LEN(lcBuffer), lcIniFile)
lcMouse = allt(lcBuffer)
lcMouse = left(lcMouse,len(lcMouse)-1)

*-- 读取显示器
lcBuffer = space(100) 
=GetPrivStr("boot.description", "display.drv", "", ;
               @lcBuffer, LEN(lcBuffer), lcIniFile)
lcDisplay = allt(lcBuffer) 
lcDisplay = left(lcDisplay,len(lcDisplay)-1)


*-- 读取背景
lcIniFile = getenv("windir") + "\win.ini" 
lcBuffer = space(100) 
=GetPrivStr("desktop", "wallpaper", "", ;
               @lcBuffer, LEN(lcBuffer), lcIniFile)
lcWallpaper = allt(lcBuffer)
lcWallpaper = left(lcWallpaper,len(lcWallpaper)-1)

*-- 显示获取的信息
messagebox("系统:"+lcSystem+chr(13)+chr(13)+;
           "键盘:"+lcKeyBoard+chr(13)+chr(13)+;
           "鼠标:"+lcMouse+chr(13)+chr(13)+;
           "显示:"+lcDisplay+chr(13)+chr(13)+;
           "背景:"+lcWallpaper,64,"系统信息: ")
           
           
*-- 如何在 VFP 中读写 INI 文件,以下内容取自VFP5示例程序Tastrade,红虎整理

*-- 定义私有变量

Private lcIniFile,lcHeader,lcEntry,lcBuffer
lcInifile = "test.ini" && 要操作的INI文件名
lcHeader = "MyHearder" && 放在INI文件中的小节名
lcEntry = "MyEntry" && 在某小节中的变量名称
lcValue = "MyValue" && 在某变量下的具体内容

*-- 向 INI 文件写入内容
*-- 声明API函数
DECLARE INTEGER WritePrivateProfileString IN Win32API AS WritePrivStr ;
  String cSection, String cKey, String cValue, String cINIFile
*-- 写入指定的内容
=WritePrivStr(lcHeader, lcEntry, lcValue, curdir() + lcIniFile)
*-- 查看写过后的内容
modi file curdir() + lcIniFile 

*-- 从 INI 文件读取内容
*-- 声明API函数
DECLARE INTEGER GetPrivateProfileString IN Win32API AS GetPrivStr ;
  String cSection, String cKey, String cDefault, String @cBuffer, ;
  Integer nBufferSize, String cINIFile
*-- 指定要读取的内容的长度,先用空字符来定义,
* 有多少长度,就在Space()里指定多少,后面的chr(0)并没有实际的意义,
* 但是如果去掉后,Space()里指定的长度就比实际长度少一位。
lcBuffer = space(10) + chr(0)
*-- 读取指定的内容
=GetPrivStr(lcHeader, lcEntry, "", ;
               @lcBuffer, LEN(lcBuffer), ;
               curdir() + lcIniFile)
*-- 读到的内容存放与变量 lcBuffer 
?lcBuffer

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -