Obtient la chaîne de la ressource spécifiée lorsqu'il est donnée une chaîne indirecte
#include <WinAPIRes.au3>
_WinAPI_LoadIndirectString ( $sStrIn )
$sStrIn | La chaîne indirecte d'entrée. |
Succès: | Retourne la chaîne de sortie. |
Échec: | Définit @error <> 0, @extended peut contenir le code d'erreur HRESULT. |
Si la chaîne est une chaîne indirecte (une chaîne commençant par le symbole "@"), elle est de la forme suivante:
@filename,resource
La chaîne est extraite du fichier nommé, en utilisant la valeur de la ressource comme localisateur. Si la valeur de la ressource est supérieure ou égale à zéro, le nombre devient l'index de la chaîne dans le fichier binaire. Si le nombre est négatif, il devient un ID de ressource. Une chaîne indirecte peut être ajoutée avec un modificateur de version, comme montré ici:
@filename,resource;v2
Cette forme peut être utilisée lorsqu'une chaîne est changée, mais utilise toujours le même index ou l'ID de ressource que l'ancienne chaîne.
Sans un modificateur de version, le cache de l'interface utilisateur multilingue (MUI) ne reconnaîtrait pas que la chaîne aurait changé et continuerait à utiliser l'ancienne valeur. En ajoutant le modificateur de la version, la valeur est considérée comme une nouvelle ressource et est ajoutée à la mémoire cache.
Notez qu'il est recommandé d'utiliser une nouvelle ID de ressource ou d'index pour une nouvelle chaîne, et d'utiliser un modificateur de version uniquement lorsque cela n'est pas possible.
Si la chaîne d'entrée n'est pas une chaîne indirecte, la fonction retourne la chaîne d'entrée inchangée.
Consultez SHLoadIndirectString dans la librairie MSDN.
#include <WinAPIRes.au3> ConsoleWrite( _WinAPI_LoadIndirectString('@"'& @AutoItExe & '",-122') & @CRLF)