Juuh eli minäkin värkkään omaa pientä ohjelmaa dossiin ja tartttisin apua tälläseen CLIx (command line interface x) a.k.a "BugOS":
1) salasanan "****" peite ja luku sydeemi??
(toimiva eikä sellainen jonka salasanan voi lukea kun aukaisee notepadilla esim clix.exe:n ja selaa kaikkien ascii merkkien joukosta tarpeeksi kauan ja sieltähän paljastuu osio jossa suoraa
lukee passwd: "terveheippajamitävaan"!
2) pitkien tiedostonimien tuki? onko mahdollista?
3) toimiva esto ettei ohjelma käynnisty kun dos tilassa?
4) ja lopuksi... miten saan kellon toimimaan reaali ajassa ruudun ylälaidassa, vaikka kone odottaa inputin kautta komentoa?
kiitos jo etukäteen jos joku voi auttaa...
t:NORTHWiND
1. Seuraavassa on aliohjelmapari, joka kryptaa salasanan ja kysyy sitä. Ensin kryptataan siis TeeSalasana-funktiolla salasana, ja sitten kryptattu muoto laitetaan EXE:en TarkistaSalasana-funktion kanssa. Kryptaus on todella yksinkertainen, (255-ASCII-numero), mutta ei sitä silti EXE-tiedostosta löydy.
CLS ss$ = TeeSalasana("testi") IF TarkistaSalasana(ss$) THEN PRINT "Salasana oikein!" ELSE PRINT "Salasana väärin!" END IF FUNCTION TarkistaSalasana% (ss$) DO a$ = INKEY$ SELECT CASE a$ CASE "a" TO "z", "A" TO "Z", "0" TO "9" y$ = y$ + a$ PRINT "*"; CASE CHR$(8) LOCATE CSRLIN, LEN(y$) PRINT " "; LOCATE CSRLIN, LEN(y$) y$ = LEFT$(y$, LEN(y$) - 1) CASE CHR$(13) EXIT DO END SELECT LOOP TarkistaSalasana = 0 IF LEN(y$) <> LEN(ss$) THEN EXIT FUNCTION END IF FOR i = 1 TO LEN(y$) IF CHR$(255 - ASC(MID$(y$, i, 1))) <> MID$(ss$, i, 1) THEN EXIT FUNCTION END IF NEXT TarkistaSalasana = 1 END FUNCTION FUNCTION TeeSalasana$ (mj$) FOR i = 1 TO LEN(mj$) pa$ = pa$ + CHR$(255 - ASC(MID$(mj$, i, 1))) NEXT TeeSalasana$ = pa$ END FUNCTION
2. On ehkä teoriassa mahdollista, mutta koska ohjelma tulee vain DOS:ille, en näe siihen tarvetta. Pitkät tiedostonimet näkyvät sitten Pitkä ohjelmanimi.exe -> PITKAO~1.EXE, mutta toimivat kuitenkin.
3. Bootsector neuvoo estämään Windows-käytön kirjoittamalla OUT 8, 8 ohjelman alkuun. En ole kokeillut, toimiiko tämä.
4. Inputin kanssa tämä ei oikein onnistu. Mutta seuraavia koodivinkkejä muokkaamalla se on kyllä mahdollista:
https://www.ohjelmointiputka.net/koodivinkit/
https://www.ohjelmointiputka.net/koodivinkit/
3. Onko sinulla joku hyvä syy miksi ohjelmaa ei saisi käynnistää Windowsissa? On meinaan melko ärsyttäviä tuollaiset turhat "ominaisuudet".
4. Tai sitten hookkaat timer-keskeytyksen ja silloin tunget sitä kelloa sinne.. ;p
lainaus:
3. Onko sinulla joku hyvä syy miksi ohjelmaa ei saisi käynnistää Windowsissa? On meinaan melko ärsyttäviä tuollaiset turhat "ominaisuudet".
4. Tai sitten hookkaat timer-keskeytyksen ja silloin tunget sitä kelloa sinne.. ;p
Juuh on mulla wintoosaa vastaan ja paljonki =)) mut ku mul ois vaan tarkotus saada dossista kaikki irti.
Aihe on jo aika vanha, joten et voi enää vastata siihen.