2010-07-27 4 views
2

Я сделал приложение в приложении C# windows. В этом я создал проект с именем ACHWINAPP. Я написал код, чтобы получить путь, который я требуемый следующимКак создать папку в установленном каталоге приложения

strFilePath = Directory.GetCurrentDirectory(); 
strFilePath = Directory.GetParent(strFilePath).ToString(); 
strFilePath = Directory.GetParent(strFilePath).ToString(); 
strFilePath = strFilePath + "\\ACH\\"; 

Но когда я создать установку для проекта и устанавливается в direcotry именно некоторые F: \ я получаю ошибку ACH не найдено.

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

ответ

0

Это трудно понять, что именно вы хотите. Может быть, использовать ответы на this question для загрузки файлов рядом с текущим приложением?

В противном случае либо проследуйте с помощью Console.WriteLine() (или если вы используете Visual Studio, добавьте точку останова), чтобы узнать начальное значение strFilePath. Вероятно, это не то, что вы ожидаете.

Вместо «добавление» строк вместе, используйте Path.Combine(path1, path2), чтобы создать свой путь:

strFilePath = Path.Combine(strFilePath, "ACH"); 
+0

Эй, что мне нужно, это я создали мое приложение в моей системе в dirctory E с именем ACHWINAPP. На моем ПК он работает нормально. Если я создаю настройку для того, что я сделал, и если я установил ее на другой компьютер в какой-то каталог C: \ я не могу найти имя папки ACH, так что я не могу сохранить файлы для пользователя в установленной директории – Dotnet

2

Это относительно простой бит кода:

string currentPath = Directory.GetCurrentDirectory(); 
if (!Directory.Exists(Path.Combine(currentPath, "ACH"))) 
    Directory.CreateDirectory(Path.Combine(currentPath, "ACH")); 
//at this point your folder should exist 

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

+0

Это было полезно, но поскольку мой установленный путь - это C: \ Program Files \ Default Company Name \ ACH, я хотел бы создать эту папку на этом пути, но он получает создание в C: \ Program Files – Dotnet

Смежные вопросы