Форум программистов, компьютерный форум, киберфорум
Наши страницы

Matlab

Войти
Регистрация
Восстановить пароль
 
 
lomt
447 / 273 / 13
Регистрация: 13.11.2012
Сообщений: 589
Записей в блоге: 1
#1

Создание exe файла в MatLab - Matlab

01.07.2013, 15:28. Просмотров 76688. Ответов 140
Метки нет (Все метки)

Много раз народ спрашивал, как сделать exe файл в MatLab и возможно ли запустить свою программу, не используя сам MatLab. Привожу простенький метод создания экзешников.

Для теста я взял программу подсчёта полож/отриц/нулей среди задаваемых чисел с простейшим интерфейсом.
Создание exe файла в MatLab)
Оформляем наш код как функцию и запускаем deploytool, во всплывающем окне выбираем стандартное приложение Windows и вводим название нашего проекта.
Создание exe файла в MatLab
Открывается наш проект. Здесь в поле main мы располагаем наш главный файл(функцию). В поле
вспомогательных файлов помещаются файлы с данными, к которым обращается программа, GUI файлы, функции, к которым в течение работы обращается главная программа или функции, не находящиеся в нужной директории, а также коды на C/C++, которые вы хотите скомпилировать и использовать в дальнейшем в вашем приложении. В нашем случаи есть только исполняющий файл-функция, поэтому это поле остаётся пустым.
Создание exe файла в MatLab
В разделе Package к стандартным создаваемым файлам добавляем установку MCR (MATLAB Component Runtime). Это полный набор dll-библиотек для поддержки работы языка MatLab. Для этого жмём на Add MCR и выбираем встраивание библиотек в пакет.
Создание exe файла в MatLab
Теперь создаём наш составленный проект, нажимая на кнопку Build, а потом создаем пакет вспомогательных файлов, нажимая на кнопку Package. После этого в исходной папке появится файл с разрешением .prj и установочный экзешник для библиотек.
Создание exe файла в MatLab
Запускаем экзешник и после разархивирования устанавливаем MCR.
Создание exe файла в MatLab
Теперь наш экзешник окончательно готов. Для теста закрываем MatLab и запускаем программу.
Создание exe файла в MatLab
Как видно, всё прекрасно работает. Добавлю, что созданный нами exe можно запускать и на компьютерах, где не установлен сам MatLab. Для этого требуется лишь установить MCR перед запуском программы. (установочный файл находится в папке проекта).
Код файл-функции:
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
function  Proga
clear all;close all;
name_peremennie={'Переменная 1:','Переменная 2:','Переменная 3:','Переменная 4:'};
peremennie_initial={'0','0','0','0'};
options.Resize='on';
options.WindowStyle='normal';
options.Interpreter='none';
Peremennie=inputdlg(name_peremennie,'Ввод переменных',1,peremennie_initial,options);
Pos_num=0;
Neg_num=0;
Zero_num=0;
for i=1:length(Peremennie)
    A(i)=str2num(Peremennie{i});
    if A(i)==0
        Zero_num=Zero_num+1;
    else
        if A(i)>0
          Pos_num=Pos_num+1;
        else
           Neg_num=Neg_num+1;
        end
    end
end
Answer1=cat(2,'Количество положительных переменных равно ',num2str(Pos_num));
Answer2=cat(2,'Количество отрицательный ',num2str(Neg_num));
Answer3=cat(2,'Количество нулей ',num2str(Zero_num));
msgbox({Answer1,Answer2,Answer3},'Ответ');
end
9
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.07.2013, 15:28
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Создание exe файла в MatLab (Matlab):

Matlab gui открытие exe файла в программе - Matlab
Такая роблема, когда откраваешь в .m файле то он запускает эти exe, но когда этот файл сам в exe он их уже не открывает, они в одной папке,...

Создание exe файла - Matlab
Подскажите,пожалуйста,как мне из созданного в Guide приложения создать ехе? пробую так получаю такую ошибку HttpSendRequest...

Создание exe-файла из GUI (GUIDE) приложения - Matlab
В архиве форума не нашел ответ на вопрос о принципиальной возможности решения этой задачи. Заранее благодарен мнению экспертов по данной...

Exe файл matlab - Matlab
Добрый вечер. На 32 разрядной системе (WinXP) стоит Matlab R2011b и студия 2010. на матлабе написал функцию, через mcr(7.16) все подцепил к...

Открытие файлов .exe в matlab - Matlab
можно ли открыть файл ехе в матлабе так, чтобы он показал код этой программы на своём языке? пример - я пишу программу в Pascal ABC.NET,...

Matlab-ский exe-шник не запускается - Matlab
Всем привет! Просили с учёбой помочь и принесли программу сделанную в Matlab. Однако при запуске она начинает требовать libmmfile.dll....

140
MurenaVrn
0 / 0 / 0
Регистрация: 16.06.2013
Сообщений: 19
03.07.2013, 08:05 #16
не, эт моя такое выдает, на этапе работы функции mcc. У меня несколько форм, оформленных на GUIDE, собранных в отдельную папку (файлы .fig и .m), в качестве главной функции указываю m-файл главной формы. Остальные функции и формы, лежащие в основном каталоге и нескольких каталогах, указываю как подчиненные. Усё, нажимаю build, процесс пошёл. Но после компиляции нескольких функций, выдает ошибку.
0
tvoretsmira
455 / 445 / 56
Регистрация: 28.05.2013
Сообщений: 699
03.07.2013, 10:31 #17
Возможно эта проблема: http://www.mathworks.com/support/sol...9PX%2520%25209
Возможно проблема с наличием пробелов в путях к файлам или в самих файлах. Тяжело сказать не имея исходников.
0
R2D2
873 / 784 / 106
Регистрация: 23.11.2012
Сообщений: 2,305
03.07.2013, 10:59 #18
Ребят, а может кто то скинуть скомпиленный ЕХЕ-шник. А то матлаба нету.
0
lomt
447 / 273 / 13
Регистрация: 13.11.2012
Сообщений: 589
Записей в блоге: 1
03.07.2013, 11:39  [ТС] #19
Вот экзешник с моей прогай
1
Вложения
Тип файла: rar Proga.rar (110.5 Кб, 179 просмотров)
R2D2
873 / 784 / 106
Регистрация: 23.11.2012
Сообщений: 2,305
03.07.2013, 12:27 #20
Хм... Пишет "Программа не запускается". И все тут(
0
lomt
447 / 273 / 13
Регистрация: 13.11.2012
Сообщений: 589
Записей в блоге: 1
03.07.2013, 12:42  [ТС] #21
MCR стоит?
0
Зосима
4888 / 3257 / 308
Регистрация: 02.04.2012
Сообщений: 6,190
Записей в блоге: 15
Завершенные тесты: 1
03.07.2013, 12:42 #22
Dimka_rtf, аналогичная фигня

Добавлено через 10 секунд
lomt, стоит
0
lomt
447 / 273 / 13
Регистрация: 13.11.2012
Сообщений: 589
Записей в блоге: 1
03.07.2013, 12:44  [ТС] #23
хмммм, надо разобраться всё-таки с этим глюком
0
tvoretsmira
455 / 445 / 56
Регистрация: 28.05.2013
Сообщений: 699
03.07.2013, 12:46 #24
Если скомпилировано на win32, то на win64 не пойдёт, не говоря о Linux.
0
Зосима
4888 / 3257 / 308
Регистрация: 02.04.2012
Сообщений: 6,190
Записей в блоге: 15
Завершенные тесты: 1
03.07.2013, 12:52 #25

Не по теме:

бггг столько проблем из-за такой маненькой программки



Добавлено через 6 минут
tvoretsmira, тут хотя бы допилить, чтоб на win32 запускалось
0
tvoretsmira
455 / 445 / 56
Регистрация: 28.05.2013
Сообщений: 699
03.07.2013, 12:57 #26
Для новых версий матлаба MCRinstaller можно бесплатно скачать и так же бесплатно установить с официального сайта http://www.mathworks.com/products/compiler/mcr/
А для старой версии матлаба R2011b MCR 7.16 надо прилагать к откомпилированому файлу. Откомпилированый файл не запустится если будет установлена не та версия Matlab Compiler Runtime.
1
Зосима
4888 / 3257 / 308
Регистрация: 02.04.2012
Сообщений: 6,190
Записей в блоге: 15
Завершенные тесты: 1
03.07.2013, 14:25 #27
tvoretsmira, а если я откомпилирую с версией 7.10 и установлю MRC с сайта - программа запустится?
0
tvoretsmira
455 / 445 / 56
Регистрация: 28.05.2013
Сообщений: 699
03.07.2013, 16:12 #28
Нет
0
lomt
447 / 273 / 13
Регистрация: 13.11.2012
Сообщений: 589
Записей в блоге: 1
03.07.2013, 16:17  [ТС] #29
Как и сказано вот здесь: http://www.mathworks.com/matlabcentral/newsreader/view_thread/249680
Для нормальной работы нужно полное соотвествие, причём что более старые, что более свежие версии не важно
0
MurenaVrn
0 / 0 / 0
Регистрация: 16.06.2013
Сообщений: 19
03.07.2013, 19:57 #30
Переставила MCRinstaller, приложение от lomt, компилируется и работает без проблем, моё всё равно не работает, точнее видимо не работают какие то конкретные функции, графические функции вывода работают, а вот расчёт нет
0
03.07.2013, 19:57
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.07.2013, 19:57
Привет! Вот еще темы с ответами:

Matlab создание графиков - Matlab
задал в matlab переменные (картинка №1), прописал в m-file код уравнений, что нужно посчитать (картинка 2). Но вот не совсем пойму что...

создание функции в matlab - Matlab
Создал функцию, сохранили её. function = may_diff(x0,xk,dx,e,dell) x=x0:dx:xk; if e==1 Er=randn(size(x))/dell; % рандомный...

Создание диаграмм в Matlab - Matlab
Помогите, пожалуйста, построить совмещенную диаграмму, изображение которой приложено к сообщению. Сколько не пыталась создать подобный вид,...

Создание матриц matlab - Matlab
Здравствуйте! Я новичок в матлабе, пытаюсь понять, можно ли сгенерировать матрицу определенного размера для пользователя, заполненную к...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
30
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru