; Template for master.inf ; Copyright 1996, 1997 Microsoft Corporation ; Version 1.5, 22 January 1997 ; This inf file controls the user's installation of your Java ; classes. It is provided as a template; make a copy and modify the copy. ; This file is separated into sections; be sure to make the ; necessary changes in each one. ; See the SDK for Java documentation (under Tools) for information on ; using this file with the cabarc.exe utility to distribute Java classes. [hook1] ; In this line, replace CabFileName.cab with the inner CAB file name ; that contains your classes. run=extrac32.exe /e /a /y /l %49000% CabFileName.cab [hook2] ; Change the name of master.inf to the name you are assigning this ; file. Leave the second line alone. InfFile=master.inf InfSection=RegistryData [Strings] ; Running guidgen in the SDK generates the ClassId you need to fill ; in here. This classId also goes in the OBJECT tag. ; Don't forget the set braces! ClassId="{99999999-9999-9999-9999-999999999999}" ; Put the name by which your packages should be referred to ; (i.e. "Bob's Text Viewer") here. PackageName="name" [AddRegSection] ; Leave this line. HKLM,"SOFTWARE\Classes\CLSID\%ClassId%",,,"%PackageName%" ; Replace with the version number (like 1,0,0,1) of this ; version of your library. This is so that when you want to update ; your libraries, you can change the version rather then the classId ; and the problems that go with that. If the version number here ; and in the OBJECT tag match the version already stored on the ; user's machine, it will not download the classes again, which ; also saves time and energy. HKLM,"SOFTWARE\Classes\CLSID\%ClassId%\InstalledVersion",,,"aa,bb,cc,dd" ; Here, replace with the name of one of the class files in ; your package, including the virtual path (specified in classpck.ddf) ; to that file. This will make sure that the classes exist on the ; user's system; if they don't, they will be downloaded, regardless ; of version numbers. HKLM,"Software\Classes\CLSID\%ClassId%\InstalledVersion","Path",,"%49000%\" ; Leave these keys alone. HKLM,"SOFTWARE\Classes\CLSID\%ClassId%\InProcServer32",,,"%11%\MSJAVA.DLL" HKLM,"SOFTWARE\Classes\CLSID\%ClassId%\InProcServer32","NoJavaClass",,"" HKLM,"SOFTWARE\Classes\CLSID\%ClassId%\InProcServer32","ThreadingModel",,"Both" ; Under most circumstances, you should leave the next two keys alone. ; Only change them if ; 1) You have not expanded the classes into their subdirectories on ; the user's machine, but have instead stored them in an uncompressed ; .ZIP file; in that case, change the appropriate value ; to "%49000%\". ; ; 2) You have decided to install the files onto another, hard-coded ; directory of your choice. This is not recommended, for you will ; clutter up the user's directories and have to make other changes. ; If you do so, though, change the appropriate value to the absolute ; pathname to that directory, and change it in the run= line above. ; ; If you use one of these, you will use exactly one. HKLM,"SOFTWARE\Classes\CLSID\%ClassId%\InProcServer32","Lib",,"%49000%" ;HKLM,"SOFTWARE\Classes\CLSID\%ClassId%\InProcServer32","TrustLib",,"%49000%" ; *************************************************************** ; THE NEXT SECTION IS TO BE CHANGED IF YOU WANT TO INSTALL ; NATIVE CODE (DLLS, ETC.) ON THE USER'S MACHINE. PLEASE BE ; RESPONSIBLE ABOUT THIS USE. ; *************************************************************** ; This template assumes you are installing all items into the ; \system directory, and that they are all in 8.3 form. ; If you need something more complex, update the INF appropriately. ; Leave these three lines. [RegistryData] AddReg=AddRegSection CustomDestination=MyCustomDestination ;; If you are installing native code, you will want to uncomment all ;; the lines in the remainder of this section, except for the ones ;; that are descriptive (and have two semicolons). ; CopyFiles=OtherFiles ;[DestinationDirs] ;OtherFiles=11 ;[OtherFiles] ;; List the name of each file (delimited by returns) here. ;; Just list the local name--no need for paths, etc. Example: ;; foo1.dll,,,32 ;; foo2.dll,,,32 ;[SourceDisksFiles] ;; For each name listed in the above section, you will want to put ;; =1 on this list. So it would look like ;; foo1.dll=1 ;; foo2.dll=1 ;[SourceDisksNames] ;1=%PackageName%,"",0 ; ************************************************************** ; END OF NATIVE CODE SECTION ; ************************************************************** [PackageDestination49000] ; This value should only change if you have decided to place your ; classes in the TrustedClasspath. In that case, you ; will change "LibsDirectory" to "TrustedLibsDirectory". "HKLM","Software\Microsoft\Java VM","LibsDirectory","","" ; ************************************************* ; THE REMAINDER OF THIS FILE SHOULD NOT BE CHANGED. ; ************************************************* [Setup Hooks] hook1=hook1 hook2=hook2 [Version] signature="$CHICAGO$" AdvancedINF=2.0 [DefaultInstall] CustomDestination=MyCustomDestination AddReg=AddRegSection [MyCustomDestination] 49000=PackageDestination49000,23