TMurgent Technologies

Destination for Application Virtualization

This is the OSD Illustrated

Updated April 10, 2015 
A Service of TMurgent Technologies LLP 

This small tool allows you to explore the xml syntax of the OSD file in an interactive way. Place mouse over items in the OSD file below for a description of the item.   Send Feedback via email to Tim Mangan. Updated for Microsoft Application Virtualization (App-V) version 4.6 SP2.

What's an OSD file?   Open Software Description: a standard format created by Microsoft as part of an obscure project to database software applications using XML. This format was discovered by Softricity long before their Microsoft relationship began. Softricity used this as a base and extended the DTD to meet their needs. A OSD formatted file is now used by App-V as the shortcut description to an App-V client on how to access an App-V enabled application. These files use names that end in ".OSD" as the extension. In addition to this tool you may be interested in the updated SoftGridOSD Schema file in the Tools section of the website.


Note: This sample includes additional spaces for readability. Usually spaces do not matter, however a space may not appear between the < and start of the element name. These spaces were added for readability on this page. Be aware if you copy/paste into an OSD.



< ?xml version="1.0" standalone="no"? >


<!--
This is a comment.
You may use comments to document your OSD files if you like.
The LessThan followed by two dashes starts a comment in XML that will be ignored by XML parsers, the server, and the client. These comments end with two dashes followed by a GreaterThan.
-->

<!--
  Note that all elements, parameters, and most values, in an OSD must be in upper case.
-->


SOFTPKG
GUID="8A1E47F3-B0F5-44A2-83EE-4858C84E4839"
NAME="Microsoft Visual Basic 6.0"
VERSION="6.0.81.76"  >

IMPLEMENTATION  >

< CODEBASE
HREF="rtsp://Test820SGS:554/Microsoft_Visual_Studio6_VisStud6.001/Microsoft_Visual_Studio6_VisStud.001.sft"
GUID="1974849A-CD29-4205-9DDE-F3AB896452AC"
FILENAME="VisStud6.001\VB98\VB6.EXE"
PARAMETERS="/debug"
SYSGUARDFILE="VisStud6.001\osguard.cp"
SIZE="308485598"
/>

VIRTUALENV
TERMINATECHILDREN="TRUE"  >

DEPENDENCIES  >
< CODEBASE
HREF="rtsp://Test820SGS:554/Joes_PlugIn_For_Auto_Bugs/Joes_Create_A_Bug_v1.0.sft"
GUID="57B9C7DD-1234-6EE3-10B8-9CB36F1B258A"
SYSGUARDFILE="JoePlug1.001\osguard.cp"
MANDATORY="TRUE"
/>
< CODEBASE
HREF="rtsp://Test820SGS:554/Joes_PlugIn_For_Fixes/The_Missing_Package_v0.0.sft"
GUID="93B7D655-92B7-1C0C-D8E1-CC39101F2A77"
SYSGUARDFILE="JoePlug2.001\osguard.cp"
MANDATORY="FALSE"
/>
/DEPENDENCIES  >

ENVLIST  >
ENVIRONMENT
VARIABLE="PATH"  >
%PATH%;%CSIDL_PROGRAM_FILES%\Microsoft Visual Studio\Common\Tools\WinNT;%CSIDL_PROGRAM_FILES%\Microsoft Visual Studio\Common\MSDev98\Bin;%CSIDL_PROGRAM_FILES%\Microsoft Visual Studio\Common\Tools;%SFT_MNT%\VisStud6.001\VC98\Bin;
/ENVIRONMENT  >
ENVIRONMENT
VARIABLE="include"  >
%SFT_MNT%\VisStud6.001\VC98\atl\include;%SFT_MNT%\VisStud6.001\VC98\mfc\include;%SFT_MNT%\VisStud6.001\VC98\include
/ENVIRONMENT  >
ENVIRONMENT
VARIABLE="lib"  >
%SFT_MNT%\VisStud6.001\VC98\mfc\lib;%SFT_MNT%\VisStud6.001\VC98\lib
/ENVIRONMENT  >
ENVIRONMENT
VARIABLE="MSDevDir"  > %CSIDL_PROGRAM_FILES%\Microsoft Visual Studio\Common\MSDev98
/ENVIRONMENT  >
/ENVLIST  >
REGISTRY  >
REGKEY HIVE="HKLM" KEY="SOFTWARE\Test"      NOREDIR="FALSE"   >
REGVALUE   REGTYPE="REG_SZ"   NAME="a_name"  > a_string value /REGVALUE  >
REGVALUE   REGTYPE="REG_DWORD"   NAME="a_32bit_valuename"  > 64123 /REGVALUE  >
REGVALUE   REGTYPE="REG_BINARY"   NAME="a_binary_as_hex_pairs_valuename"  > 50,51,52 /REGVALUE  >
REGVALUE   REGTYPE="REG_SZ"  > some_string_that_becomes_value_of_the_default_of_the_key /REGVALUE  >
REGVALUE   REGTYPE="REG_SZ" >< /REGVALUE  >
< /REGKEY >
< /REGISTRY >

