Diskuze: Vypnutí služby zařazování tisku (ServiceController)

C# .NET .NET (C# a Visual Basic) Vypnutí služby zařazování tisku (ServiceController) American English version English version

Avatar
Ladis
Člen
Avatar
Ladis:

Ahoj,
jsem samoukem začátečníkem v oblasti programování. Rád bych vyřešil jednoduchý problém, restart služby zařazování tisku, za pomocí jazyka C#. Zjistil jsem si, že pro práci s Windows Services využiji třídu ServiceController. Nejprve jsem si zkusil běžící službu tisku vypnout, ovšem už zde narážím na problém, se kterým nejsem schopný pohnout. Vzhledem k mým víceméně nulovým zkušenostem předpokládám, že bude problém triviální. Dále přemýšlím, zda nebude problém v oprávněních. Účet, pod kterým pracuji má administrátorská práva, ovšem počítač, kde bych rád prográmek na restartování služby využil, administrátorská práva mít nebude. Přepodkládám správně, že toto budu muset také ošetřit?.

Přikládám obrázek zdrojového kódu. Mohl bych touto cestou požádat o pomoc?
Děkuji

Editováno 22.6.2015 14:23
Odpovědět 22.6.2015 14:22
Budoucnost už není to, co bývala.
Avatar
Odpovídá na Ladis
Jakub Lásko[Saarix]:

Vypadá to že ta služba tam asi vůbec neběží. Kontroloval jsi zda je zaplá? V kódu bych radši nejprve ifem ověřil zda ta služba tam je a pak se ji snažil vypnout.

Jinak taky jsem dělal v práci zapínání a restart jedné služby a na uživatelských PC by potřeba na každé stanici dodatečně otevřít MMC konzoli a přidat uživateli práva pro tu danou službu aby sní program dokázal pracovat.

Editováno 23.6.2015 7:05
Nahoru Odpovědět 23.6.2015 7:05
Časem je vše možné.
Avatar
Odpovídá na Ladis
Michal Štěpánek:

No, jako začátečník si docela troufáš, protože programování služeb není "trivka". Je tu k dispozici tutoriál na programování služeb, tak se tam mrkni a třeba najdeš inspiraci.
http://www.itnetwork.cz/…ws-service-1

Nahoru Odpovědět 23.6.2015 7:51
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Ladis
Člen
Avatar
Odpovídá na Michal Štěpánek
Ladis:

Ahoj,
díky za reakci. Na programování služeb samotných jsem se vrhnout nechtěl :-), pouze si vytvořit prográmek v C#, který by mi zajistil restartování služby již vytvořené. Na základě některých dohledaných materiálů by pouze vypnutí/zapnutí služby neměla být zase až taková věda.

Každopádně díky!

Nahoru Odpovědět 23.6.2015 8:30
Budoucnost už není to, co bývala.
Avatar
Ladis
Člen
Avatar
Odpovídá na Jakub Lásko[Saarix]
Ladis:

Ahoj,

díky za reakci. Služba samozřejmě běží :-). Tu podmínku by bylo nutné dále zakomponovat, už jsem si tu hrál i s trošku komplexnějším kódem s podmínkama nebo za využití "try"-"catch" bloků, a víceméně mé snahy vedou vždy k podobnému výsledku, jako je vidět na obrázku. Každopádně by mě zajímalo, proč takto jednoduchá část kódu neběží.

Ohledně těch oprávnění - díky za poznatek, myslel sem si, že tam bude určitě nějaká obštrukce s právama :-).

Nahoru Odpovědět 23.6.2015 8:42
Budoucnost už není to, co bývala.
Avatar
Odpovídá na Ladis
Michal Štěpánek:

A skutečně se ta služba jmenuje "Spooler"? Nerozlišují se tam velká a malá písmena? Není třeba ten název s nějakou příponou, nebo tak něco? Má ten program k manipulaci s tou službou vůbec oprávnění?

Nahoru Odpovědět 23.6.2015 12:25
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
j.c
Člen
Avatar
Odpovídá na Ladis
j.c:

když mě spooler štve, vymažu ho batchem, musí se spustit jako správce, takto:

@echo on
net stop "Spooler"
erase /s /q c:\windows\sys­tem32\spool\prin­ters*.*
net start "Spooler"
pause

jistě, není to C# .... ;)

 
Nahoru Odpovědět 23.6.2015 13:30
Avatar
Ladis
Člen
Avatar
Odpovídá na j.c
Ladis:

Ahoj,

díky za skriptík, dá se to tak řešit a možná mi nic jiného nezbyde :D, avšak ještě se pokusím porvat s C# :-P.

Nahoru Odpovědět 23.6.2015 14:09
Budoucnost už není to, co bývala.
Avatar
Ladis
Člen
Avatar
Odpovídá na Michal Štěpánek
Ladis:

Ahoj,
díky za nápady. Co jsem Googlil tak se skutečně služba pro zařazování tisku pro Win 7 nazývá "Spooler". Ohledně těch oprávnění mám trochu pochyby. Ještě mě napadá, využívám Visual Studio 2013 Community - není v této verzi náhodou nějaké omezení, právě třeba využívání knihoven jako je System.Service­Process?

Nahoru Odpovědět 23.6.2015 14:32
Budoucnost už není to, co bývala.
Avatar
Odpovídá na Ladis
Michal Štěpánek:

Community je omezeno pouze "licenčně"...

Nahoru Odpovědět 23.6.2015 22:01
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 10.