Add-in

애드인크리에이터를사용하면 RoboDK 애드인 패키지를 쉽게만들고수정할수있습니다. Add-in Creator 도구는 Add-in Manager의일부입니다.

도구-애드인관리자를선택한다음애드인관리자하단의애드인 만들기 버튼을클릭하면애드인크리에이터가열립니다.

Add ins - 영상 12

Add-in Creator 마법사를열면다음옵션중에서선택할수있습니다:

새 Add-in처음부터 새로 만들기: 이렇게하면새 RoboDK 패키지(RDKP 파일)가생성됩니다.

폴더 또는 레거시 애플리케이션에서 추가 기능 만들기: 이경우추가기능의파일이있는폴더경로를지정할수있습니다. 패키지 생성 옵션을사용하면 RoboDK 패키지(RDKP 파일)를만들지않고도추가기능이있는폴더에서직접추가기능을편집할수있습니다.

기존 Add-in 수정: 기존 RoboDK 패키지를열어새버전을수정및생성합니다.

Add-in 생성 또는 편집하기

유형, 이름, 작성자정보등의기본정보를입력하여새 Add-in을쉽게만들수있습니다.

Add ins - 영상 13

Add-on Creator 창에서필수필드는굵은글씨로표시되어있습니다. 총 5개가있습니다:

1.유형: 유형: 앱, 로봇드라이버, 언어등과같은 Add-in의유형입니다.

2.이름: Add-in 이름입니다.

3.고유 식별자: 이특정 Add-on에속하는고유식별자입니다. 이필드옆의확인란을선택하면편집모드를활성화하고라틴문자, 숫자및빼기기호, 점, 밑줄과같은추가문자를포함할수있는임의의식별자를설정할수있습니다.

4.버전: 버전: 버전은시맨틱버전관리형식(major.minor.patch)으로작성해야합니다.

5.개정: Add-in의변경횟수이며, 1 이상의숫자값을사용합니다.

나머지필드는선택사항이지만 Add-in에대한보다정확한설명을입력할수있습니다:

6.작성자: 작성자: 작성자의이름과성또는회사또는팀이름(작성자가여러명인경우)을입력합니다.

7.회사: 회사: 회사이름입니다.

8.언어: Add-in에서사용되는언어입니다. IETF BCP 47 표준의모든언어가나열됩니다.

9.콘텐츠 상태: Add-in의상태(예: 최종, 내부 테스트, 베타 등)를표시합니다.

10.설명: Add-in에대한간략한설명입니다.

11.수정한 사람: 이필드는다른작성자의 Add-in을수정한사람이수정한작성자로언급되기를원할때사용할수있습니다.

12.생성됨: 생성됨: Add-in의첫번째버전이생성된날짜(자동으로입력됨).

13.수정됨: 수정된날짜: Add-in의수정날짜(자동으로입력됨).

14.이메일: 영업, 지원또는피드백을위한이메일주소입니다.

15.웹사이트: 회사 웹사이트(Add-in 개발자).

16.문서 링크: Add-in 문서 링크입니다.

17.리포지토리 링크: 오픈소스 Add-in의경우해당 Add-in이있는 GitHub 리포지토리또는기타공개리포지토리로연결되는링크입니다.

18.키워드: 키워드: Add-in 마켓플레이스에서 Add-in을쉽게검색할수있는키워드(태그) 목록입니다.

Add-in 종속성

Add-in 종속성페이지에서는 Add-in(또는그안의특정파일)이설치되기전에충족되어야하는조건을정의할수있습니다. 조건이충족되지않으면영향을받는범위(전체패키지또는단일파일)는설치과정에서건너뜁니다.

Add ins - 영상 14

페이지상단의버튼을사용하여항목을관리합니다:

추가: 기본값을가진새종속성행을만듭니다. 행의각셀을클릭하여구성합니다.

제거: 현재선택된행을삭제합니다. 먼저행을클릭하여선택해야합니다.

각종속성행에는 5개의열이있습니다. 회색기울임꼴로표시된필드는설정되지않았거나선택사항인값을나타냅니다.

범위: 패키지 vs 에셋

패키지: 확인이실패하면 Add-in 전체가설치되지않습니다. 요구사항이충족되지않으면 Add-in이전혀작동할수없는경우에사용합니다.

에셋: 확인이실패하면식별자/파일이름열에지정된특정파일만건너뜁니다. Add-in의나머지부분은정상적으로설치됩니다.

에셋의 종속성 그룹

범위가에셋인종속성의경우, 이름열은특별한역할을합니다: 종속성그룹을정의합니다. 이름이같은여러행은동일한에셋파일에대해순서대로평가됩니다.

