> cool solutions home   > cool tools home
ADM File Utilities 2.5
Customize .ADM files.
Reader Rating    from ratings rate this article
View a Printer Friendly Version of this Page Send this page to a friend
Updated: 10 Jun 2003
File Size: 371KB
License: Free
Download 1:  adm_utils_2.5.zip
Home Page: http://student.ccbc.cc.md.us/~pries458/
Publisher: Peter Riesett
E-mail: priesettTAKETHISOUT@ccbcmd.edu
Please read the note from our friends in legal before using this file.

ADM File Utilities requires ActivePerl version 5.6.1 for Windows workstations.

ADM File Utilities will "decompile" an .ADM file, letting you use explorer as a drag-and-drop interface to customize it's appearance, as well as allow you to add in new policies just by inserting a text file in the appropriate directory and running the "recompiler" script.

New Release Notes:

For v2.5

  1. Changed ADM, Un-ADM, and Un-ADM to work in the .\workingdirectory instead of the current directory.
  2. Created the Policy Locater Text Editor Plug-in. This will allowyou to open up the policy text files that have been Un-ADMed from a list,without having to use the open command.

The version jumped from 2.3.1 to 2.5...2.4 didn't work right ;).

For v2.3.1
There was a bug in the Hide-Drives utilityfor the text editor. The only file updated is HideD.tep.

