两个函数

原创 2007年10月16日 00:53:00
文件名SourceDB.ini文件
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 WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long

'以下两个函数,读/写ini文件,固定节点setting,in_key为写入/读取的主键
'仅仅针对是非值
'Y:yes,N:no,E:error
Public Function GetIniTF(ByVal In_Key As String) As Boolean
On Error GoTo GetIniTFErr
GetIniTF = True
Dim GetStr As String
GetStr = VBA.String(128, 0)
GetPrivateProfileString "Setting", In_Key, "", GetStr, 256, App.Path & "/SourceDB.ini"
GetStr = VBA.Replace(GetStr, VBA.Chr(0), "")
If GetStr = "1" Then
   GetIniTF = True
   GetStr = ""
Else
   GoTo GetIniTFErr
End If
Exit Function
GetIniTFErr:
   Err.Clear
   GetIniTF = False
   GetStr = ""
End Function

Public Function WriteIniTF(ByVal In_Key As String, ByVal In_Data As Boolean) As Boolean
On Error GoTo WriteIniTFErr
WriteIniTF = True
If In_Data = True Then
 WritePrivateProfileString "Setting", In_Key, "1", App.Path & "/SourceDB.ini"
Else
 WritePrivateProfileString "Setting", In_Key, "0", App.Path & "/SourceDB.ini"
End If
Exit Function
WriteIniTFErr:
   Err.Clear
   WriteIniTF = False
End Function


'以下两个函数,读/写ini文件,不固定节点,in_key为写入/读取的主键
'针对字符串值
'空值表示出错
Public Function GetIniStr(ByVal AppName As String, ByVal In_Key As String) As String
On Error GoTo GetIniStrErr
If VBA.Trim(In_Key) = "" Then
   GoTo GetIniStrErr
End If
Dim GetStr As String
GetStr = VBA.String(128, 0)
 GetPrivateProfileString AppName, In_Key, "", GetStr, 256, App.Path & "/SourceDB.ini"
  GetStr = VBA.Replace(GetStr, VBA.Chr(0), "")
If GetStr = "" Then
   GoTo GetIniStrErr
Else
   GetIniStr = GetStr
   GetStr = ""
End If
Exit Function
GetIniStrErr:
   Err.Clear
   GetIniStr = ""
   GetStr = ""
End Function

Public Function WriteIniStr(ByVal AppName As String, ByVal In_Key As String, ByVal In_Data As String) As Boolean
On Error GoTo WriteIniStrErr
WriteIniStr = True
If VBA.Trim(In_Data) = "" Or VBA.Trim(In_Key) = "" Or VBA.Trim(AppName) = "" Then
   GoTo WriteIniStrErr
Else
 WritePrivateProfileString AppName, In_Key, In_Data, App.Path & "/SourceDB.ini"
End If
Exit Function
WriteIniStrErr:
   Err.Clear
   WriteIniStr = False
End Function

 

习题 7.1 写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果。两个整数由键盘输入。

C程序设计(第四版) 谭浩强 习题7.1 个人设计习题 7.1 写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果。两个整数由键盘输入。代码块:#include i...
  • navicheung
  • navicheung
  • 2017年09月11日 12:04
  • 1452

fork函数的2个返回值说明

fork简介: fork英文原意是“分岔,分支”的意思,而在操作系统中,乃是著名的Unix(或类Unix,如Linux,Minix)中用于创建子进程的系统调用。 【NOTE1】 fork ()...
  • dongzichen2015
  • dongzichen2015
  • 2016年12月05日 10:48
  • 842

JAVA和C++ 交换两个变量的值的函数 区别

在程序开发的过程,要交换两个变量的内容,是一种比较常见的事情。在排序算法中,就有一种就叫做“交换排序法”。在所有的排序算法,交换要排序的集合中的两个元素,几乎是必须的过程。在Java中交换两个元素的内...
  • u010292827
  • u010292827
  • 2015年07月30日 11:24
  • 1618

C#--如何在一个函数中返回两个值(包含数组的参数)

/*烟台大学计算机学院学生 *All right reserved. *文件名称:C#--如何在一个函数中返回两个值(包含数组的参数) *作者:杨飞 *完成日期:2014...
  • u012370105
  • u012370105
  • 2014年09月23日 11:06
  • 2669

如何通过调用函数交换两个变量的值及常见误区

大家都知道c语言中交换两个变量的值,需要以下代码:
  • csdnAaron
  • csdnAaron
  • 2014年10月24日 19:30
  • 3177

系统函数strcat的功能是把两个字符串连接成一个字符串

系统函数strcat的功能是把两个字符串连接成一个字符串,使用这一函数时要求头文件包含:#include 。函数调用形式是strcat(字符串1,字符串2),函数执行后把字符串2的内容连接到字符串1的...
  • gaoda1988
  • gaoda1988
  • 2014年07月22日 11:53
  • 2505

两个高斯函数的卷积仍为一高斯函数

这几天写论文,论文里面涉及到高斯平滑,并且运用到了高斯平滑的一个特性:先用高斯窗口为a的模板平滑,然后在用高斯窗口为b的模板平滑,效果等效于用窗口为c的模板平滑一次,其中c^2=a^2+b^2。这就用...
  • liguan843607713
  • liguan843607713
  • 2014年12月28日 18:56
  • 8882

c语言:用getchar函数读入两个字符给c1,c2,用putchar和printf输出。思考问题

用getchar函数读入两个字符给c1,c2,分别用putchar和printf输出这两个字符。思考以下问题:(1)变量c1和c2定义为字符型还是整型?或二者皆可?(2)要求输出c1和c2的ASCII...
  • yanxiaolx
  • yanxiaolx
  • 2016年05月29日 13:39
  • 5976

两个c语言的调用函数总结

system(); 函数原型:int system( const char *command ); 我以这个为测试为例:system("abcde"); 显示如下: 'abc...
  • hu1020935219
  • hu1020935219
  • 2013年10月25日 11:09
  • 1570

C++第七周mooc在线测评—指针、变量和函数

//1编写函数重置两个变量的值(20分) //题目内容: //编写函数重置两个变量的值,该函数的原型为 void reset(int *a, int *b); //函数内部将两个值重置为两个变量原值...
  • qq_28833741
  • qq_28833741
  • 2016年10月14日 10:27
  • 2239
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:两个函数
举报原因:
原因补充:

(最多只允许输入30个字)