ShortString ist grundsätzlich zu kurz. Schon allein bei mir "natürlicherweise" vorkommende Pfade von "D:\Dokumente und Einstellungen\Koos.DOMAINNAME\Anwendungsdaten\Micr osoft\Crypto\RSA\S-1-5-21-1645522239-1682526488-725345543-1162\" würden mit einem Dateinamen deine
DLL zu einem Pufferüberlauf bringen.
Die MAX_PATH Variable mit 260 stimmt, bezieht sich aber auf althergebrachte Dateiangaben. Ein Pfad an sich kann bis 32767 Zeichen (WideChar) lang werden, wenn die
UNC Angabe (\\?\) genutzt wird. Mehr Informationen siehe
hier - MSDN: Naming a file