- 浏览: 174825 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
xiangyufangai:
很好很强大膜拜中哈哈!!
VB 两个字符串处理函数(类似Left/Mid/Right/Split的结合) -
hellohank:
这个……叫摘要算法,不叫加密算法~
Java实现的加密工具类(支持MD5和SHA) -
NIUCH1029291561:
接口有问题奥
网银在线支付接口和应用 -
yeuego:
能幫你就行了
MySQL索引分析 -
ForgiDaved:
很给力的介绍。记得前段时间给一个系统加功能,设计的表没有 ...
MySQL索引分析
以下列出三种不同方法的代码供大家参考
1、注册表方式
模块代码
Option Explicit
Public Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long
Public Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Public Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Public Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long
Public Const REG_SZ = 1
Public Const HKEY_LOCAL_MACHINE = &H80000002
'*************************************************************************
'**函 数 名: SetAutoRun
'**输 入: ByVal Autorun(Boolean)
'**功能描述: 随WINDOWS自动启动/取消启动模块
'**调用方法: Call SetAutoRun(True/False)
'**作 者: Mr.David
'**日 期: 2006-09-05 09:07:25
'*************************************************************************
Public Sub SetAutoRun(ByVal Autorun As Boolean)
Dim KeyId As Long
Dim MyexePath As String
Dim regkey As String
MyexePath = App.Path & "\" & App.EXEName & ".exe" '获取程序位置
regkey = "Software\Microsoft\Windows\CurrentVersion\Run" '键值位置变量
Call RegCreateKey(HKEY_LOCAL_MACHINE, regkey, KeyId) '建立
If Autorun Then
RegSetValueEx KeyId, "MySoftware", 0&, REG_SZ, ByVal MyexePath, LenB(MyexePath)
Else
RegDeleteValue KeyId, "MySoftware"
End If
RegCloseKey KeyId
End Sub
调用方法
SetAutoRun(ByVal Autorun As Boolean)
-----------------------------------------------------------------------------------------------
2、利用Vb5stkit.dll里的函数
窗体部分代码,加入6个按钮。
Option Explicit
Private Sub CmdAddStartup_Click() '在开始菜单的启动程序组下创建记事本的快捷方式
Call OSfCreateShellLink("\启动", "记事本", GetWindowsPath & "\Notepad.exe", "")
End Sub
Private Sub CmdAddDeskTop_Click() '在桌面创建记事本的快捷方式
Call OSfCreateShellLink("..\..\桌面", "记事本", GetWindowsPath & "\Notepad.exe", "")
End Sub
Private Sub CmdAddProgram_Click() '在程序菜单的Notepad程序组下创建记事本的快捷方式
Call OSfCreateShellGroup("Notepad") '先建立程序组
Call OSfCreateShellLink("Notepad", "记事本", GetWindowsPath & "\Notepad.exe", "")
End Sub
Private Sub CmdAddStartMenu_Click()
Dim i As Long
For i = 1 To 5 '在开始菜单创建记事本的快捷方式,必须用循环才能创建?
Call OSfCreateShellLink("..\..\「开始」菜单", "记事本", GetWindowsPath & "\Notepad.exe", "")
Next
End Sub
Private Sub CmdQuickLaunch_Click() '在快捷工具栏下创建记事本的快捷方式
Call OSfCreateShellLink("..\..\Application Data\Microsoft\Internet Explorer\Quick Launch", "记事本", GetWindowsPath & "\Notepad.exe", "")
End Sub
Private Sub CmdDelAllLink_Click()
Call OSfRemoveShellLink("..\..\「开始」菜单", "记事本") '删除开始菜单上的快捷方式
Call OSfRemoveShellLink("..\..\桌面", "记事本") '删除桌面上的快捷方式
'Call OSfRemoveShellLink("Notepad", "记事本") '删除Notepad程序组下的快捷方式,这样不能删除程序组
Call RemoveShellGroup '删除Notepad程序组下的快捷方式
Call OSfRemoveShellLink("\启动", "记事本") '删除启动菜单下的快捷方式
Call OSfRemoveShellLink("..\..\Application Data\Microsoft\Internet Explorer\Quick Launch", "记事本") '删除快捷工具栏下的快捷方式
End Sub
Private Sub RemoveShellGroup()
On Error GoTo ToExit '打开错误陷阱
'------------------------------------------------
'RmDir删除一个存在的目录或文件夹。语法RmDir Path
'必要的 path 参数是一个字符串表达式,用来指定要删除的目录或文件夹。path 可以包含驱动器。如果没有指定驱动器,则 RmDir 会在当前驱动器上删除目录或文件夹。
'说明如果想要使用 RmDir 来删除一个含有文件的目录或文件夹,则会发生错误。在试图删除目录或文件夹之前,先使用 Kill 语句来删除所有文件。
Kill (GetProgarmPath(Me.hWnd) & "\Notepad\记事本.lnk")
RmDir (GetProgarmPath(Me.hWnd) & "\Notepad")
'------------------------------------------------
Exit Sub
ToExit:
Resume Next
End Sub
模块代码
Option Explicit
'-----------------------------------------------------
' 创建和删除快捷方式
'-----------------------------------------------------
' CmdAddStartup "创建启动程序组快捷方式"
' CmdAddDeskTop "创建桌面快捷方式"
' CmdAddStartMenu "创建开始菜单快捷方式"
' CmdAddProgram "创建程序组下的快捷方式"
' CmdQuickLaunch "创建快捷工具栏的快捷方式"
' CmdDelAllLink "删除所有快捷方式"
'-----------------------------------------------------
'要在VB中创建Windows的快捷方式,需要用到VB的一个动态链接库
'Vb5stkit.dll。在该动态链接库中提供了三个函数
'OSfCreateShellGroup、OSfCreateShellLink、OSfRemoveShellLink
'分别用于创建快捷方式程序组、创建快捷方式和删除快捷方式。
'-----------------------------------------------------
Declare Function OSfCreateShellGroup Lib "Vb5stkit.dll" _
Alias "fCreateShellFolder" (ByVal lpstrDirName As String) As Long
'lpstrDirName指定了程序组的名称
'-----------------------------------------------------
Declare Function OSfCreateShellLink Lib "Vb5stkit.dll" _
Alias "fCreateShellLink" (ByVal lpstrFolderName As String, _
ByVal lpstrLinkName As String, ByVal lpstrLinkPath As String, ByVal lpstrLinkArguments As String) As Long
'lpstrfoldername指定保存快捷方式的文件夹
'lpstrlinkname指定快捷方式的文件名
'lpstrLinkpathe指定快捷方式所指向的应用程序或文件
'lpstrLinkArguments是程序运行所需的参数
'-----------------------------------------------------
Declare Function OSfRemoveShellLink Lib "Vb5stkit.dll" Alias _
"fRemoveShellLink" (ByVal lpstrFolderName As String, ByVal lpstrLinkName As String) As Long
'获取Windows目录
Private Declare Function GetWindowsDirectory Lib "kernel32" Alias _
"GetWindowsDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long) As Long
'获得文件夹路径
Private Declare Function SHGetSpecialFolderPath Lib "shell32.dll" Alias "SHGetSpecialFolderPathA" (ByVal hwndOwner As Long, ByVal lpszPath As String, ByVal nFolder As Long, ByVal fCreate As Long) As Long
Private Const Max_Path = 260 '缓冲区大小
Private Const CSIDL_PROGRAMS = &H2 '程序组常量
'*************************************************************************
'**函 数 名: GetWindowsPath
'**输 入: 无
'**输 出: (String) -
'**功能描述: 得到Windows路径
'**全局变量:
'**调用模块:
'**作 者: Mr.David
'**日 期: 2006-09-19 19:49:17
'**修 改 人:
'**日 期:
'**版 本: V1.0.0
'*************************************************************************
Public Function GetWindowsPath() As String
Dim ChrLen As Long, WinDir As String
WinDir = Space$(Max_Path)
ChrLen = GetWindowsDirectory(WinDir, Max_Path)
WinDir = Left$(WinDir, ChrLen)
GetWindowsPath = WinDir
End Function
'*************************************************************************
'**函 数 名: GetProgarmPath
'**输 入: frmHwnd(Long) -
'**输 出: (String) -
'**功能描述: 获取开始菜单程序组的路径
'**作 者: Mr.David
'**日 期: 2006-09-19 19:48:16
'*************************************************************************
Public Function GetProgarmPath(frmHwnd As Long) As String
Dim CSILD_NUM As Long, strBouff As String
strBouff = String$(Max_Path, 0)
SHGetSpecialFolderPath frmHwnd, strBouff, CSIDL_PROGRAMS, 0
GetProgarmPath = Left$(strBouff, InStr(1, strBouff, Chr$(0)) - 1)
End Function
-----------------------------------------------------------------------------------------------
3、引用系统里面都有的WSHom.Ocx
Option Explicit
'*************************************************************************
'**函 数 名: SetAutoRun
'**输 入: ByVal Autorun(Boolean)
'**功能描述: 随WINDOWS自动启动/取消启动模块
'**调用方法: Call SetAutoRun(True/False)
'**作 者: Mr.David
'**日 期: 2006-09-05 09:07:25
'*************************************************************************
Public Sub SetAutoRun(ByVal Autorun As Boolean)
'WshShell 对象
'ProgId Wscript.Shell
'文件名 WSHom.Ocx
Dim WshShell As WshShell
Set WshShell = CreateObject("Wscript.Shell")
If Autorun Then
WshShell.RegWrite "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\" & App.EXEName, App.Path & "\" & App.EXEName & ".exe"
Else
WshShell.RegDelete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\" & App.EXEName
End If
Set WshShell = Nothing
End Sub
发表评论
-
vb 启动外部程序并且模拟鼠标点击
2011-03-09 13:28 1166Imports System.Runtime.InteropS ... -
VB 列出SQL数据库中所有表及字段信息
2011-03-09 13:24 1156程序思想:用Select name From sysobje ... -
VB 纯代码实现Timer控件的功能
2011-03-09 13:23 1356本博客有一篇类似的文章《VB 中运用 TimeSetEvent ... -
VB 控制音量
2011-03-09 13:22 1233'按钮一是音量增加,按钮二是音量减少,按钮三是静音切换. ... -
拦截 VB TextBox 双击消息
2011-03-09 13:22 949我们都知道在VB中TextBox默认是没有双击消息过程的(也就 ... -
VB 获取/设置屏幕分辨率
2011-03-09 13:21 1116Option ExplicitPrivate Decla ... -
VB 将数据快速导入EXCEL
2011-03-09 13:21 1037Public Function ToExcel()On ... -
VB 建立快捷方式
2011-03-09 13:20 784Private Declare Function fCr ... -
VB 获取快捷方式原文件路径
2011-03-09 13:20 925'此方法不需要引用IShellLink.Private ... -
VB 的一组字符串转换函数
2011-03-09 13:20 788Public Function chrConvert(s ... -
VB 在浏览目录时指定初始目录
2011-03-09 13:19 1064'VB也可以使用CallBack,下面是一个例子: '先 ... -
VB 获得鼠标滚轮的事件
2011-03-09 13:18 999'窗体代码Private Sub Form_Load() ... -
VB 比较两组字符串
2011-03-09 13:18 1291【方法一】 StrComp(string1, Stri ... -
VB 用API下载文件实例
2011-03-09 13:17 803'########################### ... -
VB 窗口处理技巧大全
2011-03-09 13:17 788VB提供了API函数SetWindowLong和GetWind ... -
VB 实现屏幕右下角浮出式消息窗口,透明淡出效果。
2011-03-09 13:16 992'任务栏高度[此部分相关代码转载自 枕善居]Privat ... -
VB Filter 函数用法
2011-03-09 13:16 1958例子1:Dim aa(10) As StringDim bbD ... -
VB 在EXPLORER进程崩溃之后重建托盘图标
2011-03-09 13:15 852重点为:向系统注册“TaskbarCreated”消息 ... -
Shell 调用程序后等待该程序结束后返回继续
2011-03-09 13:15 1227方法1: Private Declare Functi ... -
VB 最简单的WAV声音或音乐文件播放的代码
2011-03-09 13:14 1377'最简单的WAV声音或音乐文件播放的代码'API声明Pr ...
相关推荐
可以使vb程序开机自动运行可以使vb程序开机自动运行可以使vb程序开机自动运行可以使vb程序开机自动运行可以使vb程序开机自动运行可以使vb程序开机自动运行可以使vb程序开机自动运行可以使vb程序开机自动运行可以使vb...
本教程将详细介绍如何使用VB6.0编写开机自动运行程序。 首先,我们要了解Windows开机自启动的机制。在Windows中,可以通过注册表键`HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run`或`HKEY_...
为了实现开机自动运行程序,首先我们需要创建一个VB6.0项目,然后编写代码来实现上述任一或多种开机自启动方法。例如,我们可以创建一个简单的VB6.0程序,该程序会在启动后向注册表添加一条记录,使得下次开机时自动...
VB添加开机启动,开机自动运行功能,通过修改注册表的方法,让程序随windows电脑系统自动启动运行,VB6.0设置注册表随WINDOWS自动启动的功能,用到了一个随WINDOWS自动启动/取消启动模块AutoRun.bas,你可将此模块...
### 编辑使VB开机自动运行 #### 一、引言 在计算机系统中,让程序开机自动运行是一项常见的需求,特别是在系统维护、自动化任务执行等场景下尤为重要。本篇文章将详细阐述如何利用Visual Basic(简称VB)实现程序...
在VB(Visual Basic)编程中,创建一个程序使其能在计算机开机时自动运行,通常涉及到注册表的修改。本文将深入探讨如何使用VB实现这一功能,同时也会涉及注册表的读写操作,这对于初学者理解系统启动机制和VB编程至...
通过这种方式,VB.NET开发者可以轻松地集成开机自启动功能,使得程序能够按照用户的意愿在每次开机时自动运行。这种功能常用于系统维护工具、监控软件或其他需要后台运行的应用。同时,提供关闭开机自启动的选项也是...
VB给程序添加随系统启动(开机自动运行)功能,跟随WINDOWS启动的控件,不多介绍了,相信大多数搞VB的都知道是什么意思,把你的程序添加到开机启动列表里,电脑一启动,就自动打开你的程序,或最小化的托盘图标处。
在VB.NET编程环境中,开发人员有时需要实现对系统开机启动项的管理,以便于自定义程序的自动运行。本文将详细讲解如何使用VB.NET来开启和关闭开机自动启动程序。 首先,我们需要理解Windows操作系统中开机启动项的...
### 开机自动运行程序代码详解 #### 一、概述 本文档主要介绍了一种通过注册表设置程序在系统启动时自动运行的方法,并提供了一个具体的VBScript实现案例。此外,还简单涉及了另一种方法,即利用Vb5stkit.dll创建...
在VB.NET编程环境中,开发一款Winform应用程序时,有时我们需要实现窗口在后台静默运行、防止多实例同时打开以及能够开机自动启动的功能。这个“BgProcessTemplate.rar”压缩包提供了一个示例,帮助开发者理解并实现...
内容索引:VB源码,系统相关,开机运行,启动项,自动运行 VB设置程序开机自动运行的示例代码,这是个大家都熟悉的功能,现在有不少的软件都喜欢让自己的程序安装后自动随用户计算机启动,这样做有时候是为为提升程序...
该程序具备定时关机、自动关机、语音提示以及开机自动运行等多种功能,极大地提升了用户在日常使用电脑时的便利性。 首先,定时关机功能是VB自动关机程序的核心特性。用户可以根据自己的需求设定一个特定的时间点,...
在VB(Visual Basic)编程中,实现程序开机自动启动的方式是通过操作Windows注册表来完成的。注册表是Windows操作系统中的一个重要组件,它存储着系统和应用程序的各种设置信息。开机自启动就是在用户登录系统时,...
在Windows操作系统中,开机自动启动程序是指在系统启动时会自动运行的一系列应用程序或脚本。这些程序通常被设定为用户登录或者系统启动时执行,以便实现特定功能,如系统维护、后台服务、用户个性化设置等。VB.NET...
VB6.0将程序设置成开机自动执行,这个功能估计大家都熟悉吧,把你编写的VB应用程序添加到Windows的开机启动列表中,电脑启动完成后,自动加载你的程序并运行,现在很多软件都有这功能,不过不要用太多,有些用户会烦...
7. 自动启动:为了让程序在开机后自动运行,VB可以利用注册表操作或任务计划程序API来实现。 在描述中提到的“www.2e3.org”可能是提供这个VB源码的网站。这个网站可能包含了源代码的下载链接、使用教程、示例以及...
VB开机启动项管理程序附代码,'将以上代码存为模块。 '调用方法: '设为开机自动运行则用Call SetAutoRun(True) '取消开机自动运行则为 Call SetAutoRun(false)
标题中的“vb源码-开机自动发送邮件”指的是使用Visual Basic(VB)编程语言编写的一段代码,这段代码被设计成在计算机启动时运行,并自动发送预设的电子邮件到指定的收件人。VB是一种流行的编程环境,尤其适用于...
总结,VB添加程序到注册表开机启动项涉及到对Windows注册表的理解,VB的Registry对象操作,以及自动运行程序的概念。通过编写适当的VB代码,开发者可以实现程序的自启动功能,这对于开发系统服务或需要后台运行的...