Visual Studio 2010, как ссылаться на папку внутри проекта? - PullRequest
4 голосов
/ 25 июня 2011

Я добавил папку с кучей изображений внутри моего проекта vs2010.Я хочу сослаться на эту папку через код.Поскольку последняя программа может быть развернута в другом месте, абсолютный путь не подойдет!

Какой стандартный способ получить относительный путь к папкам?

Я довольно новичок в этом, извинитеесли я спрашиваю что-то слишком очевидное!Спасибо.

Ответы [ 3 ]

2 голосов
/ 25 июня 2011

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

В любом случае вы можете получить путь к приложению:

string appFolder = Path.GetDirectoryName(Assembly.GetExecutingAssembly().CodeBase);

И затем вы можете использовать методы из класса Path, например Path.Combine, для обращения к папке.

1 голос
/ 25 июня 2011

Ресурсы это хорошая идея.Альтернатива - записать местоположение установленной папки приложения в реестр при установке приложения. ИЛИ сделать что-то вроде

string dir = System.IO.Path.GetDirectoryName(Application.ExecutablePath);
0 голосов
/ 25 июня 2011

Если эти образы относятся к вашему исполняемому файлу, вы можете использовать argv [0] из main () (если это командная строка) или даже лучше следовать советам MSDN:

По соглашению argv [0] - это команда с помощью которого вызывается программа. Тем не менее, возможно порождение обрабатывать с помощью CreateProcess и если вы использовать как первое, так и второе аргументы (lpApplicationName и lpCommandLine), argv [0] не может быть имя исполняемого файла; использовать GetModuleFileName получить имя исполняемого файла и его полный путь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...