NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • 팁 앤 테크
  • 매뉴얼

    팁과 테크니컬 노하우를 확인하세요.

    팁 앤 테크

    팁과 테크니컬 노하우를 확인하세요.

    본 사이트의 컨텐츠는 저작권법의 보호를 받으므로 무단 복사, 게재, 배포 등을 금합니다.

    디자이너 11부 - 엔지엠 디자이너로 만든 플레이어를 배포 또는 판매할 때 설정해야 하는 옵션.

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. 엔지엠 디자이너로 매크로 플레이어를 만들었다면 다른 컴퓨터에 배포하거나 다른 사람에게 판매하는 경우가 생길 수 있습니다. 일반적으로는 내문서의 NGM6 폴더에 스크립트(Script)와 이미지(Image) 폴더가 있고, 다른 컴퓨터에 동일하게 복사해서 사용합니다. 하지만, 내문서가 아닌 배포한 매크로 플레이어에 사용하려면 몇가지 추가적인 설정과 코딩이 필요합니다.

    1부 - 엔지엠 디자이너로 엔지엠 매크로 플레이어 만들기 ]

    2부 - 엔지엠 디자이너로 엔지엠 매크로 플레이어 만들기. (이미지 매치) ]

    3부 - 엔지엠 디자이너로 엔지엠 매크로 플레이어 만들기. (문자 판독 OCR 체크) ]

    4부 - 엔지엠 디자이너로 엔지엠 매크로 플레이어 만들기. (프로세스와 프로그램 이름 변경하는 방법) ]

    5부 - 엔지엠 디자이너로 엔지엠 매크로 플레이어 만들기. (아이콘 변경하는 방법) ]

    6부 - 엔지엠 디자이너로 엔지엠 매크로 플레이어 만들기. (그룹 컨트롤) ]

    7부 - 엔지엠 디자이너로 엔지엠 매크로 플레이어 만들기. (변수 컨트롤) ]

    8부 - 엔지엠 디자이너로 엔지엠 매크로 플레이어 만들기. (파일 선택, 최상위에 창 고정, 마우스 이펙트 표시) ]

    9부 - 엔지엠 디자이너로 엔지엠 매크로 플레이어 만들기. (스크립트 개별 선택 및 실행) ]

    10부 - 엔지엠 디자이너로 엔지엠 매크로 플레이어 만들기. (이벤트와 커스텀 액션 처리하기) ]

     

    테스트를 위해 간단하게 디자이너 플레이어를 디자인 해두었습니다. 아래와 같습니다.

    aAP0Bff.jpg

     

     

    엔지엠 매크로 에디터 또는 플레이어를 실행하고, 옵션을 보면 상대 경로를 계산하기 위한 스크립트 폴더와 이미지 폴더가 있습니다.

    4cUZuD6.jpg

     

     

    이미지와 스크립트를 선택할 때 옵션에 설정되어 있는 폴더가 루트가 되고, 그 아래로 스크립트 또는 이미지 이름만 내부에 저장합니다. 아래와 같이 스크립트를 선택했다고 가정하면 1.ngs 스크립트의 전체 경로는 옵션의 스크립트 폴더 + 파일명이 됩니다.

    • C:\Users\<컴퓨터 이름>\Documents\NGM6\Script\1.ngs

    Fz28uRC.jpg

     

     

    기본적으로 에디터와 플레이어는 설치할 때 컴퓨터 이름을 알아내서 자동으로 스크립트 폴더와 이미지 폴더 이름을 만듭니다. 그래서, 다른 사람에게 스크립트만 전달해도 잘 동작합니다. 디자이너는 에디터나 플레이어를 설치하지 않고 디자이너로 만든 플레이어 파일만 받는데요. 이 때 내문서의 NGM6 폴더를 그대로 복사해서 사용하면 문제가 되지 않습니다. 하지만, 다른 위치에서 스크립트와 이미지를 불러오게 하려면 경로를 맞춰줘야 정상 동작합니다.

    • 이미지 조건의 이미지 파일을 사용하는 경우 상대 경로가 아닌 절대 경로입니다. 이미지들을 컴퓨터 이름이 들어가지 않는 C드라이브나 D드라이브에 복사해야 합니다.

     

    아래와 같이 스크립트 파일을 컴퓨터 이름이 있는 위치로 설정하면 다른 컴퓨터에 배포했을 때 정상 동작하지 않습니다. 위에서도 말했듯이 컴퓨터 이름이 다르면 파일 경로도 다르기 때문입니다. 디자이너로 만들 당시에 컴퓨터 이름이 Test였다면 경로는 "C:\Users\Test\Documents\NGM6\Script\1.ngs"입니다. 파일을 배포한 컴퓨터 이름이 NGM이면 경로는 "C:\Users\NGM\Documents\NGM6\Script\1.ngs"가 되어야 합니다. 하지만, Test 경로로 그대로 배포하면 다른 컴퓨터에서는 경로가 달라서 파일을 찾을 수 없게됩니다.

    S8lSnwb.jpg

     

     

    사용자에게 직접 스크립트를 선택하게 하려면 아래와 같이 파일 선택 버튼을 추가하고, 추가적인 코딩을 넣어야 합니다.

    b92lYTa.jpg

     

     

    위 버튼의 이벤트 핸들러에 아래와 같이 코딩을 해줍니다.

    • 이벤트 핸들러를 만들려면 디자인 모드에서 버튼을 더블 클릭하세요. 이벤트 핸들러가 자동으로 만들어지고, 코드 보기로 전환됩니다.
    private void btnSelectScript_Click(object sender, EventArgs e)
    {
        OpenFileDialog openFileDialog = new OpenFileDialog();
    
        if (openFileDialog.ShowDialog() == DialogResult.OK)
            this.script1.SelectScript = openFileDialog.FileName;
    }

     

    파일 선택 버튼을 클릭하면 직접 스크립트를 선택할 수 있습니다.

    6hYdpU0.jpg

     

     

    만약, 사용자가 선택할 수 없도록 만들고 싶으면 C드라이브나 D드라이와 같이 컴퓨터 이름이 없는 위치에 스크립트를 두고 선택하세요. 그러면, 다른 컴퓨터 또는 다른 사람에게 배포할 때 동일한 폴더에 스크립트를 복사해야 합니다. 참고로, D드라이브가 없는 컴퓨터도 있으니 C드라이브를 사용하는게 가장 좋은 선택입니다. 하지만, 배포할 때 스크립트와 이미지를 리소스로 같이 배포한다면 디자이너 플레이어와 스크립트를 같이 배포할 수 있는 장점이 있습니다.

     

    완성된 스크립트와 이미지 폴더를 프로젝트에 복사하세요.

    jzEDWyg.jpg

     

     

    솔루션 탐색기에서 이미지와 스크립트를 모두 선택한 후 우클릭하세요. 그리고, 콘텍스트 메뉴에서 속성을 클릭하세요.

    oib3RpG.jpg

     

     

    빌드 작업출력 디렉터리에 복사를 아래 그림과 같이 변경하세요. 이렇게 하고 컴파일하면 자동으로 Debug 또는 Release 폴더에 이미지와 스크립트가 복사됩니다.

    t111nyM.jpg

     

     

    이제 상대 경로를 수정해야 하는데요. 아래와 같이 코드 2줄을 추가하세요.

    • this.ScriptDirectory = System.IO.Path.Combine(Application.StartupPath, "Script");
    • this.ImageDirectory = System.IO.Path.Combine(Application.StartupPath, "Image");
        public partial class Form1 : Designer.ComponentDefault.MainView
        {
            public Form1()
            {
                InitializeComponent();
    
                this.ScriptDirectory = System.IO.Path.Combine(Application.StartupPath, "Script");
                this.ImageDirectory = System.IO.Path.Combine(Application.StartupPath, "Image");
            }

     

    실행할 스크립트를 사용자가 직접 선택하는게 아닌 고정 시키려면 아래와 같이 한줄을 더 추가 해주세요. 마지막에 실행할 스크립트 파일명을 적어주면 됩니다.

    • this.script1.SelectScript = System.IO.Path.Combine(Application.StartupPath, "Script", "1.ngs");
            public Form1()
            {
                InitializeComponent();
    
                this.ScriptDirectory = System.IO.Path.Combine(Application.StartupPath, "Script");
                this.ImageDirectory = System.IO.Path.Combine(Application.StartupPath, "Image");
                this.script1.SelectScript = System.IO.Path.Combine(Application.StartupPath, "Script", "1.ngs");
            }

     

    이제 프로젝트를 컴파일하세요. 솔루션 탐색기에서 프로젝트를 선택하고 우클릭하세요. 다시 빌드를 클릭하세요.

    KSaABqc.jpg

     

     

    다시 프로젝트에서 우클릭 후 하단에 "파일 탐색기에서 폴더 열기"를 클릭하세요. bin 폴더에 들어가보면 Debug 폴더가 보입니다. 이 폴더를 압축해서 다른 컴퓨터에 보내면 됩니다. 참고로, 아래와 같이 Release로 변경하면 bin 폴더안에 Release가 생기고 이 폴더를 압축해서 사용하면 됩니다.

    Bt0hkk2.jpg

     

     

    개발자에게 후원하기

    MGtdv7r.png

     

    추천, 구독, 홍보 꼭~ 부탁드립니다.

    여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~

    감사합니다~

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천0 비추천0

    댓글목록

    등록된 댓글이 없습니다.