private void check_bitcoin_is_running()
{
Process[] processes = Process.GetProcesses();
string executable_path = "";
bool bitcoinqt_is_running = false;
foreach (Process p in processes)
{
string procname = "";
try
{
procname = p.ProcessName;
}
catch (Win32Exception)
{
procname = "n/a";
}
if (procname == "bitcoind") //TODO how to tell if running "bitcoin -server"
{
bitcoin_is_running = true;
executable_path = Path.GetDirectoryName(p.MainModule.FileName);
break;
}
else if (procname == "bitcoin-qt")
{
bitcoinqt_is_running = true;
}
}
string daemon_path = "C:\\Program Files (x86)\\Bitcoin\\daemon\\bitcoind.exe";
if (bitcoinqt_is_running)
{
TopMostMessageBox.Show("You need to run the daemon version of bitcoin. It's at \n\n" + daemon_path, "Bitcoin QR Popup", MessageBoxButtons.OK); //TODO translate
can_exit = true;
}
else if(!bitcoin_is_running)
{
TopMostMessageBox.Show("Unable to connect to bitcoin. Run it from\n\n" + daemon_path, "Bitcoin QR Popup", MessageBoxButtons.OK); //TODO translate
can_exit = true;
}
}