Bij sommige klanten draait BOXwise -- en in het bijzonder de portal -- vanaf de D of E-schijf. Dit heeft voor problemen geleid met het koppelen van de Skorpio-scanners. Wanner je in de browser van een scanner probeert de client te installeren, kan het voorkomen dat je een IIS-foutmelding krijgt in de trant van "File not found: E:\Program Files (x86)\TranCon\BOXwisePro\Portal\Clients\Mobile\cabinstall.cab". Hier volgt een uiteenzetting van het probleem dat vandaag bij deze klant is opgetreden, gevolgd door de bij de klant doorgevoerde oplossing:
Het koppelen van clients geschiedt via de managementportal. In de browser van een client navigeer je naar http://$boxwise_server/boxwisepro/clients
. Deze website draait onder een Windows-component genaamd Internet Information Services (hierna: IIS). De website detecteert aan de hand van de useragent met welke browser de hiervoor genoemde webpagina wordt weergegeven. Indien de webpagina detecteert dat er sprake is van een Windows Mobile-browser, wordt verwezen naar http://$boxwise_server/boxwisepro/clients/mobile
. Vervolgens kun je in de browser ervoor kiezen om de BOXwise-applicatie op de scanner te downloaden. Dit geschiedt via een link die wijst naar http://$boxwise_server/boxwisepro/clients/mobile/launcher.cab
.
In IIS kun je per URL een zogenaamde handler configureren. Een handler is een object van een type dat (uiteindelijk) afleidt van IHttpHandler
. Voor de URL van launcher.cab is een handler opgegeven, te weten: MobileLauncherHandler
. Deze handler zorgt er via de functie ProcessRequest()
voor dat de client een .cab-bestand wordt voorgeschoteld. De functie ProcessRequest()
probeert een aantal bestanden te maken en middels een tool genaamd cabwiz.exe
een .cab-bestand te genereren. Er zit in cabwiz echter een bug, waardoor deze tool onder bepaalde omstandigheden geen .cab-bestanden kan genereren. Gevolg hiervan is de in de eerste alinea genoemde fout: "File not found". Hierdoor mislukt het installeren van de software op de scanner.
Uiteindelijk bleek de oplossing verrassend eenvoudig. De crux is dat cabwiz niet (in ieder geval niet altijd) correct kan draaien vanaf een andere schijf dan C. Frank heeft een symlink gemaakt vanaf de C-schijf naar de E-schijf. Om precies te zijn: er dient een symlink te liggen vanaf de C-schijf naar de locatie waar de managementportal fysiek staat. Die laatste locatie bedraagt in het geval van deze klant de volgende locatie. Gebruik een van de volgende links afhankelijk van de situatie.
E:\Program Files (x86)\TranCon\BOXwisePro\Portal
D:\Program Files (x86)\TranCon\BOXwisePro\Portal
Een suggestie voor het maken van de symlink is het commando:mklink /d C:\bw_portal "E:\Program Files (x86)\TranCon\BOXwisePro\Portal"
mklink /d C:\bw_portal "D:\Program Files (x86)\TranCon\BOXwisePro\Portal"
Na het maken van de symlink is er nog een stap in de configuratie van IIS nodig. IIS wijst namelijk nog naar de oude locatie op de E-schijf, maar"moet de symlink gaan gebruiken. Dit is in te stellen via Internet Information Services (IIS) Manager. Klik met de rechtermuisknop op de site van BOXwise (meestal boxwisepro
). Vouw het menu Manage Application open en klik op Advanced Settings.... Wijzig nu de waarde bij Physical Path in de locatie van de symlink. In her hierboven genoemde voorbeeld is dat dus C:\bw_portal
. Klik vervolgens op OK en installeer de software op de scanner volgens de gebruikelijke werkwijze.