Is there a possibility to suppress the Mathematica Kernel taskbar tab when accessing it through .NETLink on Windows?
-
$\begingroup$ Welcome. There is no need to sign your messages; that is what the user block below each post and your profile are for. $\endgroup$– Mr.WizardFeb 7, 2012 at 12:45
-
$\begingroup$ This is not really .NETLink related: the question is if there's a command line option that'll prevent the kernel from showing itself in the taskbar (BTW I think this behaviour is deliberate, ad not an oversight, though I can completely understand why someone would want to hide it). $\endgroup$– SzabolcsFeb 7, 2012 at 13:05
1 Answer
The command line option to call the kernel with to suppress the taskbar button is -noicon
. You need to pass this flag to MathKernel.exe
when launching it.
Here's a demonstration from within Mathematica:
kernel = LinkLaunch[First[$CommandLine] <> " -mathlink -noicon"]
This will launch a new kernel and connect to it. On Windows, the new kernel will not show on the taskbar.
I do not remember where I learned about this command line flag. It took me quite a few minutes to be able to recall it at all.
-
$\begingroup$ Thanks for your answer. Unfortunately the taskbar button sill appears. I've got the following code: Dim _arguments As String = "-linkmode launch -linkname ""C:/Program Files/Mathematica/8.0/MathKernel.exe"" -noicon" _iKernelLink = Wolfram.NETLink.MathLinkFactory.CreateKernelLink(_arguments) Am I doing something wrong? $\endgroup$– alxpppFeb 7, 2012 at 13:39
-
$\begingroup$ @alxppp I don't know C#, can you first try the Mathematica code I posted? If that one works, we can go from there. $\endgroup$– SzabolcsFeb 7, 2012 at 13:43
-
$\begingroup$ Thank you very much for your reply. Your Mathematica code works, no Kernel button appears in the taskbar after execution. $\endgroup$– alxpppFeb 7, 2012 at 15:01
-
$\begingroup$ @alxppp I don't know Visual Basic or any .NET, but my guess is that you need to launch the kernel using
Wolfram.NETLink.MathLinkFactory.CreateKernelLink("-noicon")
$\endgroup$– SzabolcsFeb 7, 2012 at 15:08 -
$\begingroup$ Thank you. This is what the code from my first comment does. I just put the arguments of the CreateKernelLink function in a separate string variable ("_arguments"). $\endgroup$– alxpppFeb 7, 2012 at 15:18