使用INI文件保存用户名和密码即可
解决方案 »
- excel2003 vba 画折线图的问题
- 如何在excel中自动添加“符合如下条件的”数据行
- type end type 能否定义第三方插件的数据类型?
- 在导出到excel文件时,有办法改变excel的文件名吗?(俺没分了)
- 在TextBox上按回车键,会出现“咚”的声音,请问如何屏蔽掉声音
- 如何知道winsock已经下载完毕,向同一网站发送两次数据,一定要关闭第一次的链接才能发第二次吗?
- 请教各位:这种unrecognized database format 'd:\person.mdb'错误是什么原因
- 怎样将数据库中的图片加入到image中?
- 版主帮帮我,,,,,,,,,,,,,,,,,,,,,,,急!!!!
- VB6做聊天系统出错
- 我想制作一小段AVI的片头,用在自己的刻录光盘和一些软件的前面,请问应该用什么软件?
- 有关的datagrid单元格的使用问题。知道的朋友请赶紧给我回复。很急!!!
2.使用注册表保存
下面是具体说明
1.
Option Explicit
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
'-----------------------------------------------------------------------------------------------------
'-说明
' 为初始化文件中指定的条目取得字串
'-返回值
' 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目录中查找文件
'-注解
' 如lpKeyName参数为vbNullString,那么lpReturnedString缓冲区会载入指定小节所有设置项的一个
' 列表。每个项都用一个NULL字符分隔,最后一个项用两个NULL字符中止。
'-----------------------------------------------------------------------------------------------------
Private Declare Function WritePrivateProfileString Lib "Kernel32" _
Alias "WritePrivateProfileStringA" (ByVal AppName As String, _
ByVal KeyName As String, _
ByVal keydefault As String, _
ByVal Filename As String) As Long
'--------------------------------------------------------------------------------------------------
'-说明
' 在初始化文件指定小节内设置一个字串
'-返回值
' Long,非零表示成功,零表示失败。会设置GetLastError
'-参数表
' 参数 类型及说明
' lpApplicationName..........String,要在其中写入新字串的小节名称。这个字串不区分大小写
' lpKeyName..................Any, 要设置的项名或条目名。这个字串不区分大小写。
' 用vbNullString可删除这个小节的所有设置项
' lpString...................String,指定为这个项写入的字串值。用vbNullString表示删除这
' 个项现有的字串
' lpFileName.................String,初始化文件的名字。如果没有指定完整路径名,则windows
' 会在windows目录查找文件。如果文件没有找到,则函数会
' 创建它
'--------------------------------------------------------------------------------------------------
Public Enum eEditType
eWriteIni = 2 '写入
eReadIni = 1 '读取
End Enum
'-----------------------------------------------------------------------
'-g_sngRegedit(App.Path & "sz.ini", "设置", "提示", "123", eReadIni)
'-g_sngRegedit(App.Path & "sz.ini", "设置", "提示", "12345", eWriteIni)
'-INI文件编辑(读取、写入)
'-IniFile :INI文件名及路径
'-IniSection :小节名称
'-IniKey :项名
'-IniDefaultInfo:值(读取eReadIni :条目没有找到时返回的默认值
' 写入eWriteIni:写入的字串值)
'-mType :操作类型(读、写)
'-----------------------------------------------------------------------
Public Function g_sngRegedit(IniFile As String, IniSection As String, IniKey As String, IniDefaultInfo As String, mType As eEditType) As String
Dim retval As Long
Dim lpDefault As String
Dim lpReturnedString As String
Dim nSize As Long
lpDefault = Space$(254) '初始化字符串
lpDefault = IniDefaultInfo
lpReturnedString = Space$(254) '初始化字符串
nSize = 254 '缓冲区大小 Select Case mType
Case eReadIni
retval = GetPrivateProfileString(IniSection, IniKey, lpDefault, lpReturnedString, nSize, IniFile) '读INI
g_sngRegedit = Trim$(lpReturnedString) '去处前导、尾随空格(如全为空则反回一个空格)
Case eWriteIni
retval = WritePrivateProfileString(IniSection, IniKey, IniDefaultInfo, IniFile) '写INI
g_sngRegedit = Trim$(Str$(retval)) '将retval转换成String后去处前导、尾随空格
End Select
End Function
section 必要。字符串表达式,包含区域名称,在该区域保存注册表项设置。
key 必要。字符串表达式,包含将要保存的注册表项设置的名称。
setting 必要。表达式,包含 key 的设置值。
说明如果无论如何也不能保存注册表项设置,则将导致错误发生。
GetSetting 函数
从 Windows 注册表中的应用程序项目返回注册表项设置值。语法GetSetting(appname, section, key[, default])GetSetting 函数的语法具有下列命名参数:部分 描述 appname 必要。字符串表达式,包含应用程序或工程的名称,要求这些应用程序或工程有注册表项设置。
section 必要。字符串表达式,包含区域名称,要求该区域有注册表项设置。
key 必要。字符串表达式,返回注册表项设置的名称。
default 可选。表达式,如果注册表项设置中没有设置值,则返回缺省值。如果省略,则 default 取值为长度为零的字符串 ("")。
说明如果 GetSetting 的参数中的任何一项都不存在,则 GetSetting 返回 default 的值。
Dim MySettings As Variant
' 在注册区中添加项目。
SaveSetting "MyApp","Startup", "Top", 75
SaveSetting "MyApp","Startup", "Left", 50Debug.Print GetSetting(appname := "MyApp", section := "Startup", _
key := "Left", default := "25")DeleteSetting "MyApp", "Startup"
非常感谢你的回复,请问你可以将代码发至
这里看不太清楚,麻烦了!另外,如果你能给点关于API的注解最好!谢谢
private Sub SavePassword(strPassword as string)
{
call SaveSetting(App.Title,"Password","Password",strPassword)
}'读取密码
private function GetPassword() as string
{
GetPassword = GetSetting(App.Title,"Password","Password","")
}