Получение пути до файла приложения

Иногда крайне необходимо получить полный путь в системе до исполняемого файла приложения в нем самом.

А сделать это можно следующим образом:

private 
{
	import std.algorithm;
	import std.file;
	import std.path;
	import std.string;
}


// удобные функции уровня приложения
class Application
{
	// полный путь к исполняемому файлу приложения
	static string pathToExe()
	{
		auto indexOfLastSlash = 0;    // индекс последнего слеша 
		auto exePath = thisExePath(); // точный путь к исполняемому файлу
		
		if (indexOfLastSlash == -1)
		{
			return getcwd(); // приложение находится в текущей папке
		}
		else
		{
			indexOfLastSlash = lastIndexOf(exePath, `\`);
			return exePath[0..indexOfLastSlash + 1];
		}
	}
}

Используя статический метод pathToExe класса Application вы легко получаете полный путь к своему исполняемому файлу.

Добавить комментарий