Come on guys, a little more effort than that. How are you supposed to copy paste an image?
The script is the following:
It's supposed to pull the application and command-line to execute it in AppV5. I got the script from this document:
http://www.microsoft.com/en-us/download/details.aspx?id=40885
"PackageName,Application Name,ApplicationPath"|out-file .\appPath.txt -Append
foreach($pkg in (gwmi -Namespace root\AppV -Class AppVClientPackage -Filter "IsPublishedGlobally = true"))
{
$apps=gwmi -Namespace root\AppV -Class AppVClientApplication -Filter "PackageID = '$($pkg.PackageId)' and PackageVersionID = '$($pkg.VersionId)'"
foreach($app in $apps)
{
$rootfolder=(Get-ItemProperty "HKLM:\Software\Microsoft\AppV\Client\Packages\$($app.PackageID)\Versions\$($app.PackageVersionID)\Catalog").Folder
$appPath=$app.TargetPath.Replace("[{AppVPackageRoot}]",$rootFolder)
"$($pkg.Name),$($app.Name),$($appPath)"|out-file .\AppPath.txt -Append
}
}
Wednesday, November 20, 2013
Friday, November 15, 2013
Error launching batch file from within AppV 5 bubble
So we have an application that requires the "%CLIENTNAME%" variable to be passed to it in it's exe string. The string looks like so:
The powershell commands put me in the AppV 5 bubble then opened a command prompt. From the command prompt I can see the directory that is missing. Going back to procmon I was curious to see what command it was launching. It was launching this:
prowin32.exe -p \\nas\cfgstart.p -param S,%CLIENTNAME%,120n,citrix,a92,10920 -wy
The issue we have is APPV does not seem to get that variable and pass it to the program. So when the program starts, it makes %clientname% folders in a temp directory and we can't have two %clientname% folders in the same directory so only one instance of the application can be launched *period* if we do it this way, as opposed to one per server.
To resolve this issue I wrote a script that will pass the %CLIENTNAME% variable to AppV by ripping it out of the registry:
=======================================================
ECHO Launching Centricity...
for /f "tokens=1-3" %%A IN ('reg query "HKCU\volatile environment" /s ^| findstr /i /c:"CLIENTNAME"') DO SET CLIENTNAME=%%C
prowin32.exe -p \\nas\cfgstart.p -param S,%CLIENTNAME%,120n,citrix,a92,10920 -wy
=======================================================
This worked for AppV 4.6 without issue. Now with AppV 5 I get an error, PATH NOT FOUND when trying to launch this script.
To verify the path exists in the app I ran the following commands:
To verify the path exists in the app I ran the following commands:
The powershell commands put me in the AppV 5 bubble then opened a command prompt. From the command prompt I can see the directory that is missing. Going back to procmon I was curious to see what command it was launching. It was launching this:
cmd /c ""C:\ProgramData\Microsoft\AppV\Client\Integration\3230251A-5B8E-47EF-8378-986B2A492D05\Root\VFS\Common Desktop\MyApps\BDM Pharmacy v9.2\Centricity Pharmacy Test on rxpv91cal.cmd" /appvve:3230251A-5B8E-47EF-8378-986B2A492D05_03CA3F94-F318-4693-A7E3-038DB30E6C70"
This command was failing. It appears that when you are launching the .cmd file directly AppV 5 starts the cmd.exe *outside* the AppV bubble and it doesn't connect to the appvve. To correct this I tried this command line:
cmd /c "cmd.exe /c "C:\ProgramData\Microsoft\AppV\Client\Integration\3230251A-5B8E-47EF-8378-986B2A492D05\Root\VFS\Common Desktop\MyApps\BDM Pharmacy v9.2\Centricity Pharmacy Test on rxpv91cal.cmd" /appvve:3230251A-5B8E-47EF-8378-986B2A492D05_03CA3F94-F318-4693-A7E3-038DB30E6C70"
Success! It launched successfully and saw the directory and everything was good there after. So let that be a lesson to other AppV 5 package makers, if you need a pre-launch script you may need to modify your published icon to put another cmd.exe /c before the command file for it to start in the bubble.
A very good AppV blog has already discovered this issue and came back with a better fix than mine:
http://blogs.technet.com/b/virtualvibes/archive/2013/10/17/the-issues-of-sequencing-bat-shortcuts-in-app-v-5-0.aspx
A very good AppV blog has already discovered this issue and came back with a better fix than mine:
http://blogs.technet.com/b/virtualvibes/archive/2013/10/17/the-issues-of-sequencing-bat-shortcuts-in-app-v-5-0.aspx