< PARSEITEMS >
< PARSEITEM   NAME="some_name"   PARSETYPE="BothExclude"   VALUE="some_value"   />
< /PARSEITEMS >

< POLICIES >
< LOCAL_INTERACTION_ALLOWED > TRUE < /LOCAL_INTERACTION_ALLOWED >
< VIRTUAL_SERVICES_DISABLED > TRUE < /VIRTUAL_SERVICES_DISABLED >
< SXS_32_ENABLED > TRUE < /SXS_32_ENABLED >
< VIRTUAL_FILE_SYSTEM_DISABLED > TRUE < /VIRTUAL_FILE_SYSTEM_DISABLED >
< VIRTUAL_REGISTRY_DISABLED > TRUE < /VIRTUAL_REGISTRY_DISABLED >
< VIRTUAL_FILE_SYSTEM_PASS_THROUGH > TRUE < /VIRTUAL_FILE_SYSTEM_PASS_THROUGH >
< VIRTUAL_REGISTRY_SYSTEM_PASS_THROUGH > TRUE < /VIRTUAL_REGISTRY_SYSTEM_PASS_THROUGH >
< ENFORCE_ACLS_ON_VREG_MODIFY > TRUE < /ENFORCE_ACLS_ON_VREG_MODIFY >
< /POLICIES >

< PERSESSION VALUE="FALSE"/ >

< /VIRTUALENV >

< WORKINGDIR > %SFT_MNT%\VisStud6.001\VB98 < /WORKINGDIR >

< VM VALUE="Win16" >
< SUBSYSTEM VALUE="windows"/ >
< /VM >

< OS VALUE="Win2003TS"/ >
< OS VALUE="WinXP"/ >

< DEPENDENCY >
< CLIENTVERSION VERSION="3.1.2.2"/ >
< SCRIPT    EVENT="STREAM"     TIMING="PRE"     TIMEOUT="0"     PROTECT="FALSE"     ABORTRESULT="-1"    EXTERN="TRUE"  >
< SCRIPTBODY>
            net use s:\\\\sgserver\\SoftGrid\n
            s:\\Disclaimer.exe
< /SCRIPTBODY >
< /SCRIPT >
< SCRIPT    EVENT="LAUNCH"     TIMING="PRE"     WAIT="TRUE"     PROTECT="TRUE"     SUCCESSRESULT="1"     EXTERN="TRUE"  >
< HREF >  m:\\SoftGrid\\Disclaimer.exe  < /HREF >
< /SCRIPT >

< SCRIPT    EVENT="SHUTDOWN"     TIMING="POST"     WAIT="FALSE"     PROTECT="FALSE"     EXTERN="TRUE"  >
< SCRIPTBODY>
            net use s:\\\\sgserver\\SoftGrid /DELETE
< /SCRIPTBODY >
< /SCRIPT >
< CODEBASE
 FILENAME, PARAMETERS, GUID, SIZE, and SYSGUARDFILE attributes />
< SOFTPKG
 do not use />
< ACTION="Assert" />
< /DEPENDENCY >

< PACKAGENAME  > Microsoft_VisualStudio_V6_ENG </PACKAGENAME>

< DISKSIZE   VALUE="12345"/>

< HARDWARE >something would have gone here. < /HARDWARE >

< IMPLTYPE   VALUE="Win16"/>

< LANGUAGE   VALUE="A string"/>

< MEMSIZE   VALUE="268435456"/>

< PROCESSOR
MINPROCESSORSPEED="400"
MINPROCTYPE="486"
/>

< RESOLUTION
MINWIDTH="800"
MAXWIDTH="1500"
MINHEIGHT="600"
MAXHEIGHT="1200"
MINDEPTH="8"
MAXDEPTH="12"
/>

< /IMPLEMENTATION" >


<--
These remaining elements are all outside the implementation blocks and are all optional. 
-->




<--
These elements are all optional. They all are used by the server, when present. The server will use these if when clients request application shortcuts and file associations. Thus, the client doesn't direcly use them from the OSD file, but may indirectly use them.
-->


