Maison > développement back-end > C++ > Comment puis-je obtenir le chemin exécutable multiplateforme ?

Comment puis-je obtenir le chemin exécutable multiplateforme ?

DDD
Libérer: 2024-12-22 18:18:17
original
828 Les gens l'ont consulté

How Can I Get the Executable Path Cross-Platform?

Obtention du chemin de l'exécutable multiplateforme

Dans le domaine de la programmation, déterminer le chemin d'accès à l'exécutable en cours d'exécution reste une tâche persistante défi. Cet article approfondit les détails complexes de l'obtention de ce chemin d'une manière indépendante de la plate-forme.

Approches indépendantes de la plate-forme

On pourrait initialement supposer que boost::filesystem : :initial_path fournit une solution aux exigences multiplateformes. Cependant, comme nous l'avons découvert, il aborde uniquement l'aspect portabilité en renvoyant le chemin à partir duquel l'application a été lancée. Cela ne suffit pas à fournir le chemin de l'exécutable.

Solutions spécifiques à la plate-forme

Malgré l'absence de solution multiplateforme définitive, des approches spécifiques à la plate-forme existent :

Linux

  • Pass /proc/self/exe vers std::filesystem::canonical ou readlink.

Windows

  • Passez NULL comme handle de module à GetModuleFileName .

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!

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