I am getting the following error:

Warning: Function C:\windows\system32\input.dll has the same name as a MATLAB
builtin. We suggest you rename the function to avoid a potential name conflict.
> In path at 110
In addpath at 87
In startup at 40
In matlabrc at 209
Warning: Function C:\windows\system32\version.dll has the same name as a MATLAB
builtin. We suggest you rename the function to avoid a potential name conflict.
> In path at 110
In addpath at 87
In startup at 40
In matlabrc at 209
Could you please help me resolve this?

7 commentaires

Rik
Rik le 19 Nov 2018
Why is the system32 folder in your Matlab path? I would strongly discourage that.
shiksha
shiksha le 19 Nov 2018
MATLAB is in the path:
C:\Program Files (x86)\MATLAB
Rik
Rik le 19 Nov 2018
Matlab has a list of folders where is looks for functions and files if you type a name, that is called the Matlab path. Apparently, you have added the system32 folder to that list.
What release are you using? You should be able to find the path settings in the preferences.
Are you using a 32 bit Matlab on a 64 bit Windows? If so, why? Is the release you're using so old there is not 64 bit version available?
shiksha
shiksha le 19 Nov 2018
I am using MATLAB 2012a version.
ya I am using the 32 bit version as some of the tools that I need are not compatible with the 64 bit version.
Rik
Rik le 19 Nov 2018
Did you modify your startup.m file to add system32 to your Matlab path?
shiksha
shiksha le 20 Nov 2018
no I have not modified it.
Its getting added every time I close and open the MATLAB
Rik
Rik le 20 Nov 2018
Can you share startup.m?

Connectez-vous pour commenter.

Réponses (1)

Rik
Rik le 19 Nov 2018

3 votes

The real fix is to prevent a function to add the system32 folder in the first place, but the code below is the temporary fix to remove the problematic folders. I made sure to only use base functions that already existed in R2012a.
% set this to false to actually apply the fix
% keep this to true to first display the folders you are about to remove
tryout=true;
if tryout,clc,end
%get all folders in your path
p=path;
%split to 1 folder per cell
p_list = regexp(p,';','split');
%remove any folder that starts with 'C:\Windows'
for n=numel(p_list):-1:1
is_in_windir=~isempty(strfind(lower(p_list{n}),lower('C:\Windows')));
if is_in_windir
if tryout
fprintf('%s\n',p_list{n})
else
rmpath(p_list{n});
end
end
end

1 commentaire

Jan
Jan le 19 Nov 2018
Modifié(e) : Jan le 19 Nov 2018
I'd replace
~isempty(strfind(lower(p_list{n}),lower('C:\Windows')));
by
strncmpi(plist{n}, 'C:\Windows', 10)
or run it on the complete cell string plist before the loop.
p = strsplit(path, pathsep);
p(strncmpi(p, 'C:\Windows', 10)) = [];
path(sprintf(['%s', pathsep], p{:}));
Nevertheless, the main idea solves the problem: +1

Connectez-vous pour commenter.

Catégories

En savoir plus sur Startup and Shutdown dans Centre d'aide et File Exchange

Question posée :

le 19 Nov 2018

Commenté :

Rik
le 20 Nov 2018

Community Treasure Hunt

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

Start Hunting!

Translated by