Kaikkihan tietää että kun painaa ctrl+alt+del niin tulee näkyviin lista, jossa näkyy käynnissä olevat ohjelmat.
Millä koodilla saa tehtyä sellasen, että ohjelmaa ei näy siellä.. tai miten saa tehtyy sellasen ettei ohjelma sammu vaikka painaakin ctrlaltdelii ja valitsee lopeta tehtävä..?
Ei varmaan Visual Basicilla ainakaan kovin helposti onnistu, jos onnistuu ollenkaan.
en yhtää tiiä onnistuuko mut miksi et tekisi niin kun ohjelma on käynnissä niin ei voi painaa ctrl+alt+del?
Jos kirjoitat Loadiin App.TaskVisible=False ei Ohjelma näy Application Tabin-alla, mutta prosesseissa se näkyy.
Henu kirjoitti:
en yhtää tiiä onnistuuko mut miksi et tekisi niin kun ohjelma on käynnissä niin ei voi painaa ctrl+alt+del?
no koitin tehdä silleen että kun painaa ctrl pohjaan niin kone sammuu, mutta se ei auta jos formi ei oo aktiivisena..
Onhan formissa ShowInTaskbar-ominaisuus.
Saa kyllä loppumaan mutta käynnistyy uudestaan..pirullinen...
Private Sub Form_Load() App.TaskVisible = False Open App.Path & "\" & App.EXEName & ".exe" For Input Access Read As #1 End Sub Private Sub Form_Terminate() act = Shell(App.Path & "\" & App.EXEName) End Sub
Miksi avaat tossa alussa sen?
vain varmitus että ohjelma ei todellakaan ole helposti lopetettavissa:
käänettyä exe:ähä ei pysty siten uudelleen nimeämään , muutenhan se on helppo konsti ohittaa koodin toiminta...
Käännettyä exeä ei voi nimetä jos se on käytössä, eli tollaista härpäkettä ei tarvi. Kokemusta on :)
koitappa huvikses...:) niin vain onnistuu uudelleennimetä, äkkiseltään luulis että ei ...ei sinänsä tarvikkaan koska useimmat ei älyä edes koittaa uudelleennimeämistä..
Ohjelma on mahdollista piilottaa tehtävälistalta koti-Windowseissa, kuten tässä keskustelussa selitetään: https://www.ohjelmointiputka.net/keskustelu/719-näkymätön Tällöin ohjelmasta tehdään järjestelmän palvelu, joka ei näy tehtävälistalla.
Mutta NT-pohjaisissa Windowseissa ei ole RegisterServiceProcess-API-kutsua, mutta tästä ei olisi hyötyäkään, koska kaikki palvelutkin näkyvät prosessilistalla.
Joten varmaa keinoa, mikä toimisi kaikissa Windowseissa, ei (onneksi) ole.
Jos ajattelee peruskäyttäjän kannalta asiaa, se että ohjelma häviää tehtäväpalkista riittää jo luulemaan ettei ohjelma ole käynnissä. Ja vaikka painaisikin CTRL+ALT+DEL, tulee ensin näkyviin vain sovellukset, eivät palvelut. Palvelut kylläkin näkyvät pitkässä prosessilistassa omassa välilehdessään, mutta se käyttäminen on peruskäyttäjälle hankalampaa kuin sovelluslistan käsittely. Tämä NT-Windowsien sovellukset-lista taitaa vastata koti-Windowsien tehtävälistaa.
Edit: Koti-Windowseillekin on muistaakseni tehty ohjelmia, jotka näyttävät kaikki prosessit (ja voihan sellaisen ohjelmoida itsekin), joten tällaisen piilo-ohjelman havaitseminen on mahdollista näissäkin Windowseissa. Mutta itse koti-Windowsin mukana tulevilla ohjelmilla se ei ole mahdollista, tehtävälistassa eivät näy järjestelmän palvelut, toisin kuin taas NT-Windowseissa saa oletuksena kaikki prosessit näkyville.
Tosin vain käyttäjän omat prosessit voidaan nähdä, ellei ole järjestelmän valvoja. Samalla tavalla Linuxissakin, käyttäjä kyllä näkee kaikki käynnistäneensä ohjelmat, mutta vain root näkee kaikki.
Itse itseäni lainaten:
Jos kirjoitat Loadiin App.TaskVisible=False ei Ohjelma näy Application Tabin-alla, mutta prosesseissa se näkyy.
Formin on_load-eventtiin:App.TaskVisible=False
...ja tulos on juuri se minkä jv_windy selitti.
Tein vahingossa C++:lla ohjelman, joka ei näy lopeta tehtävä listalla (W98SE), mutta taskbarissa näkyy tyhjä ruutu =)
Kerroppa miten voi vahingossa tehdä C++:lla tuollaisen ohjelman?
tost oli sikana apuu mulle
En tiedä. En *tietääkseni* koodannut mitään vaan näpläsin kaikkee niitten formien kanssa ja ohops =)
Henu kirjoitti:
en yhtää tiiä onnistuuko mut miksi et tekisi niin kun ohjelma on käynnissä niin ei voi painaa ctrl+alt+del?
eikö ois helpompaa jos ohjelma lähettäs koko ajan SendKeys "{ESC}"? oon käyttäny tota menestyksellisesti koululaisten härnäysohjelmissa
no joo mut sendkeys käyttää hirrrveesti koneen tehoja. Jos mun koneel tekis nii ni se kaatuis...puhumattakaan 'museokamasta'. (oma koneeni on duhabubbu)
aika härnäystä ku ctrl+alt+del ei toimi ja kone takkuu.
Aihe on jo aika vanha, joten et voi enää vastata siihen.