Main Content

isdeployed

코드가 배포 모드와 MATLAB 모드 중 어떤 모드에서 실행 중인지 확인

설명

예제

x = isdeployed는 함수가 MATLAB® Runtime을 사용하여 배포 모드에서 실행 중이면 논리값 1(true)을 반환하고, MATLAB 세션에서 실행 중이면 0(false)을 반환합니다.

배포 모드에서 실행되는 애플리케이션은 MATLAB 함수와 데이터의 모음을 MATLAB Compiler™를 사용해서 소프트웨어 컴포넌트로 패키징한 것으로서, 이러한 소프트웨어 컴포넌트는 MATLAB Runtime을 사용해서 MATLAB 세션 외부에서 실행될 수 있습니다.

예제

모두 축소

which 함수를 사용하거나 ctfroot 상대 위치를 지정하면 패키징된 애플리케이션에 포함된 파일에 액세스할 수 있습니다.

예를 들어 extern_app.exe 같은 파일을 MATLAB Compiler 프로젝트에 추가합니다.

isdeployed를 사용하여, 코드가 배포 모드에서 실행되고 있는지 확인합니다. 그런 다음 which 함수를 사용하여 파일의 경로를 구합니다.

if isdeployed
    locate_externapp = which(fullfile('extern_app.exe'));
end
extern_app.exe 파일이 배포 가능한 아카이브 내에 존재하면 which 함수는 이 파일의 경로를 반환합니다.

자세한 내용은 Access Files in Packaged Applications 항목을 참조하십시오.

배포된 애플리케이션의 경로는 컴파일타임에 고정되므로 변경할 수 없습니다. 배포 후에는 isdeployed를 사용하여, 애플리케이션이 addpath 같은 경로 수정 함수의 사용을 시도하지 않도록 보장하십시오.

if ~(ismcc || isdeployed)
    addpath(mypath);
end

배포된 애플리케이션에서는 doc 함수를 사용하여 도움말 브라우저를 열 수 없습니다. 대신 도움말 쿼리를 MathWorks® 웹사이트로 리디렉션하십시오.

if ~isdeployed
    doc(mfile);
else 
   web('https://www.mathworks.com/support.html');
end

배포 불가능한 함수 edit에 대해 컴파일타임 경고를 표시하지 않으려면 isdeployed%#exclude 프라그마와 함께 사용합니다.

if ~isdeployed
    %#exclude edit
    edit('readme.txt');
end

해당 프라그마는 컴파일 중에 이 함수를 종속성 분석에서 제외합니다.

확장 기능

버전 내역

R2006a 이전에 개발됨