C# - Ukončení nezávisle běžícího programu – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

C# - Ukončení nezávisle běžícího programu – C / C++ – Fórum – Programujte.comC# - Ukončení nezávisle běžícího programu – C / C++ – Fórum – Programujte.com

 

xmat0
Newbie
8. 2. 2010   #1
-
0
-

Dobrý den. Dlouho si tím lámu hlavu a zatím jsem nepřišel na to jak to udělat.

I.
Mám vlastní program, který by měl ukončit nějaký nezávisle běžící program, resp. proces. Např. aby se po jeho spuštění vypnul běžící Skype (či cokoliv jiného). Proto bych potřeboval poradit, jak zjistit zda ten program běží, a jak ho ukončit (pokud to lze).

II.
A pak ještě jedna věc, toto je php skript, který mi zjistí, zda je vzdálený mysql server na určitém portu online či offline. Jak toto napsat v C#? Nezabývám se tímto jazykem moc dlouho a tak neznám mnoho funkcí a syntaxe mi taky ještě moc nejde.

$test=fsockopen($ip,$port,$errorno,$errorstr,1);

if($test)
{
echo "Online";
}
else
{
echo "Offline";
}


Děkuji mnohokráte za případné odpovědi, Matěj Kučera.

Nahlásit jako SPAM
IP: 88.146.62.–
dannyk0
Věrný člen
8. 2. 2010   #2
-
0
-

ad 1, Tohle je trochu obtiznejsi, protoze si nejsem jisty, jestli ma .NET primo nejake funkce na to. Zakladem je vypsat si list spustenych procesu, vyhledat si ten svuj podle nazvu a zjistit si jeho PID (Process ID) a na toto PID pak poslat zpravu o ukonceni. Pohledal bych neco takoveho pro C++ a zkusil to portnout do C#.

ad 2, Ten skript neni nijak slozity. Jedine, co vlastne dela, ze zkusi vytvorit socket spojeni na nejake IP a PORT a pokud se pripoji, tak je server spusten jinak ne. Alternativou v C# muze byt trida Socket v System.Net.Sockets.

Nahlásit jako SPAM
IP: 85.135.97.–
Jedu v c++,c#,assembler,ASP.NET,PHP,databaze,bezpecnost softwaru[br] -----------------------------------------------------------[br] Muj blog o programovani,hudbe a vsem moznem,co najdu na netu :) [br] http://dannyk.aspone.cz[br] -----------------------------------------------------------[br] Na foru mam nejake prispevky pod nickem Master,tak jen pro upresneni :)
amertak0
Návštěvník
8. 2. 2010   #3
-
0
-

using System.Diagnostics;


public bool FindAndKillProcess(string name)
{
foreach (Process clsProcess in Process.GetProcesses()) {

if (clsProcess.ProcessName.StartsWith(name))
{
clsProcess.Kill();

return true;
}
}
return false;
}

Nahlásit jako SPAM
IP: 80.251.245.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 66 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý