Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Ladis
Člen
Avatar
Ladis:22.6.2015 14:22

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]:23.6.2015 7:05

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:23.6.2015 7:51

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:23.6.2015 8:30

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:23.6.2015 8:42

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:23.6.2015 12:25

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.:23.6.2015 13:30

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:23.6.2015 14:09

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:23.6.2015 14:32

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:23.6.2015 22:01

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.