Our school wants to provide ECDL Certifications for the students and will be soon operate as an official ECDL Testcenter. The examination will proof the Microsoft Office skills in beginner and advanced modules. Every student who pass the test will get a certification. The examination engine is fully automated that the teacher don’t have to correct the word, excel, powerpoint and access files manually.
You just have to open the browser and go to a specific website where the examination system is hosted. Sounds great isn’t it? But before you can start a test there will be a system requirement check if .net framework, java and office is installed and this brought me to a new challenge!
The Problem is that we don’t have local Office Installations. 80% of our Software is virtualized and provided by Microsoft APP-V technology. I did contact the support if there is a possibility to get the examinationsystem to work together with MS APP-V and got the following answer:
Yes and no! App-V does not work because COM and COM+ which is required for automation with Office do not work properly in this virtualized environment. It is possible that a skilled windows admin could tweak it into working by running the web browser and Java in the virtualized environment too, effectively virtualizing the whole desktop. But this is totally unsupported.
Every APP-V 4.6 Application is like a isolated sandbox. That means that you can’t access the virtual filesystem or registry from the local filesystem. By default also the different APP-V applications are sandboxed to each other. I’ve learned that it’s possible to gain a service access to the virtual filesystem or that you can run a command prompt inside a bubble which is very helpful for troubleshooting.
My thought was to build a APP-V package for IE and one for JAVA and then link this packages together with my virtual office to reach the goal that the Internetexplorer now detect now the MS Office Applications inside the bubble.The catchword for this is Dynamic Suite Composition which allow me to do that.
It’s not possible to virtualize the Internetexplorer. Because of that I did a trick to create a package that include no software installation but a shortcut that points to the local path of Internetexplorer. If I run that particular APP-V package, my local Internetexplorer will start up and it’s now possible to link that package with Office and Java.
First I’ve to open the osd file of my Java and Office Package. Inside the <IMPLEMENTATION> tag, I’ve to copy the red marked content. (click on the picture for a larger view)
Then I’ve to edit the osd file of my IE Package. After the <POLICIES> tag I’ve to implement a <DEPENDENCIES> Tag and paste in the red marked code from the Java and Office bubble. I did also add the parameter MANDATORY=“TRUE to ensure that the dependencies will be linked by start.
Now let me open my new IE Package and start the system requirementcheck again!
But never be happy to early! I did a example ECDL test and suddenly I got a ugly error message that the examination engine crashed! The strange thing was that it happend only with excel. Word, Access and PowerPoint worked fine!
During my troubleshooting process I did set the <LOCAL_INTERACTION_ALLOWED> tag from false to true on my office package. For some applications that use COM+ and DCOM Objects this could be a possibility to get the package to work! A very interessting article about this topic can be found here.
Setting <LOCAL_INTERACTION_ALLOWED> to true solved me also another problem. Some teachers use touchscreens and everytime when they used the pentools in word the application freezed. This no longer happens now. I did also see that I had a wrong dependencie inside the osd file of excel. I don’t know why but I did include there a dependecie tag to Java and I think this was the cause of the crash! I removed that line and since then the examination engine no longer crashed.