Mir의 운영환경 | |
---|---|
본체 | DeskTop |
O S | Windows XP Professional Ver 2002 Service Pack 2 |
Application | VisualStudio2010 |
.Net | Framework Ver 3.5 |
System.IO.Directory.GetCurrentDirectory()와 Application.StartupPath()의 차이점을 알아보고 실행 경로를 가져오자.
현재 경로를 가져오는 방법으로 크게 3가지 메소드가 있습니다.
1.System.Windows.Forms.Application.StartupPath
- 윈폼 프로그램 실행시 가능한 방법
- 기타 조건에 상관없이 무조건 현재 프로그램의 실행위치를 가져온다.
(Application.ExecutablePath == 실행파일명까지 가져온다.)
(System.Windows.Forms.Application은 실행되는 프로그램의 전반적인 컨트롤과 정보를 가져올수 있다.)
2.System.IO.Directory.GetCurrentDirectory()
- 윈폼이 아닌 다른환경에서도 가능한 방법
- Windows Registry에 등록시 (설치프로그램 실행시) "C:\Windows\System32" 경로가 나옴
(System.IO.Directory는 디렉토리에 대한 컨트롤을 할수 있다.)
3. System.Environment.CurrentDirectory
- 2와 동일
(System.Environment는 현재 환경 및 플랫폼에 대한 컨트롤과 정보를 가져올수 있다.)
윈폼 프로그램일경우 Application.StartupPath명령어를 사용하는게 제일 좋은거 같습니다.
다른 명령어를 사용할때에는 설치 전,후를 잘 생각해서 사용하시길 추천합니다.
(설치시 설치경로를 레지스트에서 불러와 절대경로로 사용하면 될듯합니다.)
using System.Windows.Forms;
namespace t2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
//프로그램 실행시 Data 폴더 확인 및 없을경우 Data 폴더 생성
System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(Application.StartupPath + @"\Data");
if (!di.Exists) { di.Create(); }
}
}
}
'C# > 예제 소스' 카테고리의 다른 글
[C#/.Net][Memory] 메모리 관리 기법 (WeakReference) (1) | 2016.01.09 |
---|---|
[C#/.Net][DateTime] 월별 일수 가져오기(DateTime.DaysInMonth()) (0) | 2016.01.07 |
[C#/.Net] 디렉토리 존재유무 확인하기 (DirectoryInfo.Exists) (0) | 2015.11.10 |
[C#/.Net] 파일 존재유무 확인하기 (FileInfo.Exists) (0) | 2015.11.10 |
[C#/.Net] ColorDialog를 이용하여 색상표 불러오기 (0) | 2015.10.29 |