引用外接程序

一旦一个外接程序在 Windows 系统注册中注册后,您必须在它出现在外接程序管理器中而能为 Visual Basic 所用之前为它建立一个引用。有两种方法作此事:

在 Vbaddin.ini 文件中创建一项

您可以通过任何方式创建一个项目,但最常用的编程方法是利用 Windows API 函数 WritePrivateProfileString。这里有一段示例代码演示具体的做法(该函数的参数说明见示例之后):

Declare Function WritePrivateProfileString& Lib _ 
"kernel32" Alias "WritePrivateProfileStringA" _ 
(ByVal AppName$, ByVal KeyName$, ByVal _ 
keydefault$, ByVal FileName$)

Sub AddToINI()
Dim rc As Long
   rc = WritePrivateProfileString("Add-Ins32", _ 
   "MyAddInProject.MyAddInClass", "0", _ 
   "VBADDIN.INI")
   MsgBox "Add-in is now entered in VBADDIN.INI file."
End Sub

各参数的意义

函数 WritePrivateProfileString 的第一个参数是 .ini 文件中放置该信息的那一节的名称,对于外接程序,这个参数总是 "Add-Ins32"

第二个参数是程序 ID,它由工程和类的名称组成,中间用一个点隔开。工程名在“工程”菜单的“属性”对话框中输入。类名在类模块 Name 属性中输入(注意,这里模块名不起作用)。

第三个参数用于该外接程序在 Vbaddin.ini 文件中的登录项,在这个示例中为 0。登录项设为 1 表示在 IDE 启动时外接程序将被加载(即在“外接程序管理器”中成为被选中的)。登录项设为 0 表示在 IDE 启动时该外接程序不被加载,但被包含在“外接程序管理器”的可用外接程序列表中。

第四个,也是最后一个参数是该设置加入的文件名,对于外接程序,这个参数是 Vbaddin.ini 文件。

更友好的名称

尽管形如 project.class(它的程序ID)的名称在 .ini 文件中看起来还可以,但是当用户在“外接程序管理器”的外接程序列表中看到它时,也许仍然会有些迷惑,可以将它改得更友好一些。

要修改“外接程序管理器”中显示的外接程序名称,请按照以下步骤执行:

  1. 在 Visual Basic 中单击“视图”菜单,然后单击“对象浏览器”。

  2. 在类列表中,单击右键处理外接程序的 OnConnection 及 OnDisconnection 事件的类的名称,然后再单击“属性”。

  3. 在 “成员选项”对话框的“描述”框中输入更友好的名称,然后单击“确定”。

输入的名称将与外接程序保存在一起,因此在外接程序安装到系统上之后,用户在“外接程序管理器”中将看到的同样的描述。

用外接程序设计器创建引用

创建外接程序引用的另一种(更容易的)途径是用外接程序设计器。要这样做:

  1. 创建一个新的外接程序工程(如果您还没有这样做的话),

  2. 双击 “工程”窗口的外接程序设计器“连接”。这样就启用了外接程序设计器。

  3. 在“显示名称”中,输入您的外接程序的名称,该名称将在后面的“外接程序管理器”对话框中出现。

  4. 在“外接程序描述”中,输入关于外接程序作什么的描述。

  5. 在“应用程序”和“应用程序版本”中,选择宿主哑应用程序和它的版本,在这里是 Visual Basic 版本 6.0.

  6. 在“初始装载行为”中,选择您的外接程序是如何装载的:
  7. 如果您希望您的外接程序运行时不显示任何对话框或窗体,复选“外接程序是命令行安全的(无任何 UI )”—也即,运行“在屏幕之后”而无需任何可视界面。

  8. 选择“高级的”选项卡以输入有关本地化资源的其它信息,并注册设置,如果可用的话。

一旦上述信息填完后,您可以编译工程,您的新外接程序将出现在外接程序管理器的可用外接程序列表中。