< MGMT_SHORTCUTLIST >
< SHORTCUT    LOCATION="%CSIDL_PROGRAMS%\Microsoft Visual Studio 6.0"
< /MGMT_SHORTCUTLIST >

< MGMT_FILEASSOCIATIONS >
< PROGIDLIST >
< PROGID ID="VisualBasic.Module" FRIENDLYNAME="Visual Basic Module" EDITFLAGS="0" OVERRIDDEN="FALSE" >
< ICON > %SFT_MIME_SOURCE%/Microsoft_Visual_Studio6_VisStud6.001 Icons/Visual Basic Module.ico < /ICON >
< SHELLCOMMANDLIST DEFAULT="" >
< SHELLCOMMAND NAME="open" FRIENDLYNAME="open" PARAMS=""%1"" OVERRIDDEN="FALSE" />
< /SHELLCOMMANDLIST >
< /PROGID >
< PROGID ID="VisualBasic.ClassModule" FRIENDLYNAME="Visual Basic Class Module" EDITFLAGS="0" OVERRIDDEN="FALSE" >
< ICON > %SFT_MIME_SOURCE%/Microsoft_Visual_Studio6_VisStud6.001 Icons/Visual Basic Class Module.ico < /ICON >
< SHELLCOMMANDLIST DEFAULT="" >
< SHELLCOMMAND NAME="open" FRIENDLYNAME="open" PARAMS=""%1"" OVERRIDDEN="FALSE" />
< /SHELLCOMMANDLIST >
< /PROGID >
< /PROGIDLIST >
< FILEEXTENSIONLIST >
< FILEEXTENSION EXT="ctl" PROGID="VisualBasic.UserControl" PERCEIVEDTYPE="" CONTENTTYPE="" OVERRIDDEN="FALSE" >
< SHELLNEW ENABLED="FALSE" />
< /FILEEXTENSION >
< FILEEXTENSION EXT="dob" PROGID="VisualBasic.UserDocument" PERCEIVEDTYPE="" CONTENTTYPE="" OVERRIDDEN="FALSE" >
< SHELLNEW ENABLED="FALSE" />
< /FILEEXTENSION >
< /FILEEXTENSIONLIST >
< /MGMT_FILEASSOCIATIONS >


<--
Note that these following elements are all ignored by the server and the client. They either come from the original OSD specification, or are obsolete elements from earlier versions of SoftGrid. They cause no harm.
-->


< SUITE NAME="Microsoft_Visual_Studio6_VisStud6.001" />
< TITLE > Tim Mangan / TMurgent Technologies < /TITLE >
< ABSTRACT > Sequencing of Visual Studio 6 with Service Pack 6. Features included are the IDE, Visual C++, Visual Basic. Some optional items are excluded as unnecessary, not due to known sequencing issues. < /ABSTRACT >
< ASSETS >
< AGEGROUP>free_form_text< /AGEGROUP >
< ISBN>ISBN_number< /ISBN >
< CATEGORY>
< DESCRIPTION>free form text< /DESCRIPTION>
< /CATEGORY >
< PUBLISHER >
< ADDRESS >
< ADDRESS1>Microsoft Corporation< /ADDRESS1>
< ADDRESS2>1 Redmond Way< /ADDRESS2>
< CITY>Redmond< /CITY>
< REGION>WA< /REGION>
< POSTAL>12345< /POSTAL>
< COUNTRY>USA< /COUNTRY>
< /ADDRESS>
< CONTACT >
< NAME>A_string containing the publisher contact name< /NAME>
< ADDRESS >
< ADDRESS1>Bill Gates< /ADDRESS1>
< ADDRESS2>1 Redmond Way< /ADDRESS2>
< CITY>Redmond< /CITY>
< REGION>WA< /REGION>
< POSTAL>12345< /POSTAL>
< COUNTRY>USA< /COUNTRY>
< /ADDRESS>
< EMAIL>A_string containing the publisher contact email< /EMAIL>
< PHONE>A_string containing the publisher contact phone number< /PHONE>
< /CONTACT>
< DESCRIPTION >A_string containing the publisher description<> /DESCRIPTION>
< NAME >A_string containing the publisher name<> /NAME>
< REMARK >A_string containing unstructured publisher information<> /REMARK>
< /PUBLISHER >
< /ASSETS >
< LICENSE >;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
< HREF >A string here of no more than 512 characters />
< /LICENSE >


/SOFTPKG  >