2012-05-12 2 views
3

제가 무엇을하려고하는지 설명하겠습니다. Matlab에서 코딩 된 응용 프로그램이 있으며 Matlab 사용자와 Matlab 사용자가 아닌 사용자 모두에게 제공하고 싶습니다. 그러면 다음과 같이 말할 수 있습니다. 그냥 컴파일하고 실행 파일을 배포하십시오. 벌금.MATLAB 환경 내외에서 컴파일 된 코드를 실행할 수 있습니까?

배포 된 응용 프로그램은 할 수있는 일에 제한이 있으며 (매우 중요하게는 다른 M- 파일을 실행할 수 없습니다) Matlab 사용자가 Matlab 내에서 배포 된 응용 프로그램을 시작할 수 있도록하고 싶습니다. 이 녀석들을 위해 이러한 고급 기능을 제공하십시오. 그럼 가능합니까?

물론 두 가지 버전을 제공 할 수 있습니다. .exe와 .m하지만이 작업은 실제로 우아하지 않고 아마도이 작업을 수행하는 데 유용한 트릭입니다. 아이디어가 있으십니까?

+0

나는 뭔가를 이해할 수 없다 : 앱이 의도 한 것은 무엇인가? 내 말은 .exe 파일에 배포 할 수없는 작업을 수행하려는 경우 사실상 두 가지 다른 응용 프로그램 (실제로는 버전이 아님)이 있어야한다는 것입니다. 당신이 정말로 묻고있는 것을 보여줄 수 있습니까? – eulerleibniz

답변

0

Matlab에는 이와 같은 기능이 없으므로 Matlab이 설치되어 있는지 여부를 감지하는 데 운영 체제에 따라 크게 다릅니다.

+0

내장 라이브러리를 호출하고 동일한 라이브러리를 호출하는 M 파일을 갖는 실행 파일을 갖는 것은 어떨까요? 사용자는 자신의 필요에 따라 M 또는 실행 파일을 시작합니다. –

1

배포 된 응용 프로그램에서 eval을 사용할 수 있습니다. 또한 텍스트이기 때문에 .m 파일을 읽을 수 있습니다. 그래서, 파일을 읽고 라인별로 평가하십시오. 컴파일 된 Matlab 프로그램에서 3d 파티 스크립트 .m 파일을 사용할 수 있습니다.

이러한 방식으로 함수를 사용할 수 없으며 스크립트 만 사용할 수 있습니다.

제가 확신 할 수없는 유일한 사실은 그것이 합법적인지 여부입니다. 보장 할 수는 없지만 직접 Mathworks에 연락해야합니다.

+0

당신이 이것을 할 수 있을지 확신하지 못합니다. Loren 블로그보기 : http://blogs.mathworks.com/loren/2008/06/19/writing-deployable-code/#11 –

+0

@Andrey - Matlab 스크립트는 작동하지만 Matlab 기능은 작동합니까? 전화를 걸기 전에 정의해야하기 때문에 줄 단위로 평가할 수 없습니다. 이 작업을 수행 할 수도 있지만 코드가 많이 필요할 것입니다. 이 작업을 수행하기 위해 자신 만의 Matlab 파서를 작성할 필요가 없습니까? – grantnz

+0

@ grantnz, 맞아, 나는 대답을 –

관련 문제