您的位置:首页 > 运维架构 > Shell

AHOI智能评测系统开发(一)

2005-06-30 09:56 399 查看
这几天在做一个评分系统,面向安徽青少年信息学奥赛(AHOI)的。
先前师兄午夜裸奔GG做了一套,用了几年了。我觉得蛮好,操作也蛮方便的,尤其是
导Excel和报表排序那一块做得很棒。只是测试模块用的是HNOI测试系统的,本着以
后方便的想法,就准备着手把这两块整合成一个软件。(做得万一不能用或bug太多
师兄表b4我哈 ^_^)
不过通过做这个系统还学到不少咚咚de..
---------关于ini文件的操作---------
读ini文件字段方法:
API定义:
Declare Function GetPrivateProfileStringByKeyName& Lib "kernel32" Alias
"GetPrivateProfileStringA" (ByVal lpApplicationName$, ByVal lpszKey$,
ByVal lpszDefault$, ByVal lpszReturnBuffer$, ByVal cchReturnBuffer&, ByVal
lpszFile$)
使用:
Function GetPrivateStringValue(strSection As String, strName As String,
strFileName As String) As String
  '这个函数是用来对INI文件进行读操作的,Windows API 函数
  '函数说明:
  'strFileName 是所要读取的文件名
  'strSection  是这个文件中的一个节点名
  'strName 是所要查找的字段名
写ini文件字段方法:
API定义:
Declare Function WritePrivateProfileStringByKeyName& Lib "kernel32" Alias
"WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal
lpKeyName As String, ByVal lpString As String, ByVal lplFileName As
String)
使用:
Function WritePrivateProfileStringByKeyName(strSection As String, strName
As String, strValue As String, strFileName As String)
  '这个函数是用来对INI文件进行写操作的,利用API函数
  '函数说明:
  'strFileName 是所要存储的文件名
  'strSection  是这个文件中的一个节点名
  'strName 是所要查找的字段名
  'strValue 是所要替换字段值

---------关于文件夹拷贝---------
使用 VB 本身的 FileCopy 及 FSO 对象基本能完成大部分的文件(夹)操作
功能。
但如果想要更加强大的功能的话,还是使用 Win32 API: SHFileOperation
通过它可以完成很多底层功能,实现效果就象在 Windows 本身执行文件操
作一样。如,可以做到:
1.文件(移动)拷贝。可以指定多个源,并且可使用(*.*)通配符,可指定是
否拷贝子文件夹,是否显示拷贝进度窗口等等。
2.删除文件。同样可以指定通配符,并且在删除前提示用户等等。
.....
定义:
Declare Function SHFileOperation Lib "shell32.dll" Alias
"SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long
Type SHFILEOPSTRUCT
     hwnd As Long
     wFunc As Long
     pFrom As String
     pTo As String
     fFlags As Long
     fAnyOperationsAborted As Long
     hNameMappings As Long
     lpszProgressTitle As String
End Type
---------关于文件浏览---------
定义:
Declare Function SHBrowseForFolder Lib "shell32.dll" Alias
"SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) As Long
Type BROWSEINFO
     hOwner As Long
     pidlRoot As Long
     pszDisplayName As String
     lpszTitle As String
     ulFlags As Long
     lpfn As Long
     lParam As Long
     iImage As Long
End Type
----------------------------------作者:卡卡-------------------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息