Maison > développement back-end > C++ > Comment puis-je récupérer de manière fiable le chemin d'accès exécutable sur différentes plates-formes ?

Comment puis-je récupérer de manière fiable le chemin d'accès exécutable sur différentes plates-formes ?

Linda Hamilton
Libérer: 2025-01-03 01:50:39
original
557 Les gens l'ont consulté

How Can I Reliably Retrieve the Executable Path Across Different Platforms?

Récupération multiplateforme du chemin exécutable

Récupérer le chemin exécutable indépendamment de la plate-forme s'est avéré difficile dans le passé. Malgré les enquêtes précédentes, une solution définitive ou un verdict clair « impossible » n'a pas encore été atteint.

Solutions spécifiques à la plateforme

Bien qu'une solution universelle reste insaisissable, la plateforme -des approches spécifiques existent :

  • Linux :Utilisation "/proc/self/exe" en entrée des fonctions std::filesystem::canonical ou readlink.
  • Windows : Passez NULL comme paramètre de handle de module à GetModuleFileName.

Ogre et Très Somnolent :

Dans le cas précis d'un Le jeu Ogre étant profilé par Very Sleepy, le chemin absolu vers les fichiers de configuration peut être transmis à Very Sleepy. Cela garantit que le jeu peut localiser les fichiers quel que soit le répertoire de travail.

Débogage de Visual Studio :

Pour exécuter des exécutables sans définir le répertoire de travail dans Visual Studio, utilisez $ (TargetPath) et transmettez NULL à GetModuleFileName.

Supplémentaire Remarques :

D'autres approches peuvent fonctionner sur des systèmes spécifiques mais peuvent ne pas être portables. Il est conseillé de tester minutieusement toute solution avant de s'y fier dans des environnements de production.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal