본문 바로가기
이미지 매크로

C# .NET 매크로 프로그램 만들기. (닷넷 프로젝트를 관리자 권한으로 실행하기)

by 업무자동화 2024. 6. 26.
반응형

유료 매크로 프로그램 다운로드

http://ngmsoftware.com/bbs/board.php?bo_table=product_review 

 

엔지엠소프트웨어

엔지엠 매크로는 복잡한 반복작업을 자동화할 수 있습니다. PC 게임, 모바일 게임을 최적으로 지원하며 모든 PC 프로그램 및 업무에 적용할 수 있습니다.

www.ngmsoftware.com

#매크로 #메크로 #매크로프로그램 #엔지엠소프트웨어 #엔지엠에디터 #엔지엠플레이어 #비활성매크로 #하드웨어매크로 #기계식매크로 #마우스광클릭 #키보드매크로 #이미지서치 #이미지매치 #블로그 #카페 #인스타그램 #유튜브 #소셜네트워크 #카카오톡 #텔레그램 #자동화

 

 

  • 엔지엠 커뮤니티 월 이용료: 4,500원, 1년 이용료: 55,000원 (전체 기능의 80프로)
  • 엔지엠 얼티밋 월 이용료: 6,500원, 1년 이용료: 77,000원 (전체 기능의 90프로)
  • 엔지엠 엔터프라이즈 월 이용료: 9,200원, 1년 이용료: 110,000원 (전체 기능 사용)

 

안녕하세요. 엔지엠소프트웨어입니다. 차세대 엔지엠 매크로는 기존 닷넷 프레임워크가 아닌 닷넷(구 닷넷 코어)으로 개발하고 있습니다. 이유는 마이크로소프트에서 더이상 닷넷 프레임워크를 지원하지 않기도 하고, 앞으로 적용할 인공지능 및 딥러닝에 대한 지원이 닷넷으로만 이루어지기 때문입니다. 레거시 딥러닝은 아직도 닷넷 프레임워크를 지원하고 있지만 앞으로 나올 인공지능 관련 기술이나 딥러닝은 닷넷만 지원합니다.

※ 닷넷 프레임워크 최신 버전인 4.8.1 이후로 업데이트가 없을거라는 기사를 본듯한데요. 다시 찾으려니 기사가 안보이네요.

 

 

마이크로소프트의 2022년 5월 17일 공식 지원 정책 기사를 보면 다음과 같은 핵심 내용들을 확인할 수 있습니다. 엔지엠 매크로는 현재 2가지 버전의 닷넷 프레임워크를 사용하고 있습니다. 4.6.2와 4.8.1인데요. 마이크로소프트 라이프사이클에 정리되어 있는 내용입니다.

  • .NET Framework 4.6.2는 2027년 1월 12일까지 지원될 예정입니다. .NET Framework 3.5 서비스팩 1을 제외한 이보다 낮은 모든 .NET Framework 버전은 2023년 6월 15일 현재 모두 지원이 중단된 상태이며, 보안 업데이트가 전혀 제공되지 않으므로 보안 위협에 취약합니다.
  • 적어도 .NET Framework 4.7 이상으로 업그레이드하시면 상당히 오랜 기간 동안 EOS를 걱정하지 않으셔도 됩니다.
  • 예외적으로 .NET Framework 3.5 서비스팩 1에 대해서는 2029년 1월 9일까지 지원될 예정입니다. 그러나 EOS 일정에 영향을 받지 않으려면, .NET Framework 4.8 이상으로 업그레이드하거나, 통합 .NET으로 마이그레이션하는 것을 고려하는 것을 권장합니다.

 

엔지엠 매크로 6의 최신 버전은 닷넷 4.8.1이기 때문에 문제는 없습니다. 하지만, 딥러닝 지원이 문제가 되어서 닷넷으로 마이그레이션 작업을 진행하고 있습니다. 사실, 마이그레이션으로 몇차례 테스트를 해봤지만 정상적으로 마이그레이션이 이루어지지 않아서 결국은 처음부터 다시 만들고 있는 중입니다. 그래서, 이와 관련해서 유튜브도 만들고 관련 글들도 홈페이지에 꾸준히 업데이트하고 있습니다.

 

우선, 프로그램이 관리자 권한으로 실행되는지 체크하려면 아래와 같이 롤을 확인할 수 있습니다.

public bool IsAdministrator
{
    get
    {
        WindowsIdentity identity = WindowsIdentity.GetCurrent();

        if (null != identity)
        {
            WindowsPrincipal principal = new WindowsPrincipal(identity);
            return principal.IsInRole(WindowsBuiltInRole.Administrator);
        }

        return false;
    }
}

 

하지만, 이 코드로는 프로그램을 관리자 권한으로 실행할 수 없죠? 그래서, Program.cs 파일의 진입점에서 관리자 권한인지 체크한 후 자기 자신을 프로세스로 실행하도록 처리해야 합니다. 이렇게 하면 몇가지 복잡한 문제들을 해결해야 합니다. 특히나 엔지엠 매크로와 같이 커멘드 입력으로 실행하거나 연결된 파일을 더블 클릭해서 프로그램을 실행하는 경우등등... 해결해야 할 것들이 있습니다.

 

만약, 쉽게 처리하고 싶다면 아래와 같이 매니페스트 파일에서 롤을 변경해주면 됩니다. 다만, 이렇게 하면 관리자 권한으로 실행하고 싶지 않을 때도 관리자로 실행되기 때문에 선택권이 없게 됩니다. 매크로 프로그램은 다른 프로그램을 제어해야 하기 때문에 권한이 관리자여야 합니다. 그렇기 때문에 무조건 관리자 권한으로 실행되어야 해서 딱히 문제가 되지는 않습니다.

 

 

이제 프로그램을 실행 해보면, UAC 보안 경고창이 표시되는걸 확인할 수 있습니다.

 

 

[ 각종 자동화 매크로 및 RPA 프로그램 제작 해드립니다. ]

[ 초보자도 쉽게 따라할 수 있는 기초 학습 강좌 보기 ]

 

원본 글 보기

http://ngmsoftware.com/bbs/board.php?bo_table=tip_and_tech 

 

엔지엠소프트웨어

엔지엠 매크로는 복잡한 반복작업을 자동화할 수 있습니다. PC 게임, 모바일 게임을 최적으로 지원하며 모든 PC 프로그램 및 업무에 적용할 수 있습니다.

www.ngmsoftware.com

 

반응형

댓글