Ⅰ 关于VB的文件超链接
启动不同的文件要用不同的软件。比如打开文本文件要用记事本:
Private Sub Command1_Click()
Shell "notepad c:\1.txt", vbNormalFocus
End Sub
下面是用Word打开Doc文件
Private Sub Command2_Click()
Shell "C:\Program Files\Microsoft Office\OFFICE11\WINWORD c:\2.doc"
End Sub
Ⅱ vb 链接到本地文件
窗体一个text1,一个command1.代码如下
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Private Declare Function GetDesktopWindow Lib "user32" () As Long
Function StartDoc(DocName As String) As Long
Dim Scr_hDC As Long
Scr_hDC = GetDesktopWindow()
StartDoc = ShellExecute(Scr_hDC, "Open", DocName, "", "C:\", 1)
End Function
Private Sub Command1_Click()
Dim r As Long
r = StartDoc(app.path & "\" & Text1.Text)
End Sub
运行程序,把你要打开的文件名填入text1,点按钮
Ⅲ VB中如何设置超链接
Shell 函数
执行一个可执行文件,返回一个 Variant (Double),如果成功的话,代表这个程序的任务 ID,若不成功,则会返回 0。
语法
Shell(pathname[,windowstyle])
Shell 函数的语法含有下面这些命名参数:
部分 描述
pathname 必要参数。Variant (String),要执行的程序名,以及任何必需的参数或命令行变量,可能还包括目录或文件夹,以及驱动器。在Macintosh中,可以使用MacID函数来指定一个应用程序的署名而不是名称。下面的例子使用了Microsoft Word的署名:
Shell MacID("MSWD")
Windowstyle 可选参数。Variant (Integer),表示在程序运行时窗口的样式。如果 windowstyle 省略,则程序是以具有焦点的最小化窗口来执行的。在Macintosh(系统7.0或更高)中,windowstyle仅决定当应用程序运行时是否获得焦点。
windowstyle 命名参数有以下这些值:
常量 值 描述
vbHide 0 窗口被隐藏,且焦点会移到隐式窗口。常数vbHide在Macintosh平台不可用。
VbNormalFocus 1 窗口具有焦点,且会还原到它原来的大小和位置。
VbMinimizedFocus 2 窗口会以一个具有焦点的图标来显示。
VbMaximizedFocus 3 窗口是一个具有焦点的最大化窗口。
VbNormalNoFocus 4 窗口会被还原到最近使用的大小和位置,而当前活动的窗口仍然保持活动。
VbMinimizedNoFocus 6 窗口会以一个图标来显示。而当前活动的的窗口仍然保持活动。
说明
如果 Shell 函数成功地执行了所要执行的文件,则它会返回程序的任务 ID。任务 ID 是一个唯一的数值,用来指明正在运行的程序。如果 Shell 函数不能打开命名的程序,则会产生错误。
在Macintosh中,vbNormalFocus、vbMinimizedFocus和vbMaximizedFocus都将应用程序置于前台;vbHide、vbNoFocus、vbMinimizeFocus都将应用程序置于后台。
注意 缺省情况下,Shell 函数是以异步方式来执行其它程序的。也就是说,用 Shell 启动的程序可能还没有完成执行过程,就已经执行到 Shell 函数之后的语句。
Ⅳ vb程序如何引入资源文件
首先做一个资源文件并添加到工程中
可以用资源编辑器外接程序来制作资源文件:
资源编辑器外接程序(如图)
资源编辑器外接程序增加了在VisualBasic集成开发环境中使用资源文件(.res)的能力。资源文件是由资源编辑器自动编译的,因此就不再需要一个单独的资源编辑器或是.rc文件了。
可以使用资源编辑器来:
向工程添加一个资源文件(.res)。
向一个资源文件添加新的字符串表、游标、位图、图标或自定义资源。
在一个资源文件中编辑资源的属性。
从一个资源文件中删除资源。
详细信息要想了解有关资源文件以及在一个工程中如何使用它们的详细信息,请参阅《VisualBasic程序员指南》中的“使用资源文件”。
加载或卸载资源编辑器
资源编辑器外接程序是从“外接程序”菜单的“外接程序管理器...”对话框中加载的。可以通过选中“可用外接程序”列表中的“资源编辑器”,选中“加载/卸载”复选框来加载资源编辑器;您可以通过清除复选框来卸载它。当选中资源编辑器外接程序时,每次重新启动VisualBasic它都自动地加载,直到清除了该复选框。
当加载了资源编辑器时,一个“资源编辑器”按钮被添加到“标准型”工具栏上。同时也添加了两个新的菜单命令:“工程”菜单上的“添加新资源文件”和“工具”菜单上的“资源编辑器”。
“资源编辑器”窗口(资源编辑器外接程序)
可以使用“资源编辑器”窗口添加、删除和编辑与您的工程相关联的资源文件(.res)中的资源。一次只能编辑一个资源文件;一个工程只能包含一个资源文件。
“资源编辑器”窗口是可连接的。
可用如下方法打开“资源编辑器”窗口:
在“工程”窗口中,双击资源文件,或选定资源文件并按下ENTER键。
在“工具”菜单中,选定“资源编辑器”命令。
使用VisualBasic的“标准型”工具栏上的“资源编辑器”工具栏按钮。
注意为使“资源编辑器”可见,必须在“外接程序管理器...”对话框中选定“资源编辑器”外接程序。
Window要素
“列表窗口”
显示包含在选定资源文件中的资源类型和单个资源的分层结构列表。
“工具栏”
包含表示资源编辑器各种操作的快捷方式按钮。
“状态栏”
显示图标和消息,指示文件已经被改变但没有保存。
利用资源文件进行工作
资源文件允许将应用程序特定版本的全部文本和位图收集到一起。这可以包括常数声明、图标、屏幕文本,以及可能在本地化版本之间或在修订版本或特定的配置之间发生变化的其它材料。
向工程中添加资源
可以使用资源编译器外接程序创建资源文件。编译过的资源文件带有.res扩展名。每个工程只能包含一个资源文件。
资源文件实际上是由一系列独立的字符串、位图或者其它项目组成的,其中每一项都有一个唯一的标识符。标识符可能是Long类型或String类型,取决于资源所代表的数据类型。例如,字符串的标识符为Long型,而位图的标识符则为Long型或String型。如想在代码中检索资源,应知道每个资源的标识符。引用资源的函数参数可以使用Variant数据类型。
要将新资源文件添加到您的工程中,请按照以下步骤执行:
从“工具”菜单中选择“资源编辑器”,将在资源编辑器窗口打开一个空的资源文件。
注意必须安装资源编辑器外接程序。有关安装外接程序的信息,请参阅“管理工程”中的“使用向导和外接程序”。
在资源编辑器工具栏中选择“保存”按钮以保存资源文件。文件将被添加到“相关文档”部分下的“工程资源管理器”中。
要将已存在的资源文件添加到您的工程中,请
从“工程”菜单中选择“添加新资源”。您的工程中任何已存在的资源文件将被替换。
警告假如您对已存在的资源文件做任何修改,将可能影响使用此资源文件的其它工程。确保您将文件保存在一个新文件名下。
注意必须安装资源编辑器外接程序。有关安装外接程序的信息,请参阅“管理工程”中的“使用向导和外接程序”。
详细信息关于资源文件的详细信息,请参阅“国际化”中的“使用本地化资源文件”。
注意Windows资源文件随16位或32位应用程序而不同,如果试图将一个16位资源文件添加到一个工程中,VisualBasic将产生一条错误信息。
为了将资源文件添加到工程中,可从“工程”菜单中选择“添加文件”命令,这与将别的文件添加至工程中完全一样。一个工程只能接受一个资源文件,如果试图添加第二个扩展名为.res的文件,将产生错误。
在代码中使用资源
VisualBasic提供了三个函数从资源文件中检索数据以供在代码中使用。
函数描述
LoadResString返回一个文本字符串。
LoadResPicture返回一个Picture对象,例如位图、图标或光标。
LoadResData返回一个Byte数组,用于象.wav之类的文件。
详细信息请参阅相应函数主题。
可用下列函数读取资源:
LoadResString函数
用以从资源(.res)文件装载字符串。
语法
LoadResString(index)
LoadResString函数的语法包含下列部分:
部分描述
index必需的。一个整数,它用来指定资源文件中数据的标识符(ID)。ID标识符为1的资源保留给应用程序图标。
说明
可以使用LoadResString函数代替代码中的字符串文字量。
将数据的长字符串存储在资源文件中并从该资源文件访问它们能改进装载时间,这是因为您可以根据需要从资源文件单独装载,而不是在装载窗体时一并全部装载。
LoadResString的使用对于VisualBasic应用程序的本地化有好处,这是因为需要翻译的资源一个资源文件中被隔离,并且无须访问源代码或重新编译该应用程序。
LoadResPicture函数
用以从资源(.res)文件装载位图、图标或光标。
语法
LoadResPicture(index,format)
LoadResPicture函数的语法包含下列部分:
部分描述
index必需的。一个整数或字符串,它用来指定资源文件中数据的标识符(ID)。ID标识符为1的资源保留给应用程序的图标。
format必需的。一个数值或常数,如下列“设置值”中所描述的,指定返回数据的格式。
设置值
用于format的设置值有:
常数值描述
vbResBitmap位图0位图资源
vbResIcon图标1图标资源
vbResCursor2光标资源
说明
可以使用LoadResPicture函数代替对存储在Form或控件的Picture属性中的图形的引用。
将位图、图标或光标存储在资源文件中并从该资源文件对它们进行访问能改进装载时间,这是因为可以根据需要从资源文件单独装载,而不是在装载Form时一并全部装载。
LoadResPicture的使用对于VisualBasic应用程序的本地化有好处,这是因为需要翻译的资源在一个资源文件中被隔离,并且无须访问源代码或重新编译该应用程序。
LoadResData函数
用以从资源(.res)文件装载若干可能类型的数据,并返回一个Byte数组。
语法
LoadResData(index,format)
LoadResData函数的语法包含下列部分:
部分描述
index必需的。一个整数或字符串,它用来指定资源文件中数据的标识符(ID)。ID标识符为1的资源保留给应用程序的图标。
Format必需的。一个数值,它用来按照下列“设置值”中的描述,指定返回数据的原始格式。该数值也可以是用户定义资源的字符串名。
设置值
用于format的设置值有:
设置描述
1光标资源
2位图资源
3图标资源
4菜单资源
5对话框
6字符串资源
7字体目录资源
8字体资源
9加速键表
10用户定义资源
12群组光标
14群组图标
说明
LoadResData从资源文件装载的数据可以达到64K。
对位图、图标、光标资源类型使用LoadResData将返回包含该资源中的实际二进制位的字符串。如果想使用实际的位图、图标或资源,请使用LoadResPictureoˉêy.
LoadResData的使用对于VisualBasic应用程序本地化有好处,这是因为需要翻译的资源在一个资源文件中被隔离,并且无须访问源代码或重新编译该应用程序。
Ⅳ vb.net如何通过超链接的方式打开其他文件
超链接在本质上是文字式按钮,事件类型仍旧属于鼠标单击事件。
在鼠标单击事件中,使用shell命令。
例如:
dim file as string=“C:\1.doc”
a=Shell("C:\Program Files\Microsoft Office\OFFICE11\WORD.EXE " & file, vbNormalFocus)
注意要有空格。
Ⅵ vb如何文件关联
'把以下代码放到模块中,然后再需要的地方调用,比如(CreateAssociation ".txt", "txtfile", App.Path & "\" & App.EXEName & ".exe", App.Path & "\" & App.EXEName & ".exe")就是注册本程序为txt文件的打开方式,并把文件图标改为本程序的图标,注册文件关联后会立即刷新图标, Option Explicit
Public Const REG_SZ As Long = 1
Public Const REG_DWORD As Long = 4
Public Const HKEY_CLASSES_ROOT = &H80000000
Public Const HKEY_CURRENT_USER = &H80000001
Public Const HKEY_LOCAL_MACHINE = &H80000002
Public Const HKEY_USERS = &H80000003
Public Const ERROR_NONE = 0
Public Const ERROR_BADDB = 1
Public Const ERROR_BADKEY = 2
Public Const ERROR_CANTOPEN = 3
Public Const ERROR_CANTREAD = 4
Public Const ERROR_CANTWRITE = 5
Public Const ERROR_OUTOFMEMORY = 6
Public Const ERROR_INVALID_PARAMETER = 7
Public Const ERROR_ACCESS_DENIED = 8
Public Const ERROR_INVALID_PARAMETERS = 87
Public Const ERROR_NO_MORE_ITEMS = 259
Public Const KEY_ALL_ACCESS = &H3F
Public Const REG_OPTION_NON_VOLATILE = 0
Public Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Public Declare Function RegCreateKeyEx Lib "advapi32.dll" Alias "RegCreateKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal Reserved As Long, ByVal lpClass As String, ByVal dwOptions As Long, ByVal samDesired As Long, ByVal lpSecurityAttributes As Long, phkResult As Long, lpdwDisposition As Long) As Long
Public Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, phkResult As Long) As Long
Public Declare Function RegSetValueExString Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, ByVal lpValue As String, ByVal cbData As Long) As Long
Public Declare Function RegSetValueExLong Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpValue As Long, ByVal cbData As Long) As Long
Private Declare Sub SHChangeNotify Lib "shell32" (ByVal wEventId As Long, ByVal uFlags As Long, ByVal dwItem1 As Long, ByVal dwItem2 As Long)
Private Const SHCNE_ASSOCCHANGED = &H8000000
Private Const SHCNF_IDLIST = &H0
Public Sub CreateAssociation(strAsso As String, strDescription As String, strExeName As String, strIcon As String)Dim sPath As String CreateNewKey strAsso, HKEY_CLASSES_ROOT
SetKeyValue HKEY_CLASSES_ROOT, strAsso, "", strDescription, REG_SZ
'建立打开键
CreateNewKey strDescription & "\shell\open\command", HKEY_CLASSES_ROOT
SetKeyValue HKEY_CLASSES_ROOT, strDescription, "", strDescription, REG_SZ
sPath = strExeName & " %1"
SetKeyValue HKEY_CLASSES_ROOT, strDescription & "\shell\open\command", "", sPath, REG_SZ
''
CreateNewKey "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\" & strAsso, HKEY_CURRENT_USER
SetKeyValue HKEY_CURRENT_USER, "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\" & strAsso, "Progid", strDescription, REG_SZ
'建立图标
CreateNewKey strDescription & "\DefaultIcon", HKEY_CLASSES_ROOT
SetKeyValue HKEY_CLASSES_ROOT, strDescription & "\DefaultIcon", "", strIcon, REG_SZ
SHChangeNotify SHCNE_ASSOCCHANGED, SHCNF_IDLIST, 0, 0 '刷新文件关联
End Sub
Public Function SetValueEx(ByVal hKey As Long, sValueName As String, lType As Long, vValue As Variant) As LongDim nValue As Long
Dim sValue As String
Select Case lType
Case REG_SZ
sValue = vValue & Chr$(0)
SetValueEx = RegSetValueExString(hKey, sValueName, 0&, lType, sValue, LenB(StrConv(sValue, vbUnicode)))
Case REG_DWORD
nValue = vValue
SetValueEx = RegSetValueExLong(hKey, sValueName, 0&, lType, nValue, 4)
End Select
End FunctionPublic Sub CreateNewKey(sNewKeyName As String, lPredefinedKey As Long)Dim hKey As Long
Dim r As Long
r = RegCreateKeyEx(lPredefinedKey, sNewKeyName, 0&, vbNullString, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, 0&, hKey, r)
Call RegCloseKey(hKey)
End SubPublic Sub SetKeyValue(ByVal Keyhwnd As Long, sKeyName As String, sValueName As String, vValueSetting As Variant, lValueType As Long)
Dim r As Long
Dim hKey As Long
r = RegOpenKeyEx(Keyhwnd, sKeyName, 0, KEY_ALL_ACCESS, hKey)
r = SetValueEx(hKey, sValueName, lValueType, vValueSetting)
Call RegCloseKey(hKey)End Sub
Ⅶ 如何在VB中调用文件夹数据
窗体上画3个文本框控件Text1、Text2、Text3
两个按钮Command1和Command2
Command1用于保存数据,Command2用于从文本读取数据并填入文本框
代码如下:
Private Sub Command1_Click()
Dim Fnum As Double, StrToWrite As String
Fnum = FreeFile(0)
StrToWrite = "a:123" & vbCrLf & "b:345" & vbCrLf & "c:765"
Open "c:\123.txt" For Binary Access Write As Fnum
Put Fnum, , StrToWrite
Close Fnum
End Sub
Private Sub command2_Click()
Dim Fnum As Double, StrRead As String, TmpArray As Variant
Fnum = FreeFile(0)
Open "C:\123.txt" For Binary Access Read As Fnum
StrRead = Input$(LOF(Fnum), Fnum)
Close Fnum
TmpArray = Split(StrRead, vbCrLf)
Text1.Text = Split(TmpArray(0), ":")(1)
Text2.Text = Split(TmpArray(1), ":")(1)
Text3.Text = Split(TmpArray(2), ":")(1)
End Sub
Ⅷ 在 VB 中如何链接到一个 CHM 帮助文件
VB实现CHM帮助,相应做以下的工作:
1、生成CHM帮助文件。CHM帮助文件实际就是用HTM文件组织起来的一个帮助文件,首先编辑HTM文件,在HTM文件中可以有文字的帮助说明,也可以有图片的帮助说明,这些HTM文件组成了一个比较严密的文件系统,他们有内在的联系,好像好一个静态网站一样。
编辑好HTM文件后,用CHM帮助生成软件进行编译,生成CHM文件,这就是我们准备要调用的帮助文件。
2、首先声明一个函数,就是调用帮助文件的函数:
Declare Function Htmlhelp Lib "hhctrl.ocx" Alias "HtmlHelpA" _
(ByVal hwndCaller As Long, _
ByVal pszFile As String, _
ByVal uCommand As Long, _
ByVal dwData As Any) As Long
其次在打开帮助文件的位置添加以下语句:
Call Htmlhelp(hWnd, App.HelpFile, HH_DISPLAY_TOPIC, ByVal "帮助文件.htm")
当然在程序启动时必须加载帮助文件:
Private Sub Form_Load()
App.HelpFile = App.Path & "\帮助文件.chm"
End Sub
Ⅸ 在VB中引用文件夹使其在EXCEL创建超链接
Sub 读取文件名称()
File1.Path = "x:\xxxx" '指定一个文件夹
File1.Pattern = "*.xlsx" '指定文件类型
Dim i As Integer
For i = 0 To File1.ListCount - 1
File1.List(i) = Cells(i, 1)
Next i
End Sub
单元格的下标要从1开始的
换成cells(i+1,1)=file1.list1(i)
Ⅹ 如何通过excel VB获取指定文件夹里的指定文件名称与修改时间,并为文件名添加超链接
方法在文件夹123.xls中,点按钮就可以了,文件夹的路径你要自己修改 这里考虑了文件夹下还有子文件夹,但没考虑子文件夹下,还有子文件夹的情况. 附件:遍历文件夹的方法.rar