For v2.3.121702

  1. Completed the refinement of the plug-in process. Now you willbe able to name your plug-in with any valid filename, and it will work.
  2. New version of CCBCUSER.ADM has been added. This fixes a fewissues with the last one. If you are using CCBCUSER.ADM, and have notalready received this file, you will probably want to update your policies.
  3. The main window now takes focus when the app is loaded.
  4. Added a "Last Action" bar to the bottom of the main window. Itwill tell you when a script has finished running, and you can use the mainwindow again.
  5. Added a "Launch MMC" option under Tools (for you folks who usegroup policies).
  6. Added entries in the Config page to allow you to change the pathto explorer (for the readme), change the path to MMC, and reset all registrysettings for the ADM File Utilities back to their defaults (except the pathsto ConsoleOne, MMC, and Explorer.
  7. Added a "developer's doc". This version is still in progress.If you wish to develop plug-ins for the ADM File Utilities, and you have anyquestions, e-mail me.

For v2.2.100802

Added the Quick ADM Structure Checker script (qc.pl)

  1. Reworked the method the GUI uses the registry so it would workwith future revisions.
  2. Fixed an issue where some scripts (through the GUI) were notupdating the registry.
  3. Refined the "plug-in" process. Now, the GUI builds itselfdynamically each time it is loaded. (I will refine some of the names in thecode, and release a developer's doc with the next release, should anyonewish to develop plug-ins)
  4. Added the Hide Drives wizard to the text editor. Now creatingcustom "Hide Drives" policies is simplified! Just go into the text editor,select Tools/Hide Drives Wizard, click on the drives you want to hide, andwhether or not you wish it to start a new policy, or be a part of anexisting one, and it will spit out the neccessary text.
  5. Added the Registry Import plug-in for the text editor. Pleasenote that this plug-in is still in it's beginning stages, it will onlycreate checkbox PART statements at the moment. More functionality will beadded later, I just figured I'd include the current iteration with thisrelease.
  6. Drag and Drop into the text editor! Now you can drag a textfile from explorer, drop it in the text editor window, and it's contentswill be added to the window!

For v2.1.091902- Major Change!

Reworked the GUI, and made the following changes:

  1. Instead of buttons, I now have cascading menus.
  2. Inside of each cascading menu, I now have a most recently used list, saved in the registry, for each script.
  3. The path to ConsoleOne is now saved in the registry as well.
  4. Implemented a simple text editor, for working with the files, giving me the ability to have wizards.
    1. Implemented a Hide Drives Wizard
  5. Re-sized everything so that it would fit on the screen at 800x600 properly

For v2.0.090902
Added the graphical interface for the scripts! Just double click on ADMFileUtils.pl, and away you go! The scripts and the GUI are in separate files, but will be kept at the same revision. Should I update any script, it's GUI version will be updated as well, so you can use whichever you like.
That's right! I wrote up a GUI for the ADM Utils!! You will still need ActivePerl installed, but now, all you have to do is unZip the file into your working directory, and double-click on ADMFileUtils.pl, and then click the button corresponding to the script you need, then enter the information required, and it runs the scripts for you. I also added a button to launch ConsoleOne.

For V1.6.083102 - Three new scripts!

  1. Added the Quick ADM Report script. This will allow you to generate an HTML file with the categories and policies for quick reference. (The HTML doc will be the same name as the ADM file)
  2. Optimized error checking. The scripts will now not run if you do not use a valid ADM file (well, you can still fool it if you like, but it won'trun if you mistype something now), or enter in any incorrect information when needed (such as a proper classname with adm.pl).
  3. Added the unadmxp.pl script. This script will go through the standard unadm process, and will also remove all of the statements in the XP ADM's that are not supported in ConsoleOne (the EXPLAIN statements, and so forth. Also, it will change all 10 digit MAX statements to 999999999).
  4. Added the unxp.pl script. This script will remove all of the unsupported statements from within a Windows XP ADM file, so it can be used in ConsoleOne.
  5. Un-ADM and Un-ADMXP will only look for CLASS USER and CLASS MACHINEstatements, as opposed to just CLASS statements. This was only a problemwith the XP system.adm, and it's explain statements, which were spanningover multiple lines)
  6. Un-ADM and Un-ADMXP were having some trouble with backslashes in stringnames. The scripts now change all backslashes to double-backslashes, do thestring substitution, and change them back. You should see no difference, except that things are working correctly now.
  7. ADM will now capitalize all of the letters in the CLASS statement, even if you did not type them in that way.

Currently, the only scripts that filter out the junk in the XP ADM files are Un-ADMXP and Un-XP.

For V1.5 081302

  1. Fixed an error in adm.pl by putting a counter in for CATEGORY and END CATEGORY statements. Now, instead of adding three END CATEGORY statements to the end of the file, it subtracts the amount of END CATEGORY statements from the amount of CATEGORY statements, and prints the number of END CATEGORY statements needed to close the file properly, so you should no longer get any errors when dealing with smaller adm files.
  2. Cleaned up all of the scripts so you would not receive any warnings should you have perl warnings turned on, and you type in the proper command line arguments.

For V1.4 080602

  1. Added ADM Splitter Script for splitting up ADM files into user and machine ADMs.
  2. Added ccbcuser.adm, an example class user adm file that includes most available user policies, including those for XP.

For V1.3 080302

  1. Added the ADM File Joiner Script to the utilities to combine two ADM files as one.
  2. Started using version numbers that include the date of release...makes it much easier to track.

For V1.2

  1. KEYNAME and VALUENAME List Creator added. This will allow you to track multiple keyname entries and valuename entries and help tracking any duplicates you may have created.
  2. Adm will now create a file called 'tmp.tmp' for it's temorary operations instead of 'tmp.adm'.

For V1.1

  1. Un-Adm now filters out all characters that can not be part of a filename from the strings.   This way it can not hang up on any entries when creating filenames.
  2. Un-Adm now creates a filename in each directory called "catkey.diz"   This is a plain text file that contains the category's keyname.   Previously, we were trying to put the category keyname in the policy file, provided there was no KEYNAME entry in the policy itself.   The problem was that a keyname can be inside a PART, which is in the policy, so it would not write the category keyname.   if there were multiple parts, and one did not have a keyname, it would error.


  1. Adm now reads in the catkey.diz file for each directory and places it as the keyname entryfor it's respective category.

See this article for additional information.