Maison > développement back-end > C++ > Comment puis-je obtenir le chemin de l'exécutable sur plusieurs plates-formes ?

Comment puis-je obtenir le chemin de l'exécutable sur plusieurs plates-formes ?

DDD
Libérer: 2024-12-29 15:08:11
original
737 Les gens l'ont consulté

How Can I Get the Executable's Path Cross-Platform?

Obtention du chemin de l'exécutable de manière multiplateforme

Trouver une solution multiplateforme pour récupérer le chemin de l'exécutable actuel peut être un défi à multiples facettes .

Malgré les hypothèses initiales, boost::filesystem::initial_path uniquement aborde l'aspect indépendant de la plate-forme, et non le chemin à partir duquel l'exécutable a été invoqué.

Malheureusement, il n'existe pas de solution universelle sur toutes les plates-formes. Cependant, des approches spécifiques peuvent être utilisées en fonction du système d'exploitation sous-jacent :

Linux :

  • Utiliser std::filesystem::canonical avec "/proc/ self/exe" comme argument.
  • Vous pouvez également utiliser readlink() pour obtenir le même résultat. résultat.

Windows :

  • Passez une valeur NULL comme handle de module à la fonction GetModuleFileName. Cela devrait fournir le chemin absolu vers l'exécutable.

En tirant parti de ces méthodes spécifiques à la plate-forme, vous pouvez récupérer les informations de chemin nécessaires pour des applications telles que Very Sleepy et Visual Studio, garantissant ainsi une configuration et une fonctionnalité de débogage appropriées. .

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal