Error using ==> dicominfo in standalone exe

I am trying to create a program including different small applications to evaluate DICOM images. Within MatLab, everything works fine; in the standalone exe on Windows 7 an error occurs telling me
Error using ==> dicominfo > getFileDetails at 392
File "filename.dcm" not found.
Images:dicominfo:noFileOrMessagesFound
Here is an example of the code that seems to be processed thus far.
global pwd
pwd=uigetdir('C:\','Choose folder');
cd(pwd);
d=dir;
str={'App1.m','App2.m'};
[s,v]=listdlg('PromptString','Chosse app','ListString',str);
str=char(str(s));
for k=1:size(str,1)
if strfind(str(k,:),'App1.m')
App1.m
end
end
The subprogram "App1.m" looks like this:
global pwd
pwd=evalin('base','pwd');
FileName=(uigetfile('pwd\*.dcm','Choose DICOM file'));
info_FileName=dicominfo(FileName);
Pic=dicomread(info_FileName);
What am I missing and/or doing wrong? I've tried to set the path variable "pwd" as global but that doesn't seem to solve the problem. Thanks

 채택된 답변

Robert Cumming
Robert Cumming 2014년 6월 17일
편집: Robert Cumming 2014년 6월 18일

0 개 추천

You dont need pwd as a global.
Did you add the dicom libraries when you compiled your code?
if you think the filename is a problem - use fullfile, i.e:
[filename, pathname] = uigetfile ( '*.dcm', 'Choose DICOM file' )
% check that the user selected a file
if pathname ~= 0
filename = fullfile ( pathname, filename );*
info_FileName=dicominfo(FileName);
Pic=dicomread(info_FileName);
end
edit update the uigetfile command where originally the output arguments were typed the wrong way around - lesson for writing code and not testing....

댓글 수: 3

Pascal
Pascal 2014년 6월 17일
No I didn't. Can you give me a little tip how to include the libraries? I took a brief look on the net already but haven't found anything useful yet. Also, I will try to use the full path and name to adress the file.
Thank you
When compiling you add the files to your project - in deploytool click "Add Files" and select all the dicom libraries your code requires.
Of course, sorry, I misunderstood that. Unfortunately, including the necessary DICOM libraries didn't help.
But using fullfile actually is perfect. Just as a notification, it's
[filename, pathname] = uigetfile ( '*.dcm', 'Choose DICOM file' )
Thank you again for your quick response. Cheers

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 DICOM Format에 대해 자세히 알아보기

태그

질문:

2014년 6월 17일

편집:

2014년 6월 18일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by