티스토리 뷰


이번 포스팅에서는 프로그램적으로 데이터 플러그인을 설치하는 방법에 대해서 알아보도록 하겠습니다. 

디아뎀은 스크립트 언어를 지원을 해서 디아뎀의 모든 기능을 자동화 할 수 있습니다. DIAdem의 스크립트(Script) 탭을 통해서 스크립트를 개발/실행 하실 수 있습니다. 



이전에 데이터 플러그인을 DIAdem에서 사용하는 방법을 설명을 드렸습니다. 하지만 데이터 플러그인을 사용하기 위해서는 데이터 플러그인이 설치되어 있어야 합니다


플러그인 사용방법을 확인 하실려면 아래의 링크를 참조하세요.

2014/08/07 - [National Instruments/DIAdem] - 디아뎀 DataPlugin(데이터 플러그인) 사용방법 알기


기본적으로 DIAdem에 플러그인이 설치되어 있는 것도 있지만, 추가적으로 설치를 할려면 아래의 링크를 통해서 검색하고 설치를 하셔야 합니다.

플러그인 찾으러가기 : http://www.ni.com/dataplugins




스크립트로 DIAdem의 기능을 구현하면 데이터 후처리에 대한 자동화가 가능하기 때문에 데이터 플러그인 역시 자동으로 설치가 되면 스크립트를 사용하는 엔드 유저(End User) 입장에서는 훨씬 사용하기가 편리해 집니다. 따라서 이러한 부분을 스크립트에 많이 적용을 시키고 있습니다. 


설치가 가능한 디아뎀의 데이터 플러그인은 타입을 2개로 구분할 수 있는데, 그중 하나는 uri 타입이고 다른 타입은 exe 타입입니다.

둘다 모두 확장자가 uri이냐, exe이냐로 구분을 할 수 있습니다.


1) uri 타입 설치 방법


uri 타입은 디아뎀의 기존 함수를 통해 자동으로 설치할 수 있습니다. Navigator 클래스에 있는 RegisterDataPlugin 함수를 사용하면 됩니다. 

이 함수를 좀더 살펴 보면 아래와 같습니다.


아래의 빨간색 사각형을 살펴보면 예제를 확인할 수가 있는데, 설치가 제대로 되면 "DataPlugin successfully registered" 메시지를, 설치에 에러가 발생을 하면 "Error when registering DataPlugin" 에러 메시지를 확인 할 수 있습니다. 



좀더 응용을 해보자면, 필터가 설치가 되어있는지를 판단한뒤에 설치를 하게끔 할 수도 있습니다. 관련 코드는 아래와 같습니다.

' 디아뎀에 데이터 플러그인이 없으면 등록을 합니다. 

' uri 타입은 Navigator.RegisterDataPlugin를 이용하여 아래와 같이 등록이 가능합니다. 

If  Not FileFilterExist("MME Import") Then

  regResult = Navigator.RegisterDataPlugin(sPathDocuments&"MME Import.uri",True)

End If


2) exe 타입 설치 방법


exe 파일은 디아뎀의 스크립트에서 따로 설치할 수 있는 함수를 제공하지 않습니다. 따라서 exe 파일을 임의로 실행시킬 수 있는 임의의 외부 함수가 필요합니다. exe 파일을 실행시키기 위한 가장 적합한 객체와 함수는 WSCript.shell 오브젝트를 활용하는 것입니다.


WScript.shell은 자신의 PC의 특정 파일을 실행시키거나, Registry와 관련된 처리를 하거나, System 폴더등에 접근을 할 때 사용이 되는 스크립트용 개체입니다. 상세한 내용은 아래의 링크를 살펴보시면 됩니다. 



exe 파일을 실행하기 위해서는 WScrpt.shell을 생성하고 run 메소드를 호출하면 됩니다. 

' 하지만 exe 타입은 따로 설치를 해줘야 합니다.

' 따라서 프로그램 상에서 직접 실행을 하게끔 Shell Object를 사용할 수 있습니다. 

set oShell = CreateObject ("WSCript.shell") 

oShell.Run(CurrentScriptPath & "mdf3.exe")  



댓글