현 블로그는 모바일 환경이 아닌 PC환경에 최적화 되어있습니다.

 Mir의 운영환경

 본체

 DeskTop

 O S

 Windows XP Professional Version 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(); }
        }
    }
}

 


※ 관련글

+ Recent posts