The Regprogid Tool


Introduction

You must use a moniker to create Java classes from other platforms. The moniker used in J-Integra® is called "JintMk.dll". You must specify the name based on the moniker naming convention. For example, in Visual Basic, if you want to create "MyClass" that is available on "MyJvm", you create the object by calling GetObject and providing the moniker information:

GetObject("MyJvm:MyClass");

Some older platforms do not accept the moniker naming convention, and only accept progId. For instance, if we are using a version of Visual Basic that does not accept "MyJvm:MyClass", we have to map this name to a progId so that the platform accepts it. Regprogid is the tool you use to do this mapping. For instance, you can map "MyJvm:MyClass" to "YourJvm.YourClass" and then use Server.CreateObject("YourJvm.YourClass") to create the class you are interested in.


Command Line Options

Running regprogid /? we get the following output:

regprogid Intrinsyc Software International, Inc.
Usage: regprogid [/marksafe] progId "JvmId:Java Class"
       regprogid /unregister progId
       regprogid /list
       regprogid /listall
       regprogid /?

In order to map a progId to a Java class (which is actually a moniker), you specify the progId name that you like to use and then the name of the registered JVM (please refer to The regjvm tool to learn how to register a JVM) and the Java class separated by a colon ":". By specifying "/marksafe", regprogid maps the progId and also marks it safe for scripting and for persistence.

Examples:

The following command maps "MyJvm.MyClass" to "MyJvm:MyClass". Note that the 1st parameter has a period sign, whereas the 2nd parameter has a quote sign and a column sign.

regprogid MyJvm.MyClass "MyJvm:MyClass" 

The following command maps "MyJvm.MyClass" to "YourJvm:YourClass" and also marks it safe.

regprogid /marksafe MyJvm.MyClass "YourJvm:YourClass"

If the provided progId has been already mapped to a moniker, regprogid will not map the progId. You must unregister it first and then re-register it.

In order to remove the mapping, run regprogid with the "/unregister" switch and the name of the progId that has been mapped.

Example:

The following command removes the mapping of "MyJvm.MyClass".

regprogid /unregister MyJvm.MyClass

Example:

The following command lists all classes registered with J-Integra® tools.

regprogid /list

List contains information on each class: CLSID, Moniker, ProgId.