Tuesday, December 3, 2013

Corflags.exe - correcting problems running 32-bit .NET apps in App-V


Corflags.exe is a tool in the the .NET SDK which can specifically apply 32-bit identification headers to existing 32-bit .NET exe assemblies.  If the 32-bit id flags are not present it can prevent 64-bit Windows from properly launching 32-bit programs.

Sometimes a 32-bit application will launch correctly when locally installed on a 64-bit copy of Windows, however it may exhibit errors when it is sequenced and running in an App-V bubble.

http://www.pcpro.co.uk/blogs/2009/08/06/when-32-bit-apps-dont-work-on-64-bit-windows/

http://msdn.microsoft.com/en-us/library/ms164699(v=vs.80).aspx

http://www.microsoft.com/en-us/download/details.aspx?id=19988

This command displays the current flags.
corflags.exe <filename.exe>

This command sets the 32-bit flag.
corflags.exe <filename.exe> /32BIT+

Tuesday, November 19, 2013

Installshield MSI User Component Registry KeyPath location


Although this can be anywhere in the user registry, Installshield creates keys in the following location to act as keypaths for user components.

HKCU\SOFTWARE\InstallShield Repackaged Applications\[Manufacturer]\[ProductName]\[ComponentName]    StringValue  Name: Installed    Data: 1

Thursday, November 14, 2013

Messaging integration with Outlook via CDO.DLL



Prior to Outlook 2007, Collaboration Data Objects CDO.dll was used to enable apps to utilise the outlook client for messaging.  Starting with Outlook 2007 MS begain to change the model for external apps usage of outlook client messaging.  This article give more details about the situation.  Ultimately these messaging access methods are no longer supported and should be redesigned by developers.

Thursday, November 7, 2013

IsUninst.exe command line parameters


Copied from
http://www.symantec.com/connect/blogs/uninstall-setupexe-isuninstexe

If any vendor app is using Isuninst.exe for the app uninstall, you will find some useful command line parameters attached.
The silent mode parameter for Isuninst.exe is -a.
The complete uninstallation command for the Windows client is:
Sample: 
C:\WINDOWS\Isuninst.exe -a -f "C:\Program Files\F-Secure\Ssh\Uninst.isu"

Uninst.exe Command Line Parameters

The command line parameters for uninst are listed below:
Parameter:
-y Suppresses the message box that asks the user to confirm that uninstallation should proceed. The feedback dialog box is still displayed, as is the shared file dialog box (which is displayed when the reference count of a shared DLL is decremented to zero).
-x Deletes all files, including those core components that normally do not get removed. (All user interface elements are displayed.)
-f<log file name> Specifies the location and name of the uninstallation log file.
For example: 
-f"C:\Program Files\Company Name\Uninst.isu" 

-c<DLL filename> Specifies the location and name of the external DLL that is to be used at the time of uninstallation.
For example: 
-c"C:\Program Files\Company Name\Custom.dll"

-a Runs the uninstaller in silent mode. In this mode unInstallShield will not display any messages to the end user indicating that the uninstallation has taken place. When running in silent mode, if unInstallShield encounters a shared file for which it would normally display the dialog box asking the user whether to remove the shared file, it will automatically reduce the reference count to zero and not remove the file. Therefore, running unInstallShield in silent mode is functionally equivalent to an uninstallation in which the user selects the "No to all" option when this dialog box first appears.
-d Identifies a single file that is to be deleted. The display of user interface elements is the same as when the -a switch is used.
For example: -dC:\Temp\Filename.ext 

-m Creates an uninstallation .mif file. If you do not specify a filename, the default (Uninst.mif) is used. You cannot specify a path-the file must be placed in the Windows System folder.

Friday, November 1, 2013

Setting up a SCCM 2007 package


This is really about naming conventions and keeping the environment consistant and easy to navigate as time goes by.  If even small differences in the process occur, the environment can become frustratingly varied make it difficult to check and find things.

Create the package
The important point here is to properly complete the Name, Manufacturer, Version fields.  The package names are listed using these fields to if you want the list to appear correctly in proper alphabetical order you must be consistant - preferably always using the Manufacturer field as this the first item used in the package list.

I think the preference here may be to use a tool to generate an SMS (package definition file) file which is then imported.  It can quickly populate the required fields consistantly - if the MSI has been created to standards!) - still worth checking text in the file before importing to make sure the fields are correct and as you wish them to appear in SCCM. 

Create the programs - install/uninstall
It is a very good idea to refer to the program type AND package name in the program title.  This is because the program title can be easily seen in the SCCM client infomation if it is interogated using the SCCM Client Center tool.  Be consistant: Manufacturer - App/Package/Product/Name -Version 
 e.g. Install - Adobe Acrobat Reader X 10.1.6
Consider using the import for the Windows Installer tab because this can provide the source location to repair from when the MSI installs on the target machine.

remember to Copy to Distribution Points :)

Create the AD Group.
If you are using AD groups queries from collections - Create the AD group. Be consistant: Manufacturer - App/Package/Product/Name -Version 

Create the Collection
Be consistant: Manufacturer - App/Package/Product/Name -Version 

Create the Advert
Be consistant: Manufacturer - App/Package/Product/Name -Version 
Put a - Install or a -Uninstall etc at the end of the advert name so that the purpose of the advert can be easily determined.

Wednesday, October 30, 2013

Unattended Sourceforge.net


This link contains useful information about various installer types:

Installshield
PackagefortheWeb
Wise InstallMaster
Inno Setup
Nullsoft Scriptable Install System
Ghost installer


http://unattended.sourceforge.net/installers.php

keywords: reference uninstall install command parameter

Thursday, October 17, 2013

Mode of Use - the poison in the App-V mix.

Mode of Use - the poison in the App-V mix.


While the assocation can appear to work in testing - in the real world it does not work as the users require it to.

App1 physical (due to drivers. The app and drivers were not separated out) is launched outside the bubble

App2 has file association links to App1 and runs in a bubble.  If App1 is NOT running then the FTAs launch App1 in the bubble ok.  BUT if App1 is already running outside the bubble the FTA links fail because when they are attempted App1 outside the bubble can't see the file resources INSIDE the bubble.

e.g. ActivInspire=App1  and CuttingEdge=App2


Packaging (Preparing physical installs) and Virtualisation (preparing virtual applications) are generally regarded as very similar processes on the path to "application delivery" but in reality these two approaches are quite different.  To avoid wasteful reworking exercises it is important to select the best and most suitable approach is selected during the packaging phase(physical or virtual).  Application virtualisation is often seen as a desirable and as projects often try to set and predict percentages of virtualised applications that will be attained.  Often the targets are unrealistic because the limitations of virtualisation are not fully appreciated early in the project. 

The list of things that cannot be virtualised is relatively well known and typically includes
Drivers
Com+ components
Very Large >4Gb
Part of the operating system

Ideally, the physical or virtual decision should be made during the discovery phase or soon after the "packager" starts work.  There should also be the option to interogate expert users or application owners about the mode of use that is applied to the normal use of the software.

Types of software that should start to ring alarm bells are:
Software that interoperates with other applications.  See above.
Software that has ODBC connections that may need to be adjusted by advanced IT users.
Software that uses services that might sit quietly in the background.  Virtual services only become available when the app has been launched. (Websphere)

In addition there are items that have no technical restrictions to virtualisation but require changes to the way users operate the software. (Addins)  Is it reasonable to force (awkward?) changes to way users carry out their tasks just to accomodate the implemention of a new type of software delivery?  Often user communities will not accept changes to way things users work which shoot yet another hole in the numbers of applications that can be virtualised.

Virtualisation will usually be the default approach unless there is a reason it is not possible. In reality the number of apps that end up on the cannot/should not be virtualised because suprisingly and disappointingly large. The numbers begin to make it questionable what value virtualisation brings considering the additional operational complexity necessary to run two application delivery technologies.  One of the advantages of virtualising applications is that it can be relatively quick to run the sequencer and produce a virtual application.  However all that effort can easily go to waste once it arrives in front of a user and it does not work as they need it to.

Wednesday, October 16, 2013

Minitab 15 fails to virtualise in App-v 4.61


Configuration and Streaming launches in the sequencer appear to work fine however when attempted on a client the following error appears

Secure Loader Error
The Secure Loader user to protect this software has encountered a fatal error.  Please contact your software vendor.

Thursday, October 10, 2013

Batch File Parameters


The below is copied from the link:

http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/percent.mspx?mfr=true

See the link for more information on the modifiers.

You can use batch parameters anywhere within a batch file to extract information about your environment settings.

Cmd.exe provides the batch parameter expansion variables %0 through %9. When you use batch parameters in a batch file, %0 is replaced by the batch file name, and %1 through %9 are replaced by the corresponding arguments that you type at the command line. To access arguments beyond %9, you need to use the shift command. For more information about the shift command, see Shift The %* batch parameter is a wildcard reference to all the arguments, not including %0, that are passed to the batch file.

For example, to copy the contents from Folder1 to Folder2, where %1 is replaced by the value Folder1 and %2 is replaced by the value Folder2, type the following in a batch file called Mybatch.bat:

xcopy %1\*.* %2

To run the file, type:

mybatch.bat C:\folder1 D:\folder2

This has the same effect as typing the following in the batch file:

xcopy C:\folder1 \*.* D:\folder2

You can also use modifiers with batch parameters. Modifiers use current drive and directory information to expand the batch parameter as a partial or complete file or directory name. To use a modifier, type the percent (%) character followed by a tilde (~) character, and then type the appropriate modifier (that is, %~modifier).

Thursday, September 19, 2013

Current folder \ directory variable


Some batch files may contain the value

%~dp0  

which is a pointer to the currently active folder.

Thursday, September 12, 2013

Datawatch Monarch Pro 11


Set MSI Logging ON
Run the install exe to extract the self contained Monarch 11.msi
Copy out the Monarch 11.msi file from temp and allow the interactive install to proceed.  Enter the license/ serial number when required.


Create a transform

Refer to the follow properties in the original installation log file and set them in the transform

M_USERNAME
M_SERIALNUMBER  (this is different to the ISX_SERIALNUM below.  The original install generates it from the serial number that is entered.)
M_ISSINGLE
M_NETUSERCOUNT
ISX_SERIALNUM


User must activate at first launch by entering the license number in a dialog box.  Activation is managed via 3rd party software/service called Nalperion.

MS Office 2010 apps


Run Setup /admin use the Office Customisation Tool (OCT) and save the msp output to the updates subfolder in the installation media.  It is the admin subfolder in volume licensed installation media which enables the OCT functionality.

Edit the default config.xml file to control display and logging and copy to the root adjacent to the setup.exe.

See here for config.xml options
http://technet.microsoft.com/en-us/library/cc179195(v=office.14).aspx#ElementSetting

Create an uninstall.xml file similar to the config.xml

Uninstall command is
setup /uninstall <Product ID> /config .\xxx.ww\uninstall.xml

Product ID (NOT THE PRODUCT GUID) is the text at the top of the config.xml file - Configuration Product="xxxx"



When working with feature states while creating installation customisations, the following letters may appear next to the features to indicated their states

F = Forced to this state
H = Hidden - once set cannot be unset
L = Locked

More details regarding the Microsoft Office Customization Tool here
http://technet.microsoft.com/en-us/library/8faae8a0-a12c-4f7b-839c-24a66a531bb5(v=office.14)#Set_feature_installation_states

Office 2013 OCT
https://technet.microsoft.com/en-us/library/8faae8a0-a12c-4f7b-839c-24a66a531bb5(v=office.15)

Office 2016 OCT
https://technet.microsoft.com/en-us/library/mt461764(v=office.16).aspx

Useful Modify User settings
Microsoft Office 2010_Miscellaneous - Suppress recommended settings dialog Enabled
Microsoft Office 2010_Privacy_Trust Center - Disable Opt-in Wizard on first run Enabled
Microsoft Office 2010_Privacy_Trust Center - Enable Customer Experience Improv Prog Disabled
Microsoft Office 2010_Privacy_Trust Center - Auto receive small updates Disabled



App-V 5 Microsoft Office 2010 / 2013 Virtualising Office
video.ch9.ms/sessions/teched/na/2014/WIN-B330.pptx

http://support.microsoft.com/kb/2772509

Versions and releases
Version number of the original RTM release of Office 2010: 14.0.4763.1000
Version number of Office 2010 Service Pack 1 (SP1): 14.0.6029.1000 or later
Version number of Office 2010 Service Pack 2 (SP2): 14.0.7015.1000 or laterhttp://support.microsoft.com/kb/2121559


Major Version History

97              8.0
2000          9.0
XP 2002   10.0
2003         11.0
2007         12.0
2010         14.0  (13.0 skipped)
2013         15.0
2016         16.0


keyword: versions

Thursday, September 5, 2013

Adobe Acrobat X 10.1.7


Download the Adobe Customisation Wizard app and the latest patch from Adobe.


  1. Carry out an admin installation of the original installation media using msiexec /a acropro.msi
  2. Copy the acrobatupd1017.msp into the admin point folder.  Slipstream this into the admin point using msiexec /p acrobatupd1017.msp /a acropro.msi
  3. Use the vendors Adobe Customisation Wizard to create the transform with the required settings

    optional
  4. Use Insted plus to recompress the admin point files into a new cab file
  5. Rename the cab file and edit the media table cab file reference in the transform
  6. Change the Summary Info Table Image Type setting to compressed - Long Filenames.

Monday, September 2, 2013

Controlling Tab Memory Usage in IE


http://blogs.msdn.com/b/askie/archive/2009/03/09/opening-a-new-tab-may-launch-a-new-process-with-internet-explorer-8-0.aspx



HKCU\Software\Microsoft\Internet Explorer\Main - TabProcGrowth (string or dword)


Tab Process Growth : Sets the rate at which IE creates New Tab processes. There are two algorithms used by Internet Explorer.


1. Context-based: By default, the context-based algorithm is used and the curve is chosen based on the amount of physical memory on the machine. In addition, the TabProcGrowth string registry value may be manually forced to:
small: Maximum 5 tab processes in a logon session, requires 15 tabs to get the 3rd tab process.
medium: Maximum 9 tab processes in a logon session, requires 17 tabs to get the 5th tab process.
large: Maximum 16 tab processes in a logon session, requires 21 tabs to get the 9th tab process.


2. The "Max-Number" algorithm: This specifies the maximum number of tab processes that may be executed for a single isolation session for a single frame process at a specific mandatory integrity level (MIC). Relative values are:
TabProcGrowth=0 : tabs and frames run within the same process; frames are not unified across MIC levels.
TabProcGrowth =1: all tabs for a given frame process run in a single tab process for a given MIC level.


Note: On Terminal Server, the default value is the integer of 1.
TabProcGrowth >1: multiple tab processes will be used to execute the tabs at a given MIC level for a single frame process. In general, new processes are created until the TabProcGrowth number is met, and then tabs are load balanced across the tab processes.


Note: that the frame process is no longer allowed to execute at low-MIC. If this is attempted, the process will exit.

Friday, August 23, 2013

Adobe AIR 3.x applications and App-V


AIR apps can be sequenced in App-V, however look out for one aspect which can cause problems.

AIR apps may produce encrypted files in %APPDATA%\Adobe\AIR\ELS

If these are picked in the sequencer during an application launch, then they may cause errors when tested on the client.

This was seen to occur with the Plus Two PresentiaFX 6.7 AIR application.  It cause an error:

EncryptedLocalStore internal error

Friday, August 16, 2013

App-V 5.0 launching cmd.exe in the bubble.


in App-V 4.6 you could do this
sfttray /exe cmd.exe "AppName"

"AppName" was the application name not the package name.


in App-V 5.0 the equivalent is
Method 1 (this gives you an elevated cmd windows inside the bubble)

Open an elevated powershell window then

set-executionpolicy unrestricted
Import-Module AppvClient
Get-AppvClientPackage
$package=Get-AppvClientPackage <PackageName>
Start-AppvVirtualProcess -AppvClientObject $package cmd

Method 2 (this gives you a command windows in the context of the session you launched it in)

Locate the GUID string from the folder structure below C:\ProgramData\App-V (perhaps by searching for a known file)

Select up the directory path in the explorer path windows and copy out the PackageGUID\VersionGUID string.

then cmd.exe /appvve:PackageGUID_VersionGUID

(remembering to replace the \ with a _ in the PackageGUID\VersionGUID string.)



Wednesday, August 14, 2013

Enabling Oracle Developer Suite 10g for Windows 7 installation


Set the setup.exe for Windows XP compatibility

Set the virtual memory for custom start and maximum levels suitable for the machine e.g. 2048Mb

edit the oraparam.ini file in the media install subfolder.  The [Windows-5.1-required] section delete the line SWAP_SPACE=1535


Thursday, August 8, 2013

App-V 5.0 sequencer failures, crashes and hangs


MS Visual SourceSafe 6.0 - app-v 5.0 sequencer hangs when attempting to run setup.exe.  One workaround is to run the setup.exe program then cancel before the Application Compatibility Program prompts you that Visual Studio has compatibility issues running on this version of windows.  Then run the sequencer and run the ACMBOOT.EXE program which does the install of Visual SourceSafe 6.0.

Here is a round up of sequencer failure reasons
http://app2pack.blogspot.co.uk/2016/01/possible-reasons-for-app-v-50-sequencer.html


keywords sequencer crash hang

Wednesday, August 7, 2013

App-V 4.6 to 5.0 changes and differences.



http://blogs.technet.com/b/appv/archive/2012/06/21/introducing-the-app-v-5-0-beta-sequencer-what-has-changed-since-4-6-sp1.aspx

  • May not pick up certain kinds of shortcuts like URLs
  • The MSI, compression and Security Descriptors are no longer options - they are ON.
  • The appv file is zip compatible.
  • The inside of the bubble does not look fully virtualised.  For example if you set an environmental variable during sequencing to the Primary Virtual Application Directory (PVAD) C:\Program Files (x86)\AppName  you will see the environmental variable in the bubble but pointing to the C:\ProgramData\Appv\<GUID>\<GUID>\Root location.  C:\Program Files (x86)\AppName cannot be browsed to but is accessible if called directly via a CD command or typed directly into an explorer window.
Later versions may address the above aspects.

Watch out for problems you thought were fixed in 4.6 coming back to get you again in version 5.0.  Here's an example.

Do not revert back to a live running VM image to create a new sequence in App-V 5.0 because the package GUID will be the SAME as any previous sequence you created from that image.  You MUST keep your VM images powered down and boot them to sequence from.  The package GUID seed is only created ONCE at boot time.

http://www.tmurgent.com/TmBlog/?p=1311

Tim Mangan on what you need to know about App-V 5
http://www.brianmadden.com/blogs/timmangan/archive/2012/11/01/Mangan-on-what-you-need-to-know-about-microsoft-appv-5.aspx

Monday, July 1, 2013

MSI ProductVersion property field specs

The value of the ProductVersion property is the version of the product in string format. This property is REQUIRED.
The format of the string is as follows:
major.minor.build
The first field is the major version and has a maximum value of 255. The second field is the minor version and has a maximum value of 255. The third field is called the build version or the update version and has a maximum value of 65,535.

Wednesday, June 19, 2013

App-V 5 Sequencing resources

Nice App-V 5 primer
including how to fix persistent "Pending restart operations detected."
https://www.niallbrady.com/2012/11/12/how-can-i-sequence-applications-using-app-v-version-5-for-configuration-manager-2012-sp1/



MS App-V 5.0 sequencing guide
http://download.microsoft.com/download/F/7/8/F784A197-73BE-48FF-83DA-4102C05A6D44/App-V%205.0%20Sequencing%20Guide.docx

MS App-V 5.0 Sequencer and Client setup
First install:
Install Security Patch Windows6.1-KB2533623-64.msu
Install Powershell 3.0 Windows6.1-KB2506143-64.msu

v5.0 SP3 requires .NET Framework 4.5.1

Disable Defender, Search, Superfetch
Disabled UAC on sequencer, enabled on client
Set Powershell execution policy to unrestricted, enabled App-V scripts
Set proxy and launched IE at least once before taking snapshot
On the snapshots with Office installed, launched all Office apps before snapping
Configured sequencer to not append version number to package file names


Scripting
http://blogs.technet.com/b/appv/archive/2012/12/10/scripting-and-embedded-scripting-for-appv-5-0-dynamic-deployment-and-user-configuration-scripting.aspx

http://www.tmurgent.com/TmBlog/?p=1154

http://www.tmurgent.com/TmBlog/?p=1635


Creating and Managing App-V 5.1 Virtualized Applications
https://docs.microsoft.com/en-us/microsoft-desktop-optimization-pack/appv-v5/creating-and-managing-app-v-51-virtualized-applications

Friday, June 14, 2013

Installshield build wizard


To get a single MSI and nothing else select Network > Compress All > No Setup.exe

To build with an MSI with an external cab file on larger installs select Custom set a large format size to limit the number of .cab files > Automatic > Compress All > No Setup.exe

Thursday, June 6, 2013

Jasc Paint Shop Pro 7


The help is not Win7 compatible.  The help fix is required.

http://blog.davefanning.co.uk/2011/02/update-required-to-use-legacy-help.html

Also the help system runs a macro that ordinarily does not work and throws the error

There was a problem running the macro (1037)

An additional registry key is required to fix this problem

HKLM\Software\Wow6432Node\Mircosoft\WinHelp

AllowProgrammaticMacros   DWORD   1


If virtualising the key can be placed in the bubble.

Also note that when virtualised, the file association controls on the preferences menu in this application will no work.  This is because the relevant registry changes get written inside the bubble and do not affect the system.

Thursday, May 30, 2013

SCCM Client Center - App-V 4.6




Run the following command to install the SCCM Client Center to the Q: location.

Msiexec /i <Path>\SMSCliCtrV2_X64_Public.msi INSTALLDIR=”Q:\011537.V01\SCCM Tools\SCCM Client Center”

Once Monitoring has stopped. Ensure the Application is launched at the Configure Software Stage.

In the Files Tab of Editing mode mark the CSIDL_LOCAL_APPDATA and all the objects below it as User Data and tick the Override box.  Use the Apply button to confirm the setting.  This forces the user settings for the application to be kept inside the bubble in the user.config file.  If this is not done the settings are written to a file outside the bubble in %LOCALAPPDATA%\SCCM_Tools\SMSCliCtrV2.exe_Url_v2crw2edweequnwi2j3kxankklj4dxsn\2.0.4.0\user.config

Friday, May 24, 2013

IE session memory control


Internet Explorer memory control

http://www.instantfundas.com/2010/06/how-to-prevent-ie8-from-launching-new.html

Tuesday, May 21, 2013

pkg file analysers


http://www.gridmetric.com/products/ave.html

http://www.tmurgent.com/TmBlog/?p=166

Monday, May 13, 2013

XML reserved characters



There are 5 predefined entity references in XML:

&lt;
< 
less than
&gt;
> 
greater than
&amp;
&
ampersand 
&apos;
'
apostrophe
&quot;
"
quotation mark

Friday, May 10, 2013

Problems with App-V 4.6 applications using Word Excel and Powerpoint


These settings enable direct shortcuts to .docx or xlsx files in shortcuts or from within applications, to work when an existing (external bubble) word or excel session exists.

For .doc / .xls file adjust the Word.Document.8 / Excel.Sheet.8 registry locations.

Powerpoint launches a separate session in the bubble even if an existing session is running outside.  Remember to include the TERMINATECHILDREN=TRUE for these items because the bubble will remain open after the powerpoint session is closed. - cause unknown.

Note that there are limitations inherent in using these registry modifications.  These registry modifications are version specific.  If a later version of office were to be deployed then these setting would need to be adjusted.  Another approach to this solution would be to use a script to detect the current MS Offiice installation before applying the registry modifications.

Launch word Documents:

<REGISTRY>
<REGKEY HIVE="HKCR" KEY="Word.Document.12\shell\Open\command" NOREDIR="FALSE">
<REGVALUE REGTYPE="REG_SZ">"C:\Program Files (x86)\Microsoft Office\Office14\WINWORD.EXE" /w "%1"</REGVALUE>
</REGKEY>
<REGKEY HIVE="HKCR" KEY="Word.Document.12\shell\Open\command" NOREDIR="FALSE">
<REGVALUE REGTYPE="REG_SZ" NAME="command">xb'BV5!!!!!!!!!MKKSkWORDFiles&gt;bi$T!V!0Z={Pk0vm~AZu /w "%1"</REGVALUE>
</REGKEY>
</REGISTRY>

Launch Excel Documents:

<REGISTRY>
<REGKEY HIVE="HKCR" KEY="Excel.Sheet.12\shell\Open\command" NOREDIR="FALSE">
 <REGVALUE REGTYPE="REG_SZ">"C:\Program Files (x86)\Microsoft Office\Office14\EXCEL.EXE" /e "%1"</REGVALUE>
<REGVALUE REGTYPE="REG_SZ" NAME="command">xb'BV5!!!!!!!!!MKKSkEXCELFiles&gt;VijqBof(Y8&apos;w!FId1gLQ /e "%1"</REGVALUE>
 </REGKEY>
<REGKEY HIVE="HKCR" KEY="Excel.Sheet.8\shell\Open\command" NOREDIR="FALSE">
<REGVALUE REGTYPE="REG_SZ">"C:\Program Files (x86)\Microsoft Office\Office14\EXCEL.EXE" /e "%1"</REGVALUE>
<REGVALUE REGTYPE="REG_SZ" NAME="command">xb'BV5!!!!!!!!!MKKSkEXCELFiles&gt;VijqBof(Y8&apos;w!FId1gLQ /e %1</REGVALUE>
</REGKEY>
<REGKEY HIVE="HKCR" KEY="Excel.Sheet.12\shell\Open\ddeexec" NOREDIR="FALSE">
<REGVALUE REGTYPE="REG_SZ"></REGVALUE>
 </REGKEY>
<REGKEY HIVE="HKCR" KEY="Excel.Sheet.8\shell\Open\ddeexec" NOREDIR="FALSE">
 <REGVALUE REGTYPE="REG_SZ"></REGVALUE>
</REGKEY>
</REGISTRY>

Thursday, May 2, 2013

Problem with App-V 4.6 applications using local install Adobe Reader X 10.1.4


Recently problems with App-V applications launching .pdf files began to reveal that there was, in fact, several problems in existence. Between version 9 and version 10 of Adobe Acrobat Reader (AAR) Adobe introduced a protected mode design which seems to have been the cause of problem 2 below. Below are the problems and their solutions that have been identified. Note that these are specific to providing compatibility with AAR version 10. If version 11 is deployed these settings could become ineffective within the packages that they are used.

Problem1

If a physical version of AAR v10 was running, launching .pdf links either directly from App-V shortcuts or from within the application, an error message would appear:

“There was an error opening this document. This file cannot be found.”

This occurs because the .pdf file is attempting to load inside the existing AAR session. Because the AAR session is outside the bubble it is unable to load the pdf file from the Q:

Solution:

Insert these settings to the launch OSDs below the VIRTUALENV section in a section with <REGISTRY> tags


<REGKEY HIVE="HKLM" KEY="SOFTWARE\Classes\AcroExch.Document.7\shell\Read\command" NOREDIR="FALSE">

<REGVALUE REGTYPE="REG_SZ">"C:\Program Files (x86)\Adobe\Reader 10.0\Reader\AcroRd32.exe" /N "%1"</REGVALUE>
</REGKEY>

This causes .pdf to launch in a new AAR session which is inside the bubble and can therefore see the Q:


Problem 2

If AAR was was launched inside the bubble it would be unable to see registry settings outside the bubble. Normal application behaviour is for applications to “see out” of the bubble and take setting from the “real” registry on the machine. However, AAR was not doing this. This meant that AAR sessions in the bubble would behave differently from those outside. E.g. AAR sessions outside would have updating disabled. AAR sessions inside App-V bubbles would not. This is thought to be due to a problem with AAR protected mode not working as expected inside a bubble.  Another symptom of protected mode is pdf launch failure on the second launch of the application (AcroRd32.exe launches then shuts down and there is a brief flash on the screen).  To reproduce this, launch a App-V pdf and then close the AAR session and close the application.  The user .pkg takes on settings which prevent the next pdf launch after the second App-V application launch.

Solution:

Insert these settings to the launch OSDs below the VIRTUALENV section in a section with <REGISTRY> tags

<REGKEY HIVE="HKCU" KEY="SOFTWARE\Adobe\Acrobat Reader\10.0\Privileged" NOREDIR="FALSE">

<REGVALUE REGTYPE="REG_DWORD" NAME="bProtectedMode">00000000</REGVALUE>
</REGKEY>
This causes AAR sessions inside the bubble to NOT run in protected mode and therefore have the correct settings applied in the same way a normal AAR session does.


Problem 3

AAR would appear to launch ok in the bubble on the first launch be then exhibit unexpected behaviour on second launches e.g. the EULA would pop up.

This was found to be caused by the App-V environment creating override keys HKLM\Software\Adobe\Distiller\6.0 in the App-V package settings (.pkg files). Once these were created they overrode the required settings in the HKLM\Software\Adobe\Acrobat Reader

You will have noticed that during sequencing, HKLM\Software\Adobe\Distiller\6.0 is always created in the virtual registry. Notice that these items are set to override. If deleted they are recreated in override mode in the App-V package settings as described above.

Solution:

Specifically include HKLM\Software\Adobe\Distiller\6.0 in the virtual registry and ensure that every level is set to merge.

Conclusion

Going forward applications which are to be virtualised should have the Q: searched for the presence of any .pdf files. If they are found to be present then actions to solve the problems above need to be applied. The solutions above involve applied fixed or “hardcoded” settings within OSDs and this should be noted in associated documentation. Other possible approaches to solution could be

  • · A separate DSC App-V package which carries the Problem 1 and 2 settings. This is then suited with the primary App-V application to provide the settings.

    Advantages – only one package to change if AAR is upgraded to version 11
    Disadvantage – managing a version 11 DSC fix package to deploy at the same time as AAR version 11 could be difficult to implement. 
  • · A pre run script could be designed to detect the installed AAR version and correctly set appropriate settings.
    Advantage – can be tested with version 11 which is already released but not yet deployed in the target environment.
    Disadvantages – cannot be guaranteed to work with versions above 11 and requires development and testing time to be set aside. 

Quick code cut and paste:
<REGISTRY>

<REGKEY HIVE="HKLM" KEY="SOFTWARE\Classes\AcroExch.Document.7\shell\Read\command" NOREDIR="FALSE">
<REGVALUE REGTYPE="REG_SZ">"C:\Program Files (x86)\Adobe\Reader 10.0\Reader\AcroRd32.exe" /N "%1"</REGVALUE>
</REGKEY>

<REGKEY HIVE="HKCU" KEY="SOFTWARE\Adobe\Acrobat Reader\10.0\Privileged" NOREDIR="FALSE">
<REGVALUE REGTYPE="REG_DWORD" NAME="bProtectedMode">00000000</REGVALUE>
</REGKEY>
</REGISTRY>

Wednesday, May 1, 2013

User Temp Profiles and user pkg file


App-V 4.6

If for whatever reason temporary profiles are in use, it may prevent the proper generation of %APPDATA%\SoftGrid Client\<package id>\UsrVol_sftfs_v1.pkg

Thursday, April 18, 2013

Tuesday, April 16, 2013

ARPSYSTEMCOMPONENT


The property ARPSYSTEMCOMPONENT = 1 prevents the Programs and Features entry from appearing.  Setting it to 0 in a transform may not work though.  It may be necessary to remove the entire property table row to enable the display of the item in the Programs and Features applet.

Custom Action Ref


http://msdn.microsoft.com/en-us/library/windows/desktop/aa372048(v=vs.85).aspx

Friday, April 12, 2013

Capture Exclusions


This has item has been copied from
http://www.symantec.com/connect/blogs/registry-keys-and-files-be-excluded


There is a situation that happens where we all get confused while working on excluding lists.
Then when you complete a Setup Capture, the resulting package contains both necessary and unnecessary information and entries for the installation. The unnecessary information should be removed so it is important to know which entries are extra and what information is not important.
This is where having a concise Exclusion list becomes invaluable in ensuring that only non-essential keys and files are removed from the MSI.

Exclusion List

An Exclusion list of Files and Registry Keys has been compiled over time and is constantly being amended and updated. The following is said list as it currently stands.
Search the Database for the following list of items below. Go to the Setup Editor > Tables Right Click > Find.

Files to Exclude

As a general rule a repackaged application should not contain the following. Check updated list for each project:
  • References to the computer name the product was scripted/compiled on eg. ABSCRIPT
  • References to a particular user name.
  • References to a particular domain/server i.e. 'Iloscr#'
  • Presence of any setup executables or files. (setup.exe)
  • Presence of any .REG files
  • folders of files referring to WISE Solutions or InstallShield particularly under HKCU
  • Config.sys
  • Autoexec.bat
  • User.dat
  • User.da0
  • .iss files
  • .isu files
  • uninst.exe (or deinstall) (we do not want end-users to have access to uninstall files)
  • uninstall.exe (or deinstall)
  • .tmp files
  • Unnecessary .log files
  • Pagefile.sys
  • C:\Temp (this temporary folder should never contain info. needed by an application)
  • C:\WINNT\RECENT (this area contains links to recently used data files)
  • C:\WINNT\Debug
  • C:\WINNT\Tasks
  • C:\WINNT\System32\NtmsData
  • C:\WINNT\dllcache

Registry Keys to Exclude

As a general rule a repackaged application should not contain the following registry keys. Check updated list for each project:
  • HKEY_CURRENT_USER settings
  • HKLM\Software\Microsoft\Windows\CurrentVersion\SharedDLL's
  • HKLM\Software\Description\Microsoft\Rpc\UuidPersistentData\
  • HKLM\Software\Program Groups\
  • HKLM\Software\Classes\
  • HKLM\Software\Microsoft\Windows NT\CurrentVersion\ProfileList
  • HKLM\Software\Microsoft\WindowsNT\Current Version\WinLogon
  • HKLM\Software\Microsoft\Mounted Devices
  • HKLM\Software\Microsoft\Cryptography
  • HKLM\Software\Microsoft\DRM
  • HKLM\Software\Novell
  • HKLM\Hardware\
  • HKLM\System\CurrentControlSet\Control\
  • HKLM\System\CurrentControlSet\Enum\
  • HKLM\System\CurrentControlSet\hardwareProfiles\
  • HKLM\System\ControlSet000\
  • HKLM\System\ControlSet001\
  • HKLM\System\ControlSet002\
  • HKLM\System\ControlSet003\
  • HKLM\System\ControlSet004\
  • HKLM\System\ControlSet005\
  • HKLM\System\ControlSet006\
  • HKLM\System\Clone
  • HKLM\System\CurrentControlSet\Services\NICSHORTNAME\Parameters\Tcpip "NICSHORTNAME" will be something like "EL09x1"
  • HKLM\System\CurrentControlSet\Services\NWCWorkstation
  • HKLM\System\CurrentControlSet\Services\VxD\DHCP
  • HKLM\System\CurrentControlSet\Services\VxD\VCACHE
  • HKLM\System\CurrentControlSet\Services\kmixer\Enum
  • HKLM\System\Select
  • HKLM\CLONE
  • HKLM\SAM
  • HKLM\Software\Microsoft\Windows\CurrentVersion\Syncmgr\Autosync
  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer
  • HKEY_CURRENT_USER\Volatile Environment
  • HKEY_CURRENT_USER\Software\Microsoft\Internet\Explorer\Toolbar\Shellbrowser
  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Syncmgr\Handlers
  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\...MRU

Determine an AD object's OU


Open the AD Users and Computers plugin and use the find function to locate the object you are searching for.

Once located select View_Add/Remove Columns and add Published At.

The object details will then include a reference to the OU the object resides in.

Wednesday, March 27, 2013

App-V Package Adverts in SCCM


App-V package adverts in SCCM should NOT have mandatory assignments with "As soon as possible".

It is very important that App-V package advertisements are NOT set to “As soon as possible”. Advertisements with this setting will NOT rerun when the Update Package Wizard tick box to “Re-run advertisments with existing manditory assignments” is ticked.


Thursday, March 14, 2013

Use caution if the User Data Directory is changed in the App-V 4.6 Client


  Use caution if the User Data Directory setting is changed in the Application Virtualisation Client.

For example changing it to %LOCALAPPDATA% causes files like usrvol_sftfs_v1.pkg.BAD to be created.   The BAD extension indicates that the file is not valid and the user settings will not be saved.

If the %APPDATA%\SoftGrid Client need to be prevented from roaming then this should be set as a roaming excluded folder in a GPO.  Target registry key is
HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Winlogon   ExcludeProfileDirs  REG_SZ  AppData\Local;AppData\LocalLow;$Recycle.Bin

More discussion of the BAD file occurances
http://social.technet.microsoft.com/Forums/en-US/appvgeneralsequencing/thread/b13cf46f-b3dc-4c37-9a52-40bf124b7982

Wednesday, March 13, 2013

Audacity 2.0.1 App-V


During the sequencing the CFG files in the %APPDATA% folder are specifically configured to be USER settings. The audacity.cfg file has a blank TempDir= setting because this is written in by the application at runtime. It is important that this setting correctly identifies the currently logged on users’ temp folder location. A typical location is C:\Users\TEMP\AppData\Local\Temp\audacity_temp . The temp folder is created and written to outside of the bubble, but the settings are managed and maintained within the bubble.

Friday, February 15, 2013

Office Language Packs


http://technet.microsoft.com/en-us/library/cc179145(v=office.14).aspx


Wednesday, February 6, 2013

Numbers




  • Not packaging and deployment but......

    Natural = {1,2,3,...}
    Whole = {0,1,2,3,...}
    Integers = {...-3,-2,-1,0,1,2,3,...}
    Rational Number is a number that can be written in the form j/k where j and k are both Integers.
    Irrational Numbers are numbers that CANNOT be written in the form j/k where j and k are both integers.
    Real Numbers are the union of the Rational and Irrational Numbers.
    Imaginary Numbers are numbers in the form x+yi where x and y are real and i is the square root of -1.
    Complex Numbers is the union of the Real Numbers and the Imaginary Numbers...

Thursday, January 31, 2013

Converting 3010 exit code to 0


If the 3010 exit code is causing a problem (perhaps by forcing an unwanted reboot in the middle of a SCCM task sequence reboot) the following property can be set to enable a 0 exit code when 3010 would normally be the result.

MSIRESTARTMANAGERCONTROL=Disable


Thursday, January 24, 2013

Robocopy


Copies all files and folders from the source location to the destination location.
Robocopy <PathToSourceFolderLevel> <PathToSourceFolderDestination> /E

/E and subfolders inc empty ones

/Z copies files in restartable mode (if there is a network interruption the job can restart midway through the file it was copying previously - useful for large files.)

/LOG:<PathToLogFile>

BE CAREFUL WITH THE /MIR OPTION IT CAN PERMANENTLY DELETE FILES ON THE DESTINATION.

Make sure the log file is specified to land in a writable location by the process running it!  users, system etc.

A command similar to this may be useful for making a copy or back up of a user profile.
It would need to be running elevated as an admin but you get the idea.


md %userprofile%bak
robocopy %userprofile% %userprofile%bak /xj /purge /s /R:0 /XD %temp% /XF *.tmp /TEE /NFL /NDL /LOG:%userprofile%BAK\robolog

Tuesday, January 22, 2013

WebEx Recorder and Player WBS28



The target executable is "C:\Program Files (x86)\WebEx\Record Playback\AtAuthor.exe"  By default this program launches in Recorder mode and reports itself in Help About as WebEx Recorder WBS28.  The same executable provides the Player mode as well.  When launched with a –PLAYER switch the AtAuthor.exe launches in player mode and reports itself in Help About as WebEx Player WBS28

WebEx Recorder And Player cannot properly capture displayed activity by other applications when virtualised.  (App-V 4.x)

atrecply.msi downloadable from link below.  Install creates a .wrf association to the player.

http://www.webex.com/play-webex-recording.html

More information

You can download and install a standalone version of the WebEx Player or Network Recording Player to play back any recording that was made using the WebEx Recorder or Network-Based Recorder.

WebEx Network Recording Player for Advanced Recording Format (.arf) files
This WebEx Network Recording Player allows interactive playback of WebEx Advanced Recording Format (.arf) files that have been streamed or downloaded to your site. With this WebEx Network Recording Player, you can control the session panels, just as in live WebEx meetings, and navigate to an event in the recording via the Table of Contents. Advanced Recording Format files contain all audio from the recorded session, including WebEx Integrated Teleconferencing, 3rd Party Conferencing, VoIP, and Audio Broadcasting.

WebEx Recorder and Player for WebEx Recording Format (.wrf) files
This is a standalone version of the all-in-one WebEx Recorder and Player for .wrf files.

There is a discussion here about what can be edited and how.
https://themeetingson.webex.com/docs/T27LD/mc0805ld/en_US/support/rec_play_faq.htm



Wednesday, January 16, 2013

Sequencer Build Config


Sequencer:
Disable SFT versioning if required.

Disable:
SCCM Agent Host
Windows Defender
Windows Search
Windows Update
Any autoupdating that is turned on in build apps (note it shouldn't BE on)
System Restore

Also consider turning off DEP

For Windows 10 Sequencer

Removed all default start tiles
Removed Store task bar shortcut
Activated all status bar notification icons
Turned off Cloud
Deactivated Defender
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender
DisableAntiSpyware DWORD 1
Disable Defender Notification icon in startup

Disabled Windows Search
Disabled Windows Update

Turned off versioning in the sequencer.

Created
c:\source
C:\temp

Activated file extensions in explorer.

User Configuration > Admin Templates > Start Menu and Taskbar and then enable Remove Notifications and Action Center.

Disable cortana
computer configuration > Administrative Templates > Windows Components > Search > Allow Cortana=Disabled

Disable Store
User Configuration > Administrative Templates > Windows Components > Store Turn off the Store Application=Enabled


Enable bi-directional copy and paste in VirtualBox

Set Control Panel to small icons

Turn off Updates from more than one place in Settings




Thursday, January 10, 2013

PXE boot failure (WDS)


In some circumstances restarting the Windows Deployment Service (WDS) can solve failing PXE boots