Salut tous le monde,
Le problème:

Les applications sont installées sur un disque réseau par exemple H:\
sur les bureaux des différents Desktop est installé un Short Cut (Icon)

Quand on lance l'application à partir du Short Cut, elle doit automatiquement configurer
sa base de registre locale et enregistrer dans cette base le Path Source de l'application.
Par exemple la source est H:\Easywindows\Bin\[ICM].EXE
J'ai fait le module suivant:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
 
 
 
: $LEFT-CLICK 										S( --- Flag )
 
   PAD 255 ERASE 					S( --- ) 		  \ On purge le PAD 
   S" [ICM].EXE" AX$ $! 				S( --- ) 		  \ Nom de l'application Racine dans la chaine AX$
   AX$ DROP GetModuleHandleA				S( --- mHdl )		  \ On passe ce nom à la fonction GetModuleHandle
   ?NIL SysAbort" $LEFT-CLICK MODULE_HANDEL_ERROR" 	S( mHdl --- mHdl | Error )  \ On teste si erreur, si oui on sort 
   PAD 255 GetModuleFileName				S( mHdl --- n )		  \ On passe le Handel obtenu à la fonction GetModuleFileName
   PAD SWAP ROOT$ $!					S( --- )	          \ Qui retourne le Path. On récupère ce Path dans la Chaine ROOT$
   ( ROOT$ Racine )$RegKey.Write			S( --- )	          \ On enregistre le contenu de ROOT$ sous l'étiquette Racine dans la base de Registre locale
 
   LPARAM LOWORD fg_xvb  XMPOS ! 
   LPARAM HIWORD fg_yvb  YMPOS ! 
   RacineMenu.Get
   hAPP WM_CLOSE 0 0 SendMessage DROP
;


Au lieu de retourner le Path de la source, ça me retourne le Path du Short Cut

Ce qui est souhaité H:\Easywindows\Bin\[ICM].EXE

Ce qui est obtenu C:\Users\Acer\Desktop\[ICM].EXE

LA QUESTION:

Y a t'il des fonctions autres que GetModuleHandleA et GetModuleFileNameA pour obtenir le path de la source?
Je pense qu'il doit exister quelque chose puisque Windows installe correctement les applications en mode local alors que les
sources sont sur le réseau.

Merci pour vos réponses

Cordialement
Ludwig