Today's frustration comes in two parts. Expect my thoughts on x64 implementations shortly. But first, over the last week, I have been trying to shoehorn a legacy app into an AppV package. This thing is so ancient, it's trying to install, not to some handy directory like "C:\Program Files\BLAH" but directly to C:\
No directory. No. Just going to scatter my own directories directly to the root. So it comes as no surprise that this application does log management and launching via batch files.
Don't get me wrong. A batch file can be a beautiful thing. When the task is simple and within the scope of a batch file, which is considerably limited. But these days, there are many choices for scripting. JavaScript, vbScript, Powershell script, or if you want to go old school, there is always bash (ask your father) All of these scripting languages have hooks into all sorts of handy functions in the OS. You can (not that you should) build just about anything with them.
So the good old .bat gets thrown on the temporal scrap heap. Until I have to get this thing running on WindowsRecentx64.
This is where I learned that when using AppV, you have to explicitly name what program the .bat file should run under in a shortcut. This means changing the target from
C:\BLAH\go.bat -fconfig /appvve:AGUID-WITH-A-BUNCHOFHEX_ANOTHER-GUID-WITH-MOREHEX
to
cmd.exe /C"C:\BLAH\go.bat -fconfig" /appvve:AGUID-WITH-A-BUNCHOFHEX_ANOTHER-GUID-WITH-MOREHEX
The same goes with .vbs and .js scripts, exept the engine changes to cscript or wscript if you like an abundance of pop ups.
Expect more ranting once I've finished documenting this legacy BLAH.
Tuesday, November 17, 2015
Wednesday, November 4, 2015
Tablets, and why you shouldn't be cheap.
This is a long story that takes me back. When I was first riding to work I discovered that the 15" laptop was no longer a good thing. So I checked the market for small laptops that would fit on the back of the bike and do everything I needed them to do. During my research, I chanced upon the Asus Transformer 300. A great little tablet with fantastic battery life, and a Keyboard.
Do not ever underestimate the power of a keyboard. They transform a tablet from being a content consuming device, to being a content creation device.
Yes there were a whole bunch of compromises. I found myself using simple word processors rather than Microsoft Office. And found for my requirements, they worked just fine. Browsing was a doddle, and games were small, not as immersive but fun.
The decision to move to a smaller laptop was a good one for me.
Anyways. A couple of years later, and the tablet supplier decided that they would end support for new software. This left me with the choice of running stock software or playing around with flashing it myself to cyanogenmod.
I chose the latter being the good geek I am and had some mixed success. But one lesson I will give you for free.
The GApps module that says nano really means, You will have to uninstall all the Google Apps and reinstall them to make them work. Save time and panic. Get the larger one and then just do the upgrade.
Look out for more scripting nonsense later today.
Wednesday, October 28, 2015
Leadership skills you actually need.
I was reading my linkdin feed today and noticed a plethora of articles reading like this
- 6 Things a leader never does.
- 5 Habits all leaders have
- One thing all Leaders have in common.
- Etc. Etc.
The issue I have with these articles is they assume that leadership in and of itself is the end goal. And for a manager stuck in middle management dreaming of the CEO's car parking space, it sounds very enticing. I check off the habits that leaders have and I become a leader.
Here is the one thing that all these articles forget. A leader is a leader because something is following them. Yes there are a bunch of techniques that will improve the chances of people following you, but the thing to remember is to go somewhere.
Do something awesome. The person that creates something new is a greater leader than the person who herds people round in circles.
Go. Be Awesome.
Friday, October 23, 2015
Asking for .hlp
The package I am currently working on has a .hlp file that needs opening so people can, well, get help. Now because the .hlp standard is flawed with some insecurities that would allow people to redirect around security to get at stuff, Microsoft decided to only include the executable to read these as an optional extra.
In a .msu file
That only runs when the Windows Update service is running
That service you switch off so you can get a vanilla box to package on
Great...
You can switch it on and off. at will, and it seems to work for sliding it into the App-V bubble. Hooray.
Turn's out this doesn't work. Will keep this post updated as I look for answers.
Update:
I figured it out. It's a bit of a pa-lava but it's definitely possible to bubble this bad boy.
Grab the .msu from the link. then pop it open using the cmd command
expand F:* windows6.1-KB917607-x86.msu C:\Temp\winhlp32
Now you fire up AppV sequencer and follow the steps below in your bubble
This will grab you a whole directory of joy. Now you are going to have to do some ownership grabbing of the following files. If you need help, click here.
Copy the files below over their counterparts above.
In a .msu file
That only runs when the Windows Update service is running
That service you switch off so you can get a vanilla box to package on
Great...
You can switch it on and off. at will, and it seems to work for sliding it into the App-V bubble. Hooray.
Turn's out this doesn't work. Will keep this post updated as I look for answers.
Update:
I figured it out. It's a bit of a pa-lava but it's definitely possible to bubble this bad boy.
Grab the .msu from the link. then pop it open using the cmd command
expand F:* windows6.1-KB917607-x86.msu C:\Temp\winhlp32
Now you fire up AppV sequencer and follow the steps below in your bubble
This will grab you a whole directory of joy. Now you are going to have to do some ownership grabbing of the following files. If you need help, click here.
- C:\Windows\winhlp32.exe
- C:\Windows\System32\ftsrch.dll
- C:\Windows\EN-US\winhlp32.exe.mui
- C:\Windows\EN-US\ftsrch.dll.mui
Copy the files below over their counterparts above.
- C:\Temp\winhlp32\x86_microsoft-windows-winhstb.resources_31bf3856ad364e35_50.1.7600.16386_none_da3d517bf9765116\winhlp32.exe
- C:\Temp\winhlp32\x86_microsoft-windows-winhstb.resources_31bf3856ad364e35_50.1.7600.16386_none_da3d517bf9765116\ftsrch.dll
- C:\Temp\winhlp32\x86_microsoft-windows-winhstb.resources_31bf3856ad364e35_50.1.7600.16386_en-us_83921ac31ded8ee9\winhlp32.exe.mui
- C:\Temp\winhlp32\x86_microsoft-windows-winhstb.resources_31bf3856ad364e35_50.1.7600.16386_en-us_83921ac31ded8ee9\ftsrch.dll.mui
And... now you have help in a bubble. Standard cleanups apply.
Tuesday, October 20, 2015
App-V and permissions
App-V Version 5 now respects permissions. Hooray. When dealing with legacy apps that write stuff wherever the hell they want to, keep this in mind.
Also works with setting rights on virtual services. When capturing, use subinacl. (Available here)
It works a treat. :-)
Also works with setting rights on virtual services. When capturing, use subinacl. (Available here)
It works a treat. :-)
App-V stole my shortcuts!
Being quite new to the App-V packaging world, I ran into an issue that I figured I'd share so others can
- Laugh at how silly I am, and
- Help out others in the same predicament
I was packaging up an application using Microsoft Application Virtualization Sequencer and all was good. All the pieces from the MSI I was using were dropping into the correct place. "Happy" thought I. "I shall have this package ready for testing by luncheon today"
I install it onto a clean machine, and all is right with the world. So I publish via the publisher.
I get the advertised icons on my start menu. But do they do anything? Nooooooo. Badness.
I spend a while Google problem, try random fix, hope.
Anyways what I had not done was edited the package in the sequencer, gone into the Advanced Tab and ticked the boxes
- Allow all named objects to interact with the local system
- Allow all COM objects to interact with the local system
- Allow virtual applications full write permissions to the virtual file system
Save, Publish and Happiness.
App-V versus error 142
For the last month or so I have been working with App-V and have had a series of issues that no one on the web seems to want to talk about. First of all,
Anything else in the Package\Root directory should probably use dummy folders.
As I learn more I'll keep all 3 of you posted.
Error 0x00000142
Conventional wisdom says- Check that 8.3 naming is turned on
- Check that all DLL's are registered
- If you're using App-V version 5 then make sure you are not dragging DLL's across the net
But I have found at least one case where the above error is caused by Empty directories. Fortunately this is easy to fix by placing a dummy file in the empty directory in the bubble. Remind me to report this to the good people at Microsoft for some cool merch.
Update:
I have been randomly deleting files from the Package\Root\VFS directory since this seems to be the main culprit. Basically, if it's empty, it can go. Also, anything with the extension .msi can be deleted on principal.Anything else in the Package\Root directory should probably use dummy folders.
As I learn more I'll keep all 3 of you posted.
Subscribe to:
Comments (Atom)