vb.net提示无法创建 ActiveX 组件你这种做法应该是仿照vba的代码,vb.net里面不是这样做的 。
你要做的是打开网页、自动填写然后提交表单吧?
应该用webbrowser来加载页面 。
需要引用:Microsoft HTML Object Library
在webbrowser的状态为ready的时候,执行:
'取得要填写的表单名称,并定义为一个html元素变量text
Dim text As HtmlElement = WebBrowser1.Document.GetElementById("表单字段名id")
'给表单元素text赋值
text.InnerHtml = “张三”
'找到提交按钮
Dim btnSubmit As HtmlElement = WebBrowser1.Document.GetElementById("提交按钮id")
'执行点击动作
btnSubmit.InvokeMember("click")
VB高手进,用VB实现bat文件的net use那样的功能WNetAddConnection 创建同一个网络资源的永久性连接
WNetAddConnection2 创建同一个网络资源的连接
WNetAddConnection3 创建同一个网络资源的连接
WNetCancelConnection 结束一个网络连接
WNetCancelConnection2 结束一个网络连接
WNetCloseEnum 结束一次枚举操作
WNetConnectionDialog 启动一个标准对话框,以便建立同网络资源的连接
WNetDisconnectDialog 启动一个标准对话框,以便断开同网络资源的连接
WNetEnumResource 枚举网络资源
WNetGetConnection 获取本地或已连接的一个资源的网络名称
WNetGetLastError 获取网络错误的扩展错误信息
WNetGetUniversalName 获取网络中一个文件的远程名称以及/或者UNC(统一命名规范)名称
WNetGetUser 获取一个网络资源用以连接的名字
WNetOpenEnum 启动对网络资源进行枚举的过程
1.WNetAddConnection
VB声明
Declare Function WNetAddConnection Lib "mpr.dll" Alias "WNetAddConnectionA" (ByVal lpszNetPath As String, ByVal lpszPassword As String, ByVal lpszLocalName As String) As Long
说明
创建同一个网络资源的永久性连接
返回值
Long , 零表示成功 。会设置GetLastError 。如GetLastError是ERROR_EXTENDED_ERROR,则可用WNetGetLastError取得额外的错误信息
参数表
参数 类型及说明
lpszNetPath String,要连接的网络名
lpszPassword String,可选的一个密码 。如为vbNullString,表示采用当前用户的默认密码 。如为一个空字串,则不用任何密码
lpszLocalName String,资源的本地名称 。(例如 , F: 和 LPT1:)
2.WNetAddConnection2
VB声明
Declare Function WNetAddConnection2 Lib "mpr.dll" Alias "WNetAddConnection2A" (lpNetResource As NETRESOURCE, ByVal lpPassword As String, ByVal lpUserName As String, ByVal dwFlags As Long) As Long
说明
创建同一个网络资源的连接
返回值
Long,零表示成功 。会设置GetLastError 。如GetLastError是ERROR_EXTENDED_ERROR,则可用WNetGetLastError取得额外的错误信息
参数表
参数 类型及说明
lpNetResource NETRESOURCE,在这个结构中设置了下述字段,对要连接的网络资源进行了定义:dwType, lpLocalName (可为 vbNullString),lpRemoteName , lpProvider (设为 vbNullString 表示用默认提供者) 。该结构的其他所有变量都会被忽略
lpPassword String , 可选的一个密码 。如为vbNullString,表示采用当前用户的默认密码 。如为一个空字串,则不用任何密码
lpUserName String,用于连接的用户名 。如为vbNullString,表示使用当前用户
dwFlags Long,设为零;或指定常数CONNECT_UPDATE_PROFILE,表示创建永久性连接
3.WNetAddConnection3
VB声明
Declare Function WNetAddConnection3 Lib "mpr.dll" Alias "WNetAddConnection3A" (ByVal hwnd As Long, lpNetResource As NETRESOURCE, ByVal lpPassword As String, ByVal lpUserName As String, ByVal dwFlags As Long)
说明
创建同一个网络资源的连接 。这个函数与WNetAddConnection2类似,只是它允许我们为这个函数显示的对话框指定一个物主窗口
返回值
Long ,
参数表
参数 类型及说明
hwnd Long , 指定一个窗口句柄 , 用作本函数创建的对话框的父窗口
lpNetResource NETRESOURCE,在这个结构中设置了下述字段,对要连接的网络资源进行了定义:dwType, lpLocalName (可为 vbNullString), lpRemoteName,lpProvider (设为 vbNullString 表示用默认提供者) 。该结构的其他所有变量都会被忽略
lpPassword String,可选的一个密码 。如为vbNullString , 表示采用当前用户的默认密码 。如为一个空字串 , 则不用任何密码
lpUserName String , 用于连接的用户名 。如为vbNullString,表示使用当前用户
dwFlags Long,设为零;或指定常数CONNECT_UPDATE_PROFILE,表示创建永久性连接
4.WNetCancelConnection
VB声明
Declare Function WNetCancelConnection Lib "mpr.dll" Alias "WNetCancelConnectionA" (ByVal lpszName As String, ByVal bForce As Long) As Long
说明
结束一个网络连接
返回值
Long,零表示成功 。会设置GetLastError 。如GetLastError是ERROR_EXTENDED_ERROR,则可用WNetGetLastError取得额外的错误信息
参数表
参数 类型及说明
lpszName String , 已连接资源的远程名称或本地名称
bForce Long,如为TRUE,表示断开连接(即使连接的资源上正有打开的文件或作业)
5.WNetCancelConnection2
VB声明
Declare Function WNetCancelConnection2 Lib "mpr.dll" Alias "WNetCancelConnection2A" (ByVal lpName As String, ByVal dwFlags As Long, ByVal fForce As Long) As Long
说明
结束一个网络连接
返回值
Long,零表示成功 。会设置GetLastError 。如GetLastError是ERROR_EXTENDED_ERROR,则可用WNetGetLastError取得额外的错误信息
参数表
参数 类型及说明
lpszName String,已连接资源的远程名称或本地名称
dwFlags Long,设为零或CONNECT_UPDATE_PROFILE 。如为零,而且建立的是永久性连接,则在windows下次重新启动时仍会重新连接
fForce Long,如为TRUE,表示强制断开连接(即使连接的资源上正有打开的文件或作业)
6.WNetCloseEnum
VB声明
Declare Function WNetCloseEnum Lib "mpr.dll" Alias "WNetCloseEnum" (ByVal hEnum As Long) As Long
说明
结束一次枚举操作
返回值
Long,零表示成功 。会设置GetLastError 。如GetLastError是ERROR_EXTENDED_ERROR,则可用WNetGetLastError取得额外的错误信息
参数表
参数 类型及说明
hEnum Long,由 WNetOpenEnum函数返回的一个枚举句柄
7.WNetConnectionDialog
VB声明
Declare Function WNetConnectionDialog Lib "mpr.dll" Alias "WNetConnectionDialog" (ByVal hwnd As Long, ByVal dwType As Long) As Long
说明
启动一个标准对话框,以便建立同网络资源的连接
返回值
Long,零表示成功 。如用户取消了操作,则返回-1 。会设置GetLastError 。如GetLastError是ERROR_EXTENDED_ERROR,则可用WNetGetLastError取得额外的错误信息
参数表
参数 类型及说明
hwnd Long,指定要成为对话框父窗口的一个窗口的句柄
dwType Long , 设成RESOURCETYPE_DISK , 浏览磁盘资源
8.WNetDisconnectDialog
VB声明
Declare Function WNetDisconnectDialog Lib "mpr.dll" Alias "WNetDisconnectDialog" (ByVal hwnd As Long, ByVal dwType As Long) As Long
说明
启动一个标准对话框,以便断开同网络资源的连接
返回值
Long,零表示成功 。如用户取消了操作,则返回-1 。会设置GetLastError 。如GetLastError是ERROR_EXTENDED_ERROR , 则可用WNetGetLastError取得额外的错误信息
参数表
参数 类型及说明
hwnd Long,指定要成为对话框父窗口的一个窗口的句柄
dwType Long,设成RESOURCETYPE_DISK 或 RESOURCETYPE_PRINT,决定要断开的是磁盘还是打印机资源
9.WNetEnumResource
VB声明
Declare Function WNetEnumResource Lib "mpr.dll" Alias "WNetEnumResourceA" (ByVal hEnum As Long, lpcCount As Long, lpBuffer As Any, lpBufferSize As Long) As Long
说明
枚举网络资源
返回值
Long,零表示成功 。ERROR_NO_MORE_ITEMS表示不剩下可以枚举的条目 。ERROR_MORE_DATA表示条目不能装入lpBuffer 。会设置GetLastError 。如GetLastError是ERROR_EXTENDED_ERROR,则可用WNetGetLastError取得额外的错误信息
参数表
参数 类型及说明
hEnum Long,从WNetOpenEnum函数返回的一个句柄
lpcCount Long,最初设为要枚举的最大资源数量;或设为-1,表示枚举尽可能多的资源 。一旦返回,就会设为实际枚举的资源数量
lpBuffer Any , 通常是一个字节缓冲区的首字节 。该缓冲区装载了枚举信息(可按引用声明为Byte)
lpBufferSize Long , 以字节为单位指定lpBuffer数组的长度 。如缓冲区不够大 , 则设为需要的缓冲区长度
注解
枚举网络条目时,最好用vb一次枚举一个资源 。尽量不要使用这个函数同时枚举许多网络资源的功能
10.WNetGetConnection
VB声明
Declare Function WNetGetConnection Lib "mpr.dll" Alias "WNetGetConnectionA" (ByVal lpszLocalName As String, ByVal lpszRemoteName As String, cbRemoteName As Long) As Long
说明
获取本地或已连接的一个资源的网络名称
返回值
Long,零表示成功 。会设置GetLastError 。如GetLastError是ERROR_EXTENDED_ERROR,则可用WNetGetLastError取得额外的错误信息
参数表
参数 类型及说明
lpszLocalName String,本地设备的名字
lpszRemoteName String,指定一个字串缓冲区 , 用于装载设备的资源名称
cbRemoteName Long,lpszRemoteName缓冲区的字符数量 。如缓冲区不够大,则设为需要的缓冲区长度
11.WNetGetLastError
VB声明
Declare Function WNetGetLastError Lib "mpr.dll" Alias "WNetGetLastErrorA" (lpError As Long, ByVal lpErrorBuf As String, ByVal nErrorBufSize As Long, ByVal lpNameBuf As String, ByVal nNameBufSize As Long) As Long
说明
获取网络错误的扩展错误信息
返回值
Long , 零表示成功 。ERROR_INVALID_ADDRESS表示缓冲区无效
参数表
参数 类型及说明
lpError Long,指定一个变量,用于装载网络错误代码 。具体的代码由网络供应商决定
lpErrorBuf String,指定一个字串缓冲区,用于装载网络错误的说明
nErrorBufSize Long,lpErrorBuf缓冲区包含的字符数量
lpNameBuf String , 用于装载网络供应商名字的字串缓冲区
nNameBufSize Long,lpNameBuf缓冲区的字符数量
12.WNetGetUniversalName
VB声明
Declare Function WNetGetUniversalName Lib "mpr" Alias "WNetGetUniversalNameA" (ByVal lpLocalPath As String, ByVal dwInfoLevel As Long, lpBuffer As Any, lpBufferSize As Long) As Long
说明
获取网络中一个文件的远程名称以及/或者UNC(统一命名规范)名称 。例如,假设一个已连接的远程驱动器是\\othersystem\CDrive , 它对应的本地驱动器是F:,而且在它的子目录temp中包含了文件xyz.doc 。那么运算结果如下:LocalPath xyz.doc 或 f:\temp\xyz.doc(或者文件的任何相对路径名)
UNC 名称: \\othersystem\CDrive\temp\xyz.doc
连接名称: \\othersystem\CDrive
剩余名称: \temp\xyz.doc
它们分别对应于由这个函数装载的REMOTE_NAME_INFO结构的字段,对该结构的定义如下:
Type REMOTE_NAME_INFO
pUniversalName As Long
pConnectionName As Long
pRemainingPath As Long
End Type
返回值
Long,零表示成功 。会设置GetLastError 。如GetLastError是ERROR_EXTENDED_ERROR,则可用WNetGetLastError取得额外的错误信息
参数表
参数 类型及说明
lpLocalPath String,磁盘文件的名字
dwInfoLevel Long,下述常数之一:
UNIVERSAL_NAME_INFO_LEVEL 只设置pUniversalName字段
REMOTE_NAME_INFO_LEVEL 设置REMOTE_NAME_INFO结构中的所有三个字段
lpBuffer Any,指定用于装载UNC信息的一个缓冲区 。缓冲区起点与一个REMOTE_NAME_INFO结构对应
lpBufferSize Long , 以字节为单位指定lpBuffer缓冲区的长度 。如缓冲区不够大,则设为需要的缓冲区长度
13.WNetGetUser
VB声明
Declare Function WNetGetUser Lib "mpr.dll" Alias "WNetGetUserA" (ByVal lpName As String, ByVal lpUserName As String, lpnLength As Long) As Long
说明
获取一个网络资源用以连接的名字
返回值
Long,零表示成功 。会设置GetLastError 。如GetLastError是ERROR_EXTENDED_ERROR,则可用WNetGetLastError取得额外的错误信息
参数表
参数 类型及说明
lpName String,指定已连接资源的远程名称或本地名称 。用vbNullString获取当前用户的名字
lpUserName String,用于装载用户名的一个字串缓冲区
lpnLength Long,lpUserName缓冲区的长度 。如缓冲区不够大,则自动设为需要的缓冲区长度
14.WNetOpenEnum
VB声明
Declare Function WNetOpenEnum Lib "mpr.dll" Alias "WNetOpenEnumA" (ByVal dwScope As Long, ByVal dwType As Long, ByVal dwUsage As Long, lpNetResource As NETRESOURCE, lphEnum As Long) As Long
说明
启动对网络资源进行枚举的过程 。这个函数会返回由WNetEnumResource函数用于枚举资源所用的一个句柄
返回值
Long,零表示成功 。会设置GetLastError 。如GetLastError是ERROR_EXTENDED_ERROR,则可用WNetGetLastError取得额外的错误信息
参数表
参数 类型及说明
dwScope Long,指定要枚举的资源范围 。可设为下述常数之一:
RESOURCE_CONNECTED 枚举已连接的资源(忽略dwUsage)
RESOURCE_GLOBALNET 枚举所有资源
RESOURCE_REMEMBERED 只枚举永久性连接
dwType Long,下述常数之一
RESOURCE_ANY 枚举所有类型的网络资源
RESOURCE_DISK 枚举磁盘资源
RESOURCE_PRINT 枚举打印资源
dwUsage Long,可设为零,表示枚举所有资源;或设为下述常数的一个或两个:
RESOURCEUSAGE_CONNECTABLE 只枚举那些能够连接的资源
RESOURCEUSAGE_CONTAINER 只枚举包含了其他资源的资源
lpNetResource NETRESOURCE,这个结构指定了一个容器资源 。该函数会枚举包含于这里指定的某个指定资源内的资源 。如设为NULL(把声明变成ByVal As Long),那么函数会枚举顶级网络资源 。倘若在dwScope参数里没有指定RESOURCE_GLOBALNET , 那么必须为NULL
lphEnum Long,指定一个变量,用于装载一个枚举句柄 。该句柄由WNetEnumResource函数使用 。必须用WNetCloseEnum函数将其清除
vb关闭时出现的问题偶的VB也是这样 , 上网搜了N多方法也没用,下个全点的VB,重装吧
什么时候DOS?来干什么的!~DOS实际上是DiskOperationSystem(磁盘操作系统)的简称 。顾名思义,这是一个基于磁盘管理的操作系统 。与vb.net建立目录我们现在使用的操作系统最大的区别在于 , 它是命令行形式的,靠输入命令来进行人机对话,并通过命令的形式把指令传给计算机,让计算机实现操作的 。所以操作方式也非常简单 , 只需输入命令,然后回车 , 系统就会执行命令 。
从实质上来说,包括windows95和win9x的系列版本,这些看起来完全图形化的操作系统也完全是建立在dos之上的 。只是穿了一件衣服而已 。
另外一个方面,在widows的系列任意一个版本中,vb.net建立目录我们都可以找到dos的影子 。在Win9x/Me的开始菜单中的运行程序中键入"command"命令 , 可进入命令行界面 。在Win2000/NT的开始菜单中的运行程序中键入"cmd"命令,可进入命令行界面 。而且使用windows 2000和xp都可以通过使用启动光盘来进入控制台 。控制台也是命令行形式,里面的系统维护命令也是在很大程度上和DOS命令是一致的,如果会使用dos,基本上就会使用控制他 。在很多情况下,使用图形界面不能妥善解决的问题,可以通过命令行来解决 。
常用DOS命令
其实,现在不需要学DOS了,除非你想自己装机器 。在这里就介绍几个最常用的DOS命令吧!
用DOS起动机器后,我们就可输入DOS命令了 。敲入DOS命令的方法都一样 , 就是命令回回车 。我们敲入不同的DOS命令机器就执行不同的功能 。DOS命令的一般格式为:
命令 [参数或选项,[参数或选项,[……]]]
其中,方括号里的内容根据需要选用,也可一个也不用 。DOS最讨厌的地方之一,就是不同的命令这里的[参数或选项]不同 。以下介绍中, 表示命令输入完成后按回车键 。
DIR —— 列目录 。列出目录下的子目录和文件 。
例:DIR列出当前目录下的所有子目录和文件名
DIR /P列出当前目录下的所有子目录和文件名 , 每显示一屏暂停 。
DIR C*.SYS 列出当前目录下以名字C开头且扩展名为SYS的所有子目录和文件 。
DIR C:\DOS\*.SYS 列出C:盘DOS子目录下扩展名为SYS的所有子目录和文件 。
DIR ..\F*.COM 列出上级目录下以名字F开头且扩展名为SYS的所有子目录和文件 。
DIR FORMAT.EXE/S 在当前目录及其子目录中寻找文件FORMAT.EXE 。
说明:*称为通配符,它代表几个连在一起的字符,还有?也是通配符,它代表一个字符 。当你只记得文件中的部分字符时很有用 。
..代表上级目录 。
\有两种作用:在盘符后或出现在最前面则代表该盘的根目录,不然,则是目录和子目录间或目录与文件名间的分格符 。
DOS不区分命令和文件名(及目录名)中的字母的大小写 。
CD —— 改变当前目录 。通常用DOS起动机器后,当前盘为起动盘,当前目录为起动盘的根目录 。
例:CD DOS 把当前目录换成现在所在目录下的DOS子目录 。
CD ..回到上级目录 。
CD \回到根目录 。
MD —— 建立子目录 。
例:MD DOS 在当前目录下建立DOS子目录 。
MD C:\BACKUP在C:盘根目录下建立BACKUP子目录 。
COPY —— 拷贝文件 。生成一个和源文件一模一样的文件 。
例:COPY A:\CONFIG.SYS C:\CONFIG.SYS 将A:盘根目录下的CONFIG.SYS复制一份
到C:盘根目录下 。
FORMAT —— 格式化磁盘 。格式化磁盘将删掉磁盘中的所有文件 。
例:FORMAT A: 格式化A:盘 。
FORMAT A:/S 格式化A:盘,并且让该盘可以作为开机时的起动盘(又称系统盘) 。
EDIT —— 编辑文本文件 。
例:EDIT C:\CONFIG.SYS 编辑C:盘根目录下的CONFIG.SYS文件 。
说明:文本文件就是只含可见字符和回车与换行符的文件 。如果你不明白 , 你只需要
知道C:\CONFIG.SYS和C:\AUTOEXEC.BAT文件是文本文件就行了 。
内存
内存是接于主板上的用天存贮数据的集成电路 。
在我们的文稿纸中,每个格子里放一个字 。内存类似文稿纸 , 有许多小格 , 每个小格放一个字节的内容 。内存的“小格子”越多 , 内存越大 。为了便于定位这些“小格子”,就将这些小格按顺序进得编号,这些编号就是内存地址 。
CPU运行所需的数据和程序直接(或经高速缓冲存储器,简称Cache,一种比一般内存更高存取速度的集成电路)存取自内存 。磁盘上的程序或数据不直接与CPU打交道,须调入内存(读文件),经运行或处理后的数据文件须从内存写到磁盘上(写文件,俗称“存盘”) 。由于内存只在有电压维持时才可保存数据,故在计算机关机后的数据会丢失 , 所以 , 你在计算机上完成你的工作后要记得存盘 。
DOS对内存的管理
一般而言,DOS只能管理1M的内存,要想让DOS管理1M以上的内存必须另想办法 。通常,在1M内存中,DOS真正使用的是640K,这部分内存称基本内存或常规内存 。在DOS下 , 即使你的机器有8M、16M、32M甚至更多的内存,如果不想办法,DOS是用不到的,所以,有时一些程序报告内存不够 。WINDOWS等操作系统不象DOS,它们可以使用更多内存,再加上其图形界面、同时可运行几个程序、能充分发挥计算机硬件的功能等诸多优势,故而得到了广泛应用 。
文本文件
我们把文件中只含有字母、数字和平时常用到的一些符号的文件称文本文件,当然,其中还含有我们平时没见到过的回车和换行符,以便于我们分出一行一行来 。如果你看过ASCII表,就清楚表中有些代码我们平时很少见,其中有些是有专门用途的,在文本文件中是不包括它们的 。另外 , 不同的操作系统下的文本文件可能不同 , 如UNIX下的方本文件只含回车符不含换行符 。不过,你不用管它们,只要是在DOS下用TYPE 文件名命令能在屏幕中清楚显示的文件就是文本文件,如CONFIG.SYS和AUTOEXEC.BAT文件 。文本文件可用一般的编辑器编辑 , 如DOS下的EDIT 。
DOS图解:
VB.NET连接access数据库文件时提示“无效的授权说明”数据库与文本文件返回数据的方法不同.如果把文本文件比作一个Textbox 的话,那么数据库更像是一个ListBox.使用文本文件时我们需要从整个Textbox中取出有用的信息,并进行处理,而Listbox则可以根据需要返回特定的某一项.
由于VB本身并不带有可以访问数据库的类,所以我们需要引用一个包含能访问数据库的类来使用数据库.这里我们采用ADODB,相比DAO和能访问数据库的API来说,它比DAO更灵活,更强大;而比起API,它更简单易用,更适合初学者.而Access数据库比起SQL,也相对简单vb.net建立目录了很多,且能够满足中小型应用程序的需要,所以我们在使用数据库时,选择vb.net建立目录了Access.
就像使用文本文件来存储数据一样,我们需要先设计好数据结构,只不过在设计Access数据库的结构时,我们需要用到其它的程序来进行详细的规划.建议采用的程序是office中的Access或VB自带的VISDATA.
当数据库设计好vb.net建立目录了以后,我们可以开始"数据库编程"了.
首先,我们需要引用ADO.具体的方法是,在"工程" -- "引用" 中,找到"Microsoft ActiveX Data Object *.* Library",这里的"*.*"是指的时ADO的版本号,一般来说,应用程序或ActiveX控件都具有向下兼容性,所以我们尽可能选择比较新的版本.以确保程序在能识别旧版本Access的同时,也能识别较新版本的Access.
然后我们需要在程序中创建一个对象.就好比我们在窗体上添加一个FileBox才能看到文件名一样,只有创建了ADO对象,我们才能够访问数据库.常用的对象有两个,Connection和Recordset.
创建这两个对象的具体方法是:
1.在引用后,使用New关键字,如
Private Conn As New ADODB.Connection
Private Reco As New ADODB.Recordset
2.在没引用时,用CreateObject创建对象:
Dim Conn,Reco
Set Conn = CreateObject("ADODB.Connection")
Set Reco = CreateObject("ADODB.Recordset")
创建了对象之后,下一步我们要做的就是打开数据库了.
先看下面的代码,可以成功的打开数据库.
Conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Main.mdb"
这句代码打开了D盘中的Main.mdb这个数据库.
Connection.Open方法的第一个参数是连接代码,它将传递给系统的数据库引擎.前半部分"Provider=Microsoft.Jet.OLEDB.4.0",它表示了数据库的类型.不同的数据库可能会不同.后半句"Source=d:\main.mdb"它表示了数据库所在的绝对路径.
打开数据库之后,还要打开表.假如数据库中有一个表,表名为"Users",字段有两个,一个为用户名,一个为密码.那么看以下代码.
1.想返回"Users"中,[用户名]为"去年烟花"的[密码]
Recordset.open "Select 密码 From Users Where 用户名='去年烟花'",Connection,1,1
之后我们就可以把用户输入的密码进行比较,看是否允许登录.
If Recordset.eof and Recordset.bof then
Msgbox "用户不存在!",16
Else
If PassWord =Recordset("密码").value then
msgbox "登录成功!",64
Else
msgbox "密码错误!",32
End If
End If
Recordset.Close
2.假设Admin已经成功登录系统,我们想把所有的用户名和密码都显示出来
Recordset.open "Select * From Users",Connection,1,1
这时,表已经被打开,我们就用以下代码把它显示出来.
Do whlie Not Recordset.eof
Print "用户名: "Recordset("用户名").value"密码: "Recordset("密码").value
Recordset.MoveNext
Loop
Recordset.Close
由以上代码示例可以看出,打开表时,可以只打开其中的一个字段,也可以打开所有.第一个参数是SQL语句.
Select [字段名] From 表名 [Where 条件]
这里的条件可以省略.且字段名也可以用"*"来代替所有字段.
需要注意的是,如果vb.net建立目录你用(1)中的方法打开,那么(2)后面显示的代码就不能再用在(1)中.因为(1)里并没有打开[用户名]字段,所以这一句Recordset("密码")就没有值存在,还有可能出错.
后面的条件,可以用"="、""、""等运算符.比如 "Where ID32".(这里假设[ID]为数字型.)
这是打开的部分.第二个很重要的部分就是查询记录.
数据库它并不是把所有记录全部放到一个变量中备用的.而是以"当前记录"的形式来返回一个值.所以我们想从中找到有用的信息,就必须要对信息进行定位/筛选.
定位:
移动到下一条 Recordset.MoveNext
移动到上一条 Recordset.MovePrevious
移动到最后一条 Recordset.MoveLast
移动到第一条 Recordset.MoveFrist
移动到某一条 Recordset.Move Number
筛选:
Recordset.Find "条件"
如:[用方法(2)打开表之后]
Private Sub Command1_Click()
Recordset.Find "用户名=""text1.text"
If Recordset.EofTrue Then
Msgbox "该用户的密码是:"Recordset("密码").value,64
Else
Msgbox "未找到该用户的资料!",16
End If
【vb.net建立目录 vb目录列表框在哪】End Sub
MoveNext 只有当Eof不为True时,才可用,否则发生错误.而MovePrevious刚是Bof不为True时....
而只要Eof 和 Bof中有一个不为真时,也就是说只要有一条记录时,它就可以使用.
Find 方法中的条件和Open时的第一个参数中的条件表述方法是完全一致的.当在已打开的记录集中,找不到该记录时,Eof为True.找到则当前的值就是符合条件的记录.
第三个部分就是添加/修改记录.
修改记录很简单,先按以上的方法找到相关记录之后,给记录赋值就可以了.
比如:[(修改密码)按方法(1)打开表之后]
Recordset("密码").value = "https://www.04ip.com/post/123456"
Recordset.Updata
需要注意的就是,在修改完成后,要调用Updata方法,这样修改才能生效.
而添加记录则可以用以下代码来实现:
Recordset.addnew
Recordset("用户名").value = "https://www.04ip.com/post/Admin"
Recordset("密码").value = "https://www.04ip.com/post/Admin"
Recordset.Updata
这里,先要调用Addnew方法,增加一条新记录,然后对这个新记录中的各字段赋值,最后再调用Updata方法.
到这里就差不多了,最后说一下上面提到的几个方法.
Recordset.Open SQL语句,数据源,游标类型,打开方法
SQL语句不用说了,就是Select那啥的,目的就是按要求从表中返回数据
数据源就是一个打开之后的Connection对象.
去vb.net建立目录他妈的游标类型,填1就可以了 [偷笑ing]
打开方法对应了几个常数,具体哪几个可以从对象浏览器里看.
对应数值的意义:
1 只读 2 独占 3 可写 4 自已可写,别人可读
Connection.open 连接代码,服务器用户名,密码
这里的连接代码就不在多说了,服务器用户名,密码只有在连接远程数据库时才用到.
asp.net VB 如何调用类的过程?在你的网站的根目录建立一个叫App_Code的文件 , 并把这个类放进去 。
Sub datalj(ByVal sql1 As String)改成
Public Function datalj(ByVal sql1 As String) As SqlDataReader
conn.ConnectionString = str
conn.Open()
comm = New SqlCommand(sql1, conn)
rs = comm.ExecuteReader
datalj = rs
End Function
使用的时候
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim d As New DB
Dim rs As SqlDataReader = d.datalj("select * from userb")
……
End Sub
vb.net建立目录的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于vb目录列表框在哪、vb.net建立目录的信息别忘了在本站进行查找喔 。
推荐阅读
- thinkphp代码加密解密,tp5代码加密
- linux中expr命令,linux ex命令
- 三人联机动作游戏下载,仨人联机游戏
- oracle怎么解锁加锁 怎么解锁oracle被锁定的账户
- 嘉兴sap服务费,嘉兴二手房服务费几个点
- Go写妹子图爬虫,go语言写爬虫
- 多多无人直播短袖素材,拼多多无人直播素材
- python函数求交点 python求两个函数交点
- 自媒体拍摄都用什么,做自媒体用什么拍摄