Netwerkshare opnemen in Windows 7 Library

Sinds dit weekend staat er een nieuwe NAS te snorren in mijn netwerk. De Linksys MH410 is vervangen door een Synology DS211. Echter, doordat ik nu een nieuwe locatie heb voor mijn bestanden, deden mijn bibliotheken in Windows 7 raar. In het verleden had ik namelijk een koppeling gemaakt naar de verschillende shares met data op mijn NAS. Deze koppelingen klopten nu niet meer.

Helaas was ik vergeten hoe ik dit ook al weer in het verleden had gedaan. Dus maar weer een speurtocht gehouden op het net. Al snel had ik 2 mogelijkheden gevonden.

Optie 1. De data offline beschikbaar maken. Hierbij klik je met rechts op de share en zet je een vinkje bij “offline beschikbaar maken”. Dit heeft echter als nadeel dat alle data lokaal op je disken wordt opgeslagen. Een echte optie is dit dus niet. Heb immers niet voor niets een NAS gekocht.

Optie 2 . Symbolic links gebruiken. Dit was wat ik in het verleden had gedaan en nu opnieuw heb uitgevoerd. Dit gaat als volgt:

  1. Maak ergens op je harddisk een folder aan, bijvoorbeeld netwerk-links. Maak daarin een subfolder aan waaraan je later de data wil koppelen. In mijn geval werden het er drie: Muziek, Foto en Video.
  2. Klink nu met rechts op de library / bibliotheek waar je de share aan toe wil voegen en kies voor Properties / Eigenschappen.
  3. Voeg nu de folder toe aan de library via de knop “Folder toevoegen” (Include Folder). Eventueel kun je de folder instellen als default locatie voor bestanden die moeten worden opgeslagen. Druk vervolgens op OK.
  4. Open nu een commandline met verhoogde rechten
  5. Ga naar de folder waar de subfolders in staan
  6. Delete de subfolder
  7. Gebruik nu het commando mklink om een symbolic link aan te maken onder de naam van de map die je hebt verwijderd. Dit gaat als volgt: mklink /D [foldernaam] [path naar share]

    In het geval van de subfolder Muziek type je vervolgens in: mklink /D Muziek \nasmusic

De sharefolder wordt nu opgenomen in je library. Je kunt zien dat het om een symbolic link gaat in explorer omdat er een shortcut pijltje bij is gekomen. Als je DIR gebruikt in een commandbox krijg je in de folder de melding <SYMLINKD> linknaam [\share-adres]

User driven application installatie met RES Workspace Manager en RES Automation Manager.

English version on Resguru.com

RES heeft op het moment van schrijven, nog geen echte mogelijkheid om applicaties te installeren op het werkstation van een gebruiker, op het moment dat een gebruiker deze nodig heeft. Uiteraard kun je er ook virtualisatie voor gebruiken en de applicatie streamen, maar dit is niet in alle gevallen mogelijk.

Een oplossing is RES Automation Manager hierbij te gaan gebruiken. Automation Manager is een tool, die o.a. installaties op een werkstation kan uitvoeren. Workspace Manager heeft een integratie met RES Automation Manager. Door een RES AM-actie aan een applicatie in Workspace Manager toe te voegen en een aantal simpele trucs, kan hierdoor een installatie op afroep plaatsvinden op het werkstation.

Eerst de voorbereidingen. Als voorbeeld nemen we 7zip. Je maakt een module aan en plaatst hierin de tasks om de installatie uit te voeren. In dit geval zoeken we eerst uit hoe je de installatie “stil” krijgt. Het is niet zo netjes als de gebruiker van alles moet invoeren om de installatie te laten lukken. Dat vergroot de kans op fouten en de kans op telefoontjes naar de helpdesk. Bij 7zip kun je de installer stil krijgen door de optie /S.

We maken een nieuwe resource aan en plaatsen daar de executable van 7zip in. Vervolgens maken we de module aan en voegen hierin de task toe om een unattended installatie uit te voeren.

Deze module testen we eerst uit op een testmachine. Als dit geheel werkt voegen we als eerste een task toe, die de gebruiker een bericht geeft dat de installatie loopt omdat deze nog niet is aangetroffen op de machine waar hij op zit. Hiervoor plaatsen we een messagebox task voor de installatietaken die al in de module staan.

Daarna voegen we een taak toe, die AM in een later stadium helpt om te bepalen of de software wel of niet is geïnstalleerd. Hiervoor zijn verschillende mogelijkheden. Je kunt bv. een bestand plaatsen op de machine of een registrykey toevoegen. In dit geval kiezen we voor het laatste. We plaatsen een registrykey waarvan de naam de naam van het programma wordt en de waarde het versienummer. Daardoor kunnen we eventueel bij een update checken of deze gedraaid moet worden.

Daarna passen we de 1ste taak aan. We plaatsen er een conditie op. Deze checkt of de registrykey die we hebben aangemaakt bij de installatie, ook daadwerkelijk bestaat. Is dit het geval, dan doen we helemaal niets en stoppen alle taken, is dit niet het geval, dan voeren we de installatietaken allemaal uit.

Degenen die RES AM een beetje kennen, zullen zich mogelijk afvragen waarom we niet de conditie gebruiken om te controleren of een bestand met een bepaalde versie aanwezig is. De reden hiervoor is, dat het checken van een registrykey sneller gaat en daarnaast komt het zo nu en dan wel eens voor dat ontwikkelaars vergeten een versienummer op een bestand te plaatsen, of deze te laten verschillen bij nieuwe versies.

De module in RES AM is nu klaar. Nu moeten we hem alleen nog koppelen aan onze shortcut in RES Workspace Manager. Als eerste moeten we zorgen dat de integratie met RES AM binnen RES WM geregeld is. Ga hiervoor naar Setup -> Integration -> RES Automation Manager en vul alle gegevens in. Test vervolgens de verbinding.

Hierna maak je de shortcut naar de applicatie aan, zoals je normaal ook doet. Let erop dat het vinkje “do not show when executable is not found’ bij instellingen niet is aangevinkt. Daarna ga je naar Configuration -> Actions en voeg je een nieuwe Automation Task toe. Zet een vinkje bij Wait for task to finish en Run before other tasks.

Alles is nu klaar voor gebruik. Als een gebruiker de shortcut in zijn startmenu aanklikt, of als via een file extension (mits geregistreerd binnen Workspace Manager) de applicatie gestart wordt, zal eerst de aktie van RES AM draaien. RES AM controleert eerst of de applicatie al geïnstalleerd is via de registry key. Is dat niet het geval, dan draait eerst de installatie taak voordat de applicatie wordt gestart. Is de applicatie al geïnstalleerd, dan zal de applicatie direct starten. Uiteraard zit er een minimale vertraging in. Bij een normale omgeving zal dit ongeveer 3-5 seconde zijn, mits de applicatie nog niet is geïnstalleerd.

Ook werkt deze methode niet altijd. Applicaties waarbij een reboot vereist is, kunnen op deze manier niet worden geïnstalleerd. Je zou daarmee immers de machine waar de gebruiker op werkt, een reboot moeten geven. Ook is deze methode niet aan te raden op een Terminal Server oplossing.