你好stackoverflow社区,
我目前正试图创建一个Matlab应用程序作为一个独立的应用程序。在Matlab中,程序通过GUI运行得很好,但是,一旦我在桌面上安装应用程序并运行它,我就会得到以下错误消息输出到命令窗口:
- 使用dicom_getFileDetails出错(第14行)无法加载文件"RE.#_STR_IMG.REGISTRATION.dcm".
- dicominfo错误(第55行)
- Apply_Registration/applyregistrationbuttonpushing错误(第64行)
- appdesigner.internal.service.AppManagementService/tryCallback出错(第333行)
- 在matlab.apps.AppBase>@(源,事件)中出错tryCallback(appdesigner.internal.service.AppManagementService.instance(),app,callback, require第七数据,事件)(第35行)
- 使用matlab.ui.control.internal.controller.ComponentController/executeUserCallback出错(第335行)计算按钮PrivateButtonPushedFcn时出错。
代码:1 + 2)
% Button pushed function: OpenRegistrationFileButton
function OpenRegistrationFileButtonPushed(app, event)
% Open registration file
app.File_registrationFile = uigetfile;
end
reginfo = dicominfo(app.File_registrationFile);
作为独立应用程序运行时会出现什么问题?
Matlab运行时编译器匹配我的Matlab版本。不幸的是,我缺乏这方面的专业知识。
任何帮助将非常感激!
您目前只输出uigetfile
(docs)的文件名,因此后续使用该文件时假设它与执行应用程序在同一文件夹中。这可能不是情况,因此错误的文件无法加载(因为它不存在)。
你只需要更明确,获取路径,并引用完整的文件路径,而不仅仅是名称
[file,path] = uigetfile;
app.File_registrationFile = fullfile( path, file );