이는파일이서로다른조건에서설치될수있는경우에유용합니다. 예를들어 Windows용과 Linux용으로서로다른버전의파일을제공하는경우입니다. 각그룹은전체로평가되며, 그룹내어느한행이라도통과하면해당에셋이포함됩니다.

값 지정하기

값을입력하는방법은종속성유형에따라다릅니다:

버전 확인: 수학적구간표기법을사용합니다(버전 범위 참조).

파일 생성/파일 수정: 세가지날짜/시간모드중에서선택합니다(날짜 및 시간 값 참조).

외모든유형: 값필드는편집시두가지옵션이있는드롭다운을제공합니다:

정확한 값: 시스템값이입력한값과일치하면확인이통과됩니다(대소문자를구분하지않음).

정규식: 시스템값이제공한패턴과일치하면확인이통과됩니다.

버전 범위

버전값은표준수학적구간표기법을사용합니다:

대괄호 [ 또는 ]는경계버전이포함됨을의미합니다.

소괄호 ( 또는 )는경계버전이제외됨을의미합니다.

상한또는하한을생략하면해당방향에제한이없음을의미합니다.

날짜 및 시간 값

파일날짜/시간확인에는범위표기법을사용하지않습니다.

대신다음세가지모드중하나를선택합니다:

정확히: 파일의타임스탬프가지정된날짜/시간과정확히일치해야합니다.

이전: 파일의타임스탬프가지정된날짜/시간보다이전이어야합니다.

이후: 파일의타임스탬프가지정된날짜/시간보다이후여야합니다.

종속성 유형

유형

설명

없음

확인이수행되지않습니다. 이종속성은항상충족된것으로간주됩니다. 자리표시자로유용합니다.

버전확인

선택한소프트웨어구성요소의버전이지정된범위내에있는지확인합니다.

식별자: 확인할소프트웨어를선택합니다: RoboDK, Add-in Manager, Qt Framework, 또는운영체제.

값: 구간표기법을사용한버전범위(버전 범위 참조).

CPU 아키텍처

시스템의프로세서아키텍처가예상값과일치하는지확인합니다.

값: 예상되는 CPU 아키텍처문자열(예: x86_64, arm64, i386). 정확한일치또는정규식을지원합니다.

빌드아키텍처

실행중인빌드의전체애플리케이션바이너리인터페이스(ABI) 문자열을확인합니다. 이는 CPU 아키텍처보다더상세하며컴파일러, 데이터모델, 엔디안정보를포함합니다.

값: 예: x86_64-little_endian-lp64. 정확한일치또는정규식을지원합니다.

커널유형

기본 OS 커널식별자를확인합니다.

값: 예: winnt(Windows), linux, darwin(macOS). 정확한일치또는정규식을지원합니다.

시스템확인

OS 자체가보고하는운영체제제품이름을확인합니다.

값: 예: windows, ubuntu. 정확한일치또는정규식을지원합니다.

파일버전(Windows 전용)

Windows 실행파일또는라이브러리(.exe 또는 .dll)에포함된버전리소스를읽어값또는식과비교합니다.

값: 예: 1.4.3.3123. 정확한일치또는정규식을지원합니다.

파일생성

지정된파일의생성타임스탬프를확인합니다.

식별자/파일 이름: 검사할파일의경로.

값: 모드(정확히, 이전, 이후)를지정한날짜/시간(날짜 및 시간 값 참조).

파일수정

지정된파일의마지막수정타임스탬프를확인합니다.

식별자/파일 이름: 검사할파일의경로.

값: 모드(정확히, 이전, 이후)를지정한날짜/시간(날짜 및 시간 값 참조).

Add-in에 에셋 추가하기

Add-in에는하나이상의자산이포함되어야합니다. 에셋은 Add-in의동작을정의하는스크립트및아이콘일수있습니다.

Add ins - 영상 15

Add-in 자산페이지는세가지기능영역으로나뉩니다:

1.패키지아이콘선택영역.

2.파일트리영역.

3.파일콘텐츠의미리보기영역입니다.

이페이지의버튼과확인란의용도에대해설명합니다:

TargetPath: 대상 경로 버튼은현재아이콘파일의속성창을열고대상 속성을설정할수있습니다(패키지내부의해당 섹션 참조).

아이콘 변경... 버튼을사용하면현재패키지아이콘을새아이콘으로바꿀수있습니다.

아이콘 제거 버튼은패키지의현재아이콘을삭제하고생성중인패키지유형에해당하는기본아이콘을설정합니다.

폴더 버튼은파일트리의선택한브랜치에새하위폴더를만듭니다.

자산 추가... 버튼은파일트리의선택한분기에새파일을추가합니다.

제거 버튼은잠긴항목을제외하고선택한항목을파일트리에서제거합니다.

Python 패키지 만들기 확인란은프로젝트에 __init__.py 파일을추가하여 Python 인터프리터가프로젝트파일을외부에서로드가능한모듈로사용할수있도록합니다.

Python 스크립트는나중에확장자가 .pyc파일로컴파일하기위해마크업할수있습니다. 컴파일프로세스는마법사의다음페이지에표시됩니다.

Add ins - 영상 16

대상 경로 필드에서는각파일에대한대상 속성을설정할수있습니다. 원하는경로와변수이름을수동으로입력하거나대상경로에서기어버튼을클릭하면속성창을호출하여이작업을수행할수있습니다:

Add ins - 영상 17

파일속성대화상자에서는대상 속성의값을설정할수있으며사용가능한변수의편리한목록을제공합니다. 또한파일을배포할대상플랫폼의매개변수(OS 유형및버전, CPU 모델)를정의할수있습니다.

Add ins - 영상 18

Python 스크립트 컴파일하기

Add-in 에셋을추가할때하나이상의 Python 스크립트를선택했다면 Python 컴파일 페이지가열립니다.

Add ins - 영상 19

컴파일은사용가능한모든 Python 인터프리터가수행합니다. 사용가능한인터프리터및사용중인인터프리터목록은 Add-in 관리자설정창에서편집할수있습니다. 컴파일프로세스자체에는사용자개입이필요하지않으며, 페이지에자세한컴파일로그가표시되어잠재적인문제를파악할수있습니다.

앱 구성

앱구성페이지에서는 RoboDK 사용자인터페이스(메뉴및도구모음)에서동작또는스크립트가연결되는방식을사용자지정할수있습니다. 앱유형의 Add-in을만드는경우앱 구성 창이표시됩니다.

Add ins - 영상 20

이페이지의매개변수는 AppConfig.ini 파일의내용을정의합니다. 사용가능한키와값이 이 페이지에 나열되어있습니다. RoboDK에는각앱마다고유한메뉴와툴바가있습니다. 툴바의메뉴항목과버튼을앱용어로는액션이라고 합니다. 메뉴에서액션을표시하는조건과순서를정의하고핫키를할당할수있습니다.

기본매개변수세트에는다음이포함됩니다:

메뉴 이름: RoboDK 메인 메뉴에 있는 항목의 이름입니다.

표시: 이확인란을선택취소하면RoboDK의기본메뉴에메뉴가표시되지않습니다.

상위 메뉴: 앱하위메뉴가생성될주메뉴항목을선택하거나주를 선택하여새주메뉴항목을만듭니다.

우선순위: 이앱의메뉴가다른앱의메뉴와관련하여표시되는순서를결정하는우선순위를설정합니다(아래쪽이먼저표시됨).

도구 모음 영역: 앱툴바가위치할 RoboDK 메인창의위치(측면)를지정합니다.

도구 모음 배율: RoboDK 툴바아이콘의현재크기대비툴바아이콘의비율입니다.

명령: Add-in이활성화될때실행되는 RoboDK API 명령입니다.

AppConfig.ini 파일과같은폴더에있는각 Python 스크립트에대해액션이생성됩니다. 스크립트가보조적인성격의스크립트인경우 Visible 속성을사용하여이러한동작을억제할수있습니다.

작업속성은다음목록으로표시됩니다:

이름: 메뉴와도구모음에표시되는작업의이름입니다.

설명: 메뉴항목이나툴바버튼위에마우스포인터를가져갔을때표시되는툴팁텍스트입니다.

우선순위: 이앱의다른동작과관련하여동작이표시되는순서(아래쪽이먼저표시됨)입니다.

바로 가기

가시성

개발자 전용: 이작업은 RoboDK가개발자모드로전환된경우에만표시됩니다(Ctrl+Alt+Shift+G).

메뉴에 표시

도구 모음에 표시

확인 가능: 확인가능한작업을만들고, 확인가능한작업은숫자로그룹화할수도있습니다.

컨텍스트 메뉴 필터: 이작업이컨텍스트메뉴에추가될 RoboDK 트리의요소유형을정의합니다.

더블 클릭 필터: 더블클릭시이동작이호출될 RoboDK 트리의요소유형을정의합니다.

Add-in 패키지 만들기

RoboDK 패키지를 RDKP 파일로빌드하면 Add-in 생성이완료됩니다. 이것이 Add-in 생성의마지막단계입니다.

Add ins - 영상 21

패키지를만들기직전의마지막단계에서다음옵션을사용할수있습니다:

패키지 암호화: 위협탐지시스템을우회하여이메일로쉽게보낼수있도록파일을암호화합니다(Google 메일서비스는첨부파일에실행파일및 Python 스크립트의전송을직접금지합니다).

빌드 설치: Add-in 관리자가새로만든패키지를설치하도록합니다.

포함 폴더 열기: 패키지가생성된폴더를엽니다.