
代码已测试。
一、测试需要的INI文件。名称为“setinfo.ini”,存放路径为你解决方案里“Bin“文件夹的”Debug“文件夹里。
内容:
[Location]
pnlTime.Location.X=787
pnlTime.Location.Y=0
[TopMost]
Top=True
二、 *** 作INI文件的类。新建一个类,类中内容为:
Public Class Class1
Public Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" _
( _
ByVal lpApplicationName As String, _
ByVal lpKeyName As String, _
ByVal lpDefault As String, _
ByVal lpReturnedString As String, _
ByVal nSize As Int32, _
ByVal lpFileName As String _
) As Int32
End Class
三、界面代码:
Imports System.IO 'for path
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
getINI()
End Sub
Private Sub getINI()
Dim iniclass As New Class1 '
Dim myBf As String 'get set_info 开辟存储的内存
myBf = New String(CChar(""), 256)
Dim myFN As String '配置文件的文件路径
myFN = Path.Combine(My.Application.Info.DirectoryPath, "setinfo.ini")
Dim myAN As String 'Application_NAME,也是Section名称
myAN = Me.TextBox1.Text
Dim myKN As String 'KEY_NAME,关键字名称
myKN = Me.TextBox2.Text
Class1.GetPrivateProfileString(myAN, myKN, "", myBf, myBf.Length, myFN) '调用读取INI文件的 *** 作
TextBox3.Text = Microsoft.VisualBasic.Left(myBf, InStr(myBf, Chr(0)) - 1) '截取有用部分,有必要
End Sub
End Class
四、测试截图如下
Private Sql_Connect As New SqlClient.SqlConnection直接实例化了
Private Sql_Connect As SqlClient.SqlConnection
没有实例化
需要在后面的代码中
set Sql_Connect = New SqlClient.SqlConnection
以进行实例化
实例化以后对象即有了意义
也会触发Class_Initialize事件
=====================================================
那好吧
dim a as Object
Set a= New SqlClient.SqlConnection
这样写其实也是可以的
但是这样在编程的时候不会显示SqlClient.SqlConnection的属性和方法列表
dim a as SqlClient.SqlConnection
只这样写的话在编程的时候会显示SqlClient.SqlConnection的属性和方法列表,但是在程序运行的时候并不会给这个对象分配内存空间和地址
Set a= New SqlClient.SqlConnection
在这句语句出现后程序才会给这个对象分配内存空间
dim a as new SqlClient.SqlConnection
则把以上两个功能简化处理,一步到位了,这样可能会分配不必要的内存空间给这个对象的
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)