Service Lsdiorw

Résumé : Le service lsdiorw est un service tournant sous le compte local system et permettant d'accéder aux disques sous Windows 2000, XP, Vista et 7, même depuis un compte de simple utilisateur. La version actuelle, utilisée avec MacDisk version 8.0, est la 5.0.
 

Introduction

Sous Windows 2000/XP/Vista/7/8, nous n'utilisons plus la couche Aspi pour les accès de bas niveau aux disques équipant l'ordinateur, mais un service écrit spécialement, nommé Lsdiorw, qui tourne sous le compte local system et qui appelle des fonctions SPTI et IOCTL. De cette manière, même les simples utilisateurs peuvent avoir accès aux disques physiques extérieurs à Windows.

Installation du service

Ce service doit être installé depuis un compte disposant des droits d'administrateur. Dans ce cas, l'installation est automatique au cours de l'installation du programme principal. Si cette installation automatique échoue, vous devez la répéter, mais uniquement pour le service, en lançant manuellement l'installateur interactif lsdinst.exe (qui effectue successivement l'installation proprement dite, et ensuite le démarrage du service).
Si vous ne trouvez pas ce programme ainsi que le service lsdiorw.exe lui-même (qui devraient se trouver dans le dossier \Program Files\LS_Duhem\Lsdiorw si votre système est en 32 bits et dans le dossier \Program Files (x86)\LS_Duhem\Lsdiorw s'il est en 64 bits), vous pouvez les recharger depuis notre site Web.
Choisissez la version du service en fonction de la version de MacDisk que vous utilisez. L'archive contient les quatre fichiers suivants : le service Lsdiorw.exe, l'installateur interactif lsdinst.exe et les versions silencieuses de l'installateur instserv.exe et du désinstallateur unstserv.exe.

Désinstallation du service

Lors de la désinstallation de MacDisk, le service Lsdiorw est désinstallé à l'aide de l'utilitaire spécialisé unstserv.exe. Si vous obtenez un message d'erreur énonçant que certains éléments n'ont pas pu être supprimés, il s'agit probablement du service, qui n'a pas pu être supprimé directement. Il le sera au prochain démarrage de l'ordinateur. Il suffit ensuite de supprimer les dossiers inutiles manuellement.
Vous pouvez également désinstaller manuellement en lançant l'utilitaire lsdinst.exe et en cliquant sur le bouton 'Désinstaller'.

Installateur avec interface graphique

Les utilitaires mentionnés ci-dessus fonctionnent en ligne de commande et n'affichent normalement rien, pour ne pas perturber le processus d'installation ou de désinstallation. Par contre, ils ne sont pas très commodes lorsqu'un utilisateur doit réinstaller le service lui-même. Nous avons donc également inclus dans le dossier Lsdiorw, à partir de la version 4 du service, un utilitaire avec interface graphique appelé lsdinst.exe. Il offre simplement deux boutons, Installer et Désinstaller, dont l'un est grisé et l'autre validé, naturellement, en fonction de la situation du service.
Cet utilitaire affiche également la version du service placé dans le même dossier, à titre d'information, à partir de la version 4.5.

CreateProcess Failed-Code 740

Il arrive parfois, en particulier sous Windows Vista et Windows 7/8, que l'installation du programme se termine par le message ci-dessus, auquel est ajouté le commentaire 'The requested operation requires elevation'. Cela signifie que les droits de l'utilisateur ne sont pas suffisants pour l'installation. Allez dans le dossier d'installation (normalement 'Program Files (x86)') et lancez l'installateur graphique lsdinst.exe. Si Windows vous demande si vous souhaitez élever vos droits d'exécution, répondez 'Oui'. Dans la boîte affichée par le programme, cliquez sur 'Installer'. Ce devrait être tout. Relancez MacDisk (le programme principal).

Comment connaître la version du service ?

Sous l'explorateur de Windows, si vous laissez traîner le curseur de la souris sur l'icône du fichier Lsdiorw.exe, vous devez obtenir une infobulle avec le numéro de version.
De même, dans la console des services (allez à Démarrer, Paramètres, Panneau de configuration, Outils d'administration et Services), sélectionnez la ligne du service Lsdiorw. Il affiche alors sa version à partir de la version 4. S'il ne le fait pas, il s'agit normalement de la version 2.

Fonctionnement du service

Ce service ne consomme pas de ressources lorsqu'aucun de ses clients ne lui envoie de requêtes, et tourne ainsi en tâche de fond sans rien faire. Il fonctionne même lorsque la session de travail ouverte est celle d'un utilisateur sans droits particuliers.
Lorsqu'un programme veut utiliser ses fonctions, il lui passe les adresses de zone de mémoire qui seront partagées par l'application et le service, pour passer les instructions et pour recevoir les données.
Lorsque l'application se termine, elle demande au service de libérer ces zones de mémoire.

Formatage sous Windows Vista/7/8

Lorsque vous montez ou insérez un disque formaté pour PC sous les dernières versions de Windows, les secteurs initiaux du disque se trouvent « protégés ». Un problème se pose si vous décidez de reformater ce disque dans un autre format, par exemple Macintosh.
La solution est de lancer le formatage dans MacDisk. Le secteur 0 est écrit correctement, les suivants non. Éjectez le disque et remettez-le en place. Windows vous annonce que le disque doit être formaté pour être utilisé. Fermez cette boîte de message et relancez le formatage dans MacDisk. Cette fois, le programme peut écrire dans tous les secteurs du disque et achever correctement le formatage.

Erreur 2 - Disque physique ou virtuel ?

Si vous avez au lancement une erreur 2, Fichier non trouvé, puis un message indiquant que le service n'est pas libre ou pas installé, la raison peut en être que vous avez installé le programme sur un disque qui n'est pas un disque physique, mais un disque virtuel (un disque installé sur le réseau, un disque monté en RAID, un disque créé avec l'utilitaire subst.exe, etc.).
Le service lsdiorw.exe est lancé par le système de l'ordinateur avant le lancement de Windows (du moins, à un niveau très bas de Windows), à un moment où tous les disques qui apparaîtront ensuite dans l'Explorateur ne sont pas nécessairement montés.
Si bien que le système ne trouve pas le fichier à lancer (message 1). Ensuite, au lancement de MacDisk, le programme ne peut pas trouver le service et affiche le message 2, pensant qu'il n'est pas installé ou qu'il n'est pas libre (il n'y a que trois connecteurs pour utiliser le service).
Commencez par désinstaller le service. Dans le dossier lsdiorw qui se trouve dans le dossier LS_Duhem, sous le dossier 'Program Files' ou encore x86, lancez l'exécutable lsdinst.exe et cliquez sur le bouton Désinstaller.
Ensuite, déplacez le service (la totalité du dossier lsdiorw) vers un disque dont vous savez qu'il est présent au lancement de l'ordinateur. Relancez ensuite l'installateur (lsdinst.exe) et cliquez cette fois sur le bouton Installer.

Autres erreurs

En cas d'erreur (généralement à cause de disques en mauvais état), le service Lsdiorw peut être arrêté par le Gestionnaire des services (un composant de Windows).
Dans ce cas, il est nécessaire de le redémarrer. Pour ce faire, allez dans Démarrer, Paramètres, Panneau de Configuration, Outils d'administration et Services. Dans la console Services, faites un clic droit sur la ligne de Lsdiorw et sélectionnez l'option Démarrer. Cette opération doit se faire depuis un compte d'administrateur.
Vous pouvez aussi (plus simplement ?) redémarrer l'ordinateur.
À noter que redémarrer le service peut parfaitement se faire sans refaire l'installation à partir de zéro (un service peut très bien être installé et non démarré).

Sécurisation des accès aux disques

Les administrateurs pouvant légitimement exprimer des craintes face à cette démarche, qui court-circuite les systèmes de sécurité qu'ils mettent en place, nous avons prévu la possibilité de définir une liste noire.
La liste noire est une liste des disques auxquels les utilisateurs ne doivent pas accéder par cette méthode. Cette liste est une fonction normale de MacDisk, mais elle peut être verrouillée par l'administrateur pour que l'utilisateur ne puisse la modifier.
Voir le fichier « admin.txt » sur le disque de distribution pour plus de détails.
D'autre part, à partir de la version 7, MacDisk n'affiche plus, par défaut, les disques fixes qui sont formatés en FAT, FAT32 ou NTFS, afin de protéger les utilisateurs contre eux-mêmes.

Paramétrage du pare-feu de Windows (XP SP 2 et supérieur)

Si votre ordinateur fonctionne sous Windows XP avec SP2 et si vous avez mis en service le pare-feu de Windows, il est nécessaire de le paramétrer pour qu'il laisse passer les appels de MacDisk au service Lsdiorw.exe.
À partir du Panneau de configuration (menu Démarrer, puis Paramétrage et Panneau de configuration, ou encore directement Panneau de configuration dans le menu Démarrer), ouvrez le Pare-feu de Windows. Sélectionez l'onglet Exceptions. Dans cet onglet, cliquez sur le bouton Ajouter un programme. Si le service Lsdiorw est dans la liste, cliquez sur son nom. Sinon, cliquez sur le bouton Parcourir pour aller le chercher sur le disque. Ce fichier se trouve normalement dans le dossier C:\Program Files\LS_Duhem\Lsdiorw. Le service Lsdiorw y apparaîtra avec son extension .exe ou sans, suivant le paramétrage que vous avez choisi pour l'affichage des fichiers dans Windows.

Logiciels antivirus et « bac à sable »

Certains antivirus créent un mode de fonctionnement qu'ils appellent un « bac à sable », pour examiner le comportement des programmes qui leur sont inconnus en les empêchant de causer des dommages irréparables. Par défaut, ils lancent dans ce mode tous les programmes qui s'exécutent pour la première fois. L'utilisateur peut normalement répondre au message d'information qui est affiché que l'application est connue et qu'il est possible de lui faire confiance.
Dans le cas qui nous intéresse, il faut le faire une fois pour MacDisk et une fois pour le service Lsdiorw.
Attention, si vous avez en plus opté pour le mode silencieux, vous ne verrez pas ce message et vous constaterez avec effroi qu'une application se lance puis disparaît sans rien dire.
Cela m'est arrivé personnellement. Après avoir inhibé le mode silencieux, j'ai pu rétablir le bon fonctionnement en validant deux fois les exécutables.

 
Pierre Duhem (ex-Logiciels & Services Duhem)
3, rue Pierre Haret - F-75009 Paris (France) - Tél. (+33) [0]149 700 455
web : http://www.macdisk.com