解决MATLAB2016b安装完成后开始菜单和桌面没有快捷方式的问题

您所在的位置:网站首页 matlab装上打不开 解决MATLAB2016b安装完成后开始菜单和桌面没有快捷方式的问题

解决MATLAB2016b安装完成后开始菜单和桌面没有快捷方式的问题

2024-07-02 17:56:26| 来源: 网络整理| 查看: 265

MATLAB2016b,装完了后出现了没有快捷方式,并在菜单栏中没有相应的文件夹,而且打开MATLAB时感觉有点不正常,先是闪现dos那种界面,然后才慢慢打开(MATLAB打开都很慢),而且之前的m文件都不能相关联。

解决方案如下:

方案一:

找到MATLAB的安装目录文件一般是D:\Program Files\Matlab\bin(根据你自己的安装路径,不一定是D盘),然后找到MATLAB.exe,右键,选择“发送”、“到桌面快捷方式”,这样就可以从桌面打开MATLAB了。但缺点是开始菜单没有快捷方式。.m文件也没有关联。

方案二:

第一遍安装完后,不会出现勾选创建快捷方式及文件关联的页面,安装完后,关闭;再打开安装程序,进行安装,但选择安装组件时,会显示都已安装,随便选择一个需要的组件(选择一个较小的,这样安装过程会快),若提示已安装过,则选择覆盖安装,

之后就会出现创建快捷方式及文件关联的页面了。勾选“桌面”和“开始菜的那种的所有app”就ok了

安装完成后,随便打开一个.m文件,然后所有的.m文件都可以和MATLAB关联起来了。这样*.m文件也能关联上了。

推荐使用第二种方法,从根本上解决了问题

补充:如果.m文件还是没有关联MATLAB,就要用下面这种方法了

1. 将下面代码复制保存为 associateFiles.m 文件。

2. 在MATLAB中运行 associateFiles.m 文件,即在命令行中输入 associateFiles 然后 回车。

3. 步骤2程序运行生成文件 MatlabFileAssocFix.reg 。

4. 关闭MATLAB,双击运行 MatlabFileAssocFix.reg 。

5. 设置.m文件默认打开程序为MATLAB2016a 完工。

function associateFiles(action, userExtList, fileStr) % associateFiles(action, extList, fileStr) % % Makes a registry files that can be used to set correct file associantions on % a windows platform. The following MATLAB file extensions are supported: % .m, .mat, .fig, .mexw32, .mexw64, .p, .mdl, .mdlp, .slx, .mldatx, .req, % .sldd, .slddc, .slxp, .sltx, .mn, .mu, .muphlp, .xvc, .xvz, .ssc, .mlapp, % .mlappinstall, .mltbx, .mlpkginstall, .mlprj % % INPUT: % action - optional string. % * 'add' (default) adds/rewrites the MATLAB file association registry % keys for this version. % * 'delete' deletes the MATLAB file association registry entries for % ALL versions of MATLAB (including "old style" ones) % * 'deleteadd' is the same as 'delete' followed by 'add' % extList - optional string or cell array of strings containing the file % extensions that should be associated with this version. Default is % all MATLAB file extension (see above). % fileStr - optional string with the name of the registry file to be written % (possibly including path). Default is the file % 'MatlabFileAssocFix.reg' in the current directory. % % USAGE: % 1) Run with desired options (see above). A registry file should have been % created. % 2) Exit all running instances of MATLAB. % 3) Make a backup copy of the windows registry if you need to restore the % changes, see https://support.microsoft.com/en-us/kb/322756 % 4) Double click on the created file (possibly need to enter a password) and % confirm. % 5) Restart Windows (or explorer.exe). % 6) The MATLAB files should now be associated with the MATLAB version that the % registry file was created in and e.g. m-files should be opened in an % already running instance of MATLAB. % % EXAMPLES: % * associateFiles('deleteadd') - Makes a registry files that deletes all % previous MATLAB file association registry keys and write new ones that % associates all MATLAB files with the MATLAB version that the registry file % was created in. % * associateFiles('', {'.m', '.mat', '.fig'}, 'myFile') - Makes a registry file % "myFile.reg" that associates m-, mat- and fig-files with the MATLAB version % that the registry file was created in. % % VERSION 1.0 % Defualt input if (nargin < 1 || isempty(action)) action = 'add'; end if (nargin < 2) userExtList = {}; end if (nargin < 3) fileStr = ''; end if (~iscell(userExtList)) if (isempty(userExtList)) userExtList = {}; else userExtList = {userExtList}; end end % Sanity check if (~ischar(action) || (~strcmpi(action, 'add') && ... ~strcmpi(action, 'delete') && ~strcmpi(action, 'deleteadd'))) error('The action to perform must be ''add'', ''delete'' or ''deleteadd''!') end if (~isempty(userExtList) && ~min(cellfun(@ischar, userExtList))) error('The file extension list must be a string or a cell array of strings!') end if (~ischar(fileStr)) error('The file to write to must be a string!') end % Get the currently running MATLAB version verStr = regexp(version, '(\d*?\.\d*?\.\d*?)\.', 'tokens'); verStr = verStr{1}{1}; verNum = str2double(regexprep(verStr, '(\d*?\.\d*)[\x0000-\xffff]*', '$1')); verHex = sprintf('x', str2double(regexprep(verStr, ... '(\d*?)\.[\x0000-\xffff]*', '$1')), str2double(regexprep(verStr, ... '\d*?\.(\d*?)\.[\x0000-\xffff]*', '$1'))); % Get 32/64-bit arch = computer; switch arch case 'PCWIN' binFolder = 'win32'; case 'PCWIN64' binFolder = 'win64'; end binPath = fullfile(matlabroot, 'bin', binFolder); % Known MATLAB files with possible DDE actions fileExtCell = {... 'fig' , 'MATLAB Figure' , '-62' , ... {'Open', 'uiopen(''%1'',1)'} , [] ; ... 'm' , 'MATLAB Code' , '-58' , ... {'Open', 'uiopen(''%1'',1)'} , {'Run', 'run(''%1'')'} ; ... 'mat' , 'MATLAB Data' , '-59' , ... {'Load', 'load(''%1'')' } , {'Open', 'uiimport(''%1'')'}; ... 'mdl' , 'Simulink Model' , '-61' , ... {'Load', 'uiopen(''%1'',1)'} , [] ; ... 'mdlp' , 'Simulink Protected Model' , '-72' , ... [] , [] ; ... 'mexw32', 'MATLAB MEX' , '-63' , ... [] , [] ; ... 'mexw64', 'MATLAB MEX' , '-63' , ... [] , [] ; ... 'mn' , 'MuPAD Notebook' , '-66' , ... {'Open', 'mupad(''%1'')'} , [] ; ... 'mu' , 'MuPAD Code' , '-67' , ... {'Open', 'uiopen(''%1'',1)'} , [] ; ... 'muphlp', 'MuPAD Help' , '-68' , ... {'Open', 'doc(symengine, ''%1'')'} , [] ; ... 'p' , 'MATLAB P-code' , '-60' , ... [] , [] ; ... 'slx' , 'Simulink Model (SLX format)', '-73' , ... {'Open', 'uiopen(''%1'',1)'} , [] ; ... 'ssc' , 'Simscape Model' , '-65' , ... {'Open', 'uiopen(''%1'',1)'} , [] ; ... 'xvc' , 'MuPAD Graphics' , '-69' , ... {'Open', 'mupad(''%1'')'} , [] ; ... 'xvz' , 'MuPAD Graphics' , '-70' , ... {'Open', 'mupad(''%1'')'} , [] ; ... 'mlapp' , 'MATLAB Application' , [] , [], [] ; ... 'mltbx' , 'MATLAB Toolbox' , [] , [], [] ; ... 'mldatx' , 'Simulink Scenario' , [] , [], [] ; ... 'req' , 'Simulink Requirements Link' , [] , [], [] ; ... 'sldd' , 'Simulink Dictionary' , [] , [], [] ; ... 'slddc' , 'Simulink Dictionary' , [] , [], [] ; ... 'mlappinstall', 'MATLAB Application' , [] , [], [] ; ... 'mlpkginstall', 'MATLAB Support Package' , [] , [], [] ; ... 'slxp' , 'Simulink Protected Model Package', [] , [], [] ; ... 'sltx' , 'Simulink Template' , [] , [], [] ; ... 'mlprj' , 'MATLAB Project' , [] , [], []}; % Possibly trim list if (~isempty(userExtList)) fileExtCell = fileExtCell(ismember(fileExtCell(:, 1), ... regexprep(userExtList, '\.', '')), :); end % Make registry file if (~isempty(fileStr)) % Possibly add file extension [~, ~, tmp] = fileparts(fileStr); if (isempty(tmp)) fileStr = [fileStr, '.reg']; end fid = fopen(fileStr, 'w'); else fid = fopen('MatlabFileAssocFix.reg', 'w'); end if (fid == -1) error('Failed to create registry file') end % Write intial lines fprintf(fid, '%s\r\n\r\n', 'Windows Registry Editor Version 5.00'); fprintf(fid, '%s\r\n\r\n', ';FIXES MATLAB FILE ASSOCIATIONS'); % REMOVE OLD KEYS explorerKey = ['HKEY_CURRENT_USER\Software\Microsoft\Windows\', ... 'CurrentVersion\Explorer\FileExts']; % Iterate over file extensions for fileExtNo = 1 : size(fileExtCell, 1) rmKeys = {}; fileExt = fileExtCell{fileExtNo, 1}; % File extension keys [status, result] = dos(['reg query HKEY_CLASSES_ROOT /f .', fileExt, ... ' /k /e']); if (~status) keys = regexp(result, '(HKEY_CLASSES_ROOT[\x0000-\xffff]*?)\n', 'tokens'); rmKeys = [rmKeys, keys{:}]; end % Old style keys without version numbers if (~strcmpi(fileExt, 'mexw64')) % Uses single DDE key for mex files if (strcmpi(fileExt, 'mexw32')) fileExtTmp = 'mex'; else fileExtTmp = fileExt; end [status, result] = dos(['reg query HKEY_CLASSES_ROOT /f ', ... fileExtTmp, 'file /k /e']); if (~status) keys = regexp(result, '(HKEY_CLASSES_ROOT[\x0000-\xffff]*?)\n', ... 'tokens'); rmKeys = [rmKeys, keys{:}]; end end % New style keys with version number if (strcmpi(action, 'add')) % Only remove keys related to this version [status, result] = dos(['reg query HKEY_CLASSES_ROOT /f MATLAB.', ... fileExt, '.', verStr ' /k']); else % Remove keys related to ALL version [status, result] = dos(['reg query HKEY_CLASSES_ROOT /f MATLAB.', ... fileExt, '. /k']); end if (~status) keys = regexp(result, '(HKEY_CLASSES_ROOT[\x0000-\xffff]*?)\n', 'tokens'); rmKeys = [rmKeys, keys{:}]; end % Explorer keys [status, result] = dos(['reg query ', explorerKey, ' /f .', fileExt, ... ' /k /e']); if (~status) keys = regexp(result, '(HKEY_CURRENT_USER[\x0000-\xffff]*?)\n', 'tokens'); rmKeys = [rmKeys, keys{:}]; end % Write to file if (~isempty(rmKeys)) fprintf(fid, '%s\r\n\r\n', [';REMOVES ', upper(fileExt), ... ' FILE ASSOCIATIONS']); for keyNo = 1 : length(rmKeys) key = rmKeys{keyNo}; fprintf(fid, '%s\r\n\r\n', ['[-', key, ']']); end end end % ADD KEYS if (~strcmpi(action, 'delete')) % Get text Persistent Handler [status, result] = dos(... 'reg query HKEY_CLASSES_ROOT\.txt\PersistentHandler /ve'); if (~status) PersistentHandler = regexp(result, '\{[\x0000-\xffff]*?\}', 'match'); PersistentHandler = PersistentHandler{1}; else PersistentHandler = ''; end % DDE call ddeCall = 'ShellVerbs.Matlab'; if (verNum > 8) % Changed from R2013a ddeCall = [ddeCall, '.', verStr]; end % Default icon defIcon = 'm'; if (~exist(fullfile(binPath, 'm.ico'), 'file')) defIcon = ''; end % Path to MATLAB binary directory with \\ binPathStr = regexprep(binPath, '\\', '\\\\'); % Write Shell Open key key = ['[HKEY_CLASSES_ROOT\Applications\MATLAB.exe\shell\open', ... '\command]%r', '@="\"', binPathStr, '\\MATLAB.exe\" \"%1\""%r%r']; fprintf(fid, '%s\r\n\r\n', ';ADD SHELL OPEN'); lines = regexp(key, '([\x0000-\xffff]*?)%r', 'tokens'); for lineNo = 1 : length(lines) fprintf(fid, '%s\r\n', lines{lineNo}{1}); end % Iterate over file types for fileExtNo = 1 : size(fileExtCell, 1) fileExt = fileExtCell{fileExtNo, 1}; % File extension keys key = ['[HKEY_CLASSES_ROOT\.', fileExt, ']%r@="MATLAB.', fileExt, '.', ... verStr, '"%r']; if (strcmpi(fileExt, 'm') && ~isempty(PersistentHandler)) % Add some values key = [key, '"Content Type"="text/plain"%r', ... '"PerceivedType"="Text"%r']; end key = [key, '%r']; key = [key, '[HKEY_CLASSES_ROOT\.', fileExt, ... '\OpenWithProgids]%r"MATLAB.', fileExt, '.', verStr, '"=""%r%r']; if (strcmpi(fileExt, 'm') && ~isempty(PersistentHandler)) key = [key, '[HKEY_CLASSES_ROOT\.', fileExt, ... '\PersistentHandler]%r@="', PersistentHandler, '"%r%r']; end key = [key, '[HKEY_CLASSES_ROOT\.', fileExt, ... '\Versions\MATLAB.', fileExt, '.' verStr, ']%r"FileVersionMS"=dword:', ... verHex, '%r"FileVersionLS"=dword:00000000%r%r']; % DDE keys ddeData = fileExtCell(ismember(fileExtCell(:, 1), fileExt), :); key = [key, '[HKEY_CLASSES_ROOT\MATLAB.', fileExt, '.' verStr, ... ']%r@="', ddeData{2}, '"%r']; if (~isempty(ddeData{3})) key = [key, '"FriendlyTypeName"="@', binPathStr, '\\matlab.exe', ... ',', ddeData{3}, '"%r']; end key = [key, '%r']; % Icon icon = fileExt; if (~exist(fullfile(binPath, [icon, '.ico']), 'file')) icon = defIcon; end if (~isempty(icon)) key = [key, '[HKEY_CLASSES_ROOT\MATLAB.', fileExt, '.' verStr, ... '\DefaultIcon]%r@="', binPathStr, '\\', icon, '.ico,0"%r%r']; end % Shell actions for shellActionNo = 4:5 ddePar = ddeData{shellActionNo}; if (~isempty(ddePar)) key = [key, '[HKEY_CLASSES_ROOT\MATLAB.', fileExt, '.' verStr, ... '\Shell\', ddePar{1}, ']%r@="', ddePar{1}, '"%r%r']; key = [key, '[HKEY_CLASSES_ROOT\MATLAB.', fileExt, '.' verStr, ... '\Shell\', ddePar{1}, '\command]%r@="\"', binPathStr, ... '\\matlab.exe\""%r%r']; key = [key, '[HKEY_CLASSES_ROOT\MATLAB.', fileExt, '.' verStr, ... '\Shell\', ddePar{1}, '\ddeexec]%r@="', ddePar{2}, '"%r%r']; key = [key, '[HKEY_CLASSES_ROOT\MATLAB.', fileExt, '.' verStr, ... '\Shell\', ddePar{1},'\ddeexec\application]%r@="', ... ddeCall, '"%r%r']; key = [key, '[HKEY_CLASSES_ROOT\MATLAB.', fileExt, '.' verStr, ... '\Shell\', ddePar{1},'\ddeexec\topic]%r@="system"%r%r']; end end % Explorer keys key = [key, '[', explorerKey, '\.', fileExt, '\OpenWithProgids]%r']; if (strcmpi(fileExt, 'm')) key = [key, '"m_auto_file"=hex(0):%r']; end key = [key, '"MATLAB.', fileExt, '.', verStr, '"=hex(0):%r%r']; if (~isempty(ddeData{4})) % Add key key = [key, '[', explorerKey, '\.', fileExt, ... '\OpenWithList]%r"a"="MATLAB.exe"%r"MRUList"="a"%r%r']; else key = [key, '[', explorerKey, '\.', fileExt, '\OpenWithList]%r%r']; end % Write to file fprintf(fid, '%s\r\n\r\n', [';ADD ', upper(fileExt), ... ' FILE ASSOCIATIONS']); lines = regexp(key, '([\x0000-\xffff]*?)%r', 'tokens'); for lineNo = 1 : length(lines) fprintf(fid, '%s\r\n', lines{lineNo}{1}); end end end % Cloese file fclose(fid);


【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