The sample plug-includes two registry files: VBSMPDBG.REG, a windows-readbale registry file for use during development and VBSMPRLS.REG, a registry file for distribution on the iSeries™ server.
The following table describes the sections in this registry file, and recommends changes for use when developing your own plug-in.
Primary registry key
The primary registry key defines a set of fields which specify global information for the plug-in. This information is required.
See Example Primary registry key for a description of each field.
[HKEY_CLASSES_ROOT\IBM.AS400.Network \3RD PARTY EXTENSIONS\IBM.VBSample] "Type"="Plugin" "NLS"="vbsmpmri.dll" "NameID"=dword:00000080 "DescriptionID"=dword:00000081 "MinimumIMPIRelease"="NONE" "MinimumRISCRelease"="040200" "ProductID"="NONE" "ServerEntryPoint"="vbsample.dll" |
Recomended changes:
Registering a new folder
This section will register a Visual Basic Plug-in ListManager class implementation for each new folder added to the iSeries Navigator hierarchy. If your plug-in does not add any new folders to the iSeries Navigator hierarchy, delete this section and proceed to the next task.
The Visual Basic ListManager class is the main interface to serve data to your plug-in folder.
The sample places the Sample Visual Basic Folder into the root level of an iSeries server system name in the iSeries Navigator hierarchy. If you want your folder to appear at some other point in the hierarchy, you must change the "Parent" key value. See Parent field values for a listing of possible values.
See Example: New folder registry key for a description of each field, and the possible values.
[HKEY_CLASSES_ROOT\IBM.AS400.Network\ 3RD PARTY EXTENSIONS\IBM.VBSample\ folders\SampleVBFolder] "Parent"="AS4" "Attributes"=hex:00,01,00,20 "CLSID"="{040606B1-1C19-11d2-AA12-08005AD17735}" "VBClass"="vbsample.SampleListManager" "VBInterface"="{0FC5EC72-8E00-11D2-AA9A-08005AD17735}" "NameID"=dword:00000082 "DescriptionID"=dword:00000083 "DefaultIconIndex"=dword:00000001 "OpenIconIndex"=dword:00000001 |
Recomended changes:
Registering VB plug-in objects
The final section of the registry specifies which objects in the Navigator hierarchy are affected by implementation of the Visual Basic plug-in.
On many of the ActionsManager, ListManager and DropTargetManager class methods, you will be passed in items or objects. To determine which folder object is being referenced, use the object type string that is defined in the Windows® registry.
Property sheets still can be added to your plug-in by using a context menu item. You cannot use a registry key for a property sheet that is the mechanism that is used for a C++ plug-in. Property sheet handlers including the Auto Refresh property sheet handler are not supported for Visual Basic plug-ins.
;-------------------------------------------------------------------- ; Register a context menu handler for the new folder and its objects [HKEY_CLASSES_ROOT\IBM.AS400.Network\3RD PARTY EXTENSIONS\ IBM.VBSample\shellex\SampleVBFolder\*\ ContextMenuHandlers\{040606B2-1C19-11d2-AA12-08005AD17735}] "VBClass"="vbsample.SampleActionsManager" "VBInterface"="{0FC5EC7A-8E00-11D2-AA9A-08005AD17735}" ;--------------------------------------------------------------------- ; Register drag and drop context menu handlers [HKEY_CLASSES_ROOT\IBM.AS400.Network\3RD PARTY EXTENSIONS\ IBM.VBSample\shellex\SampleVBFolder\*\ DragDropHandlers\{040606B2-1C19-11d2-AA12-08005AD17735}] "VBClass"="vbsample.SampleActionsManager" "VBInterface"="{0FC5EC7A-8E00-11D2-AA9A-08005AD17735}" ;---------------------------------------------------------------------- ; Register Drop Handler to accept drops of objects [HKEY_CLASSES_ROOT\IBM.AS400.Network\3RD PARTY EXTENSIONS\IBM.VBSample\ shellex\SampleVBFolder\*\ DropHandler] @="{040606B2-1C19-11d2-AA12-08005AD17735}" "VBClass"="vbsample.SampleDropTargetManager" "VBInterface"="{0FC5EC6E-8E00-11D2-AA9A-08005AD17735}" |
Recommended changes:
Global changes:
Define a unique programmatic identifier, or ProgID for your plug-in. The ProgID should match the <vendor>.<component> text string, where vendor identifies the name of the vendor who developed the plug-in, and component describes the function being provided. In the sample plug-in, the string "IBM®.Sample" identifies IBM as the vendor, and "Sample" as the description of the function that is provided by the plug-in. This will be used throughout the registry file, and will name the directory where your plug-in will reside on both the iSeries server and the workstation.
Replace all instances of "IBM.VBSample" with your new [vender].ProgID.
See Example: Primary registry key.