How to make a code to access the internet and other programs
Show older comments
Is there a way to make a code open the internet browser and other programs.
Accepted Answer
More Answers (1)
Rainaire Hansford
on 4 Aug 2018
15 Comments
Walter Roberson
on 5 Aug 2018
Did you perhaps accidentally delete the
text_to_say = 'Unrecognized command';
that is near the beginning?
Rainaire Hansford
on 23 Sep 2018
Walter Roberson
on 23 Sep 2018
My code had
parts = regexp(command, '\s+', 'split');
text_to_say = 'Unrecognized command';
Your code moves the second of those two lines to the isempty() case only, leaving it undefined for the cases of a recognized verb followed by something unrecognized, and for the case of an unrecognized verb.
Rainaire Hansford
on 5 Nov 2018
Edited: Rainaire Hansford
on 5 Nov 2018
Rainaire Hansford
on 11 Nov 2018
Walter Roberson
on 11 Nov 2018
You were not able to locate the executable for Internet Explorer, or for Chrome? Which Windows are you using and which browser do you want to be able to open?
Rainaire Hansford
on 29 Nov 2018
Walter Roberson
on 29 Nov 2018
I still need to know your Windows version to figure out where IE and Chrome would have been stashed.
Rainaire Hansford
on 31 Dec 2018
Walter Roberson
on 31 Dec 2018
On my Windows 10 system:
- Firefox: C:\Program Files\Mozilla Firefox\firefox.exe
- Internet Explorer: C:\Program Files (x86)\Internet Explorer\iexplore.exe
- Chrome: C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
If you need to access these by program, they are in the registry at HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\App Paths\ under firefox.exe\ (Default), IEXPLORE.EXE\ (Default), and chrome.exe\ (Default)
Rainaire Hansford
on 5 Jan 2019
Walter Roberson
on 5 Jan 2019
%initializations. No need to keep doing these.
chromelocation = 'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe';
local_file_prefix = 'file://';
NET.addAssembly('System.Speech');
obj = System.Speech.Synthesis.SpeechSynthesizer;
obj.Volume = 100;
%then inside loop
....
else
word1 = regexp(res, '\S+', 'match', 'once');
if strcmpi(word1, 'Open')
openwhat = regexprep(res, '\s*\S+\s*', '', 'once');
uri = regexp(openwhat, '^\w\w+:'); %with at least two characters before the :
if isempty(uri)
openwhat = [local_file_prefix openwhat];
end
text_to_say = sprintf('Opening %s', openwhat);
Speak(obj, text_to_say)
cmd = sprintf('%s "%s"', chromelocation, openwhat);
else
...
Could I get like an example with your directory?
Sorry, I am not running Windows most of the time, and I am having a lot of trouble with my virtual machine software these days.
Rainaire Hansford
on 15 Jan 2019
Walter Roberson
on 15 Jan 2019
%initializations. No need to keep doing these.
chromelocation = 'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe';
local_file_prefix = 'file://';
NET.addAssembly('System.Speech');
obj = System.Speech.Synthesis.SpeechSynthesizer;
obj.Volume = 100;
command = strtrim( input('What is your command ', 's') );
parts = regexp(command, '\s+', 'split');
if isempty(parts)
text_to_say = 'Unrecognized command';
Speak(obj, text_to_say);
else
switch lower(parts{1})
case 'open'
if length(parts) == 2
cmd = [];
filename = parts{2};
if exist(filename, 'file')
openwhat = [local_file_prefix filename];
text_to_say = 'Opening local file';
else
uri = regexp(filename, '^\w\w+:'); %with at least two characters before the :
if isempty(uri)
text_to_say = 'Local file not found';
filename = [];
else
text_to_say = 'Opening URL with browser.';
cmd = sprintf('%s "%s" &', chromelocation, filename);
filename = [];
end
end
Speak(obj, text_to_say);
if ~isempty(filename)
open(filename);
end
if ~isempty(cmd)
cmd = sprintf('%s "%s" &', chromelocation, openwhat);
system(cmd);
end
else
Speak(obj, text_to_say);
end
case 'search'
if length(parts) == 2
filename = parts{2};
cmd = sprintf('cd C:\; dir /s "%s"', filename);
text_to_say = 'Searching disk C for file';
Speak(obj, text_to_say);
[status, message] = system(cmd);
if isempty(message)
text_to_say = 'System had no response to search request';
Speak(obj, text_to_say);
else
text_to_say = 'System result of search follows';
Speak(obj, text_to_say);
Speak(obj, message);
end
else
Speak(obj, text_to_say');
end
otherwise
Speak(obj, text_to_say);
end
end
Categories
Find more on Environment and Settings in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!