Mistä netistä löytyisi kikka jolla saisin HTML-ohjelman (sisältää JavaScriptiä) konvertoitua exe:ksi ja ilmaiseksi. Älä pelkästään kuuklaa, se tuo paljon vääriä vastauksia. Ihan sellainen että olet myös kokeillut. Kyllä varmasti on jokin kuten muitakin ilmaisohjelmia.
Voisitko tarkentaa hieman, että mikä on toivottu lopputulos? Miksi "HTML-ohjelma" pitää saada exe:ksi?
Voisitko selittää, millä tavalla vääriä vastauksia yksinkertainen haku tuottaa? Mitä vikaa on esimerkiksi siinä ohjeessa, että käyttäisit WebBrowser-komponenttia HTML-sivun avaamiseen?
Yleensä ”HTML-ohjelman” paras ominaisuus on se, että se toimii suoraan monenlaisissa laitteilla, joissa on nettiselain. Miksi haluat tuhota tämän ominaisuuden?
HTML, CSS ja JavaScript ovat niin monimutkaisia, että tuskin kukaan on tehnyt sellaista modernia ja vielä kaiken kehityksen mukana pysyttelevää systeemiä, joka oikeasti kääntäisi niitä Windows-ohjelmaksi. Eli varmasti kaikki hyvät ratkaisut käyttävät jonkin tunnetun selaimen moottoria. Jos todella pitäisi saada tästä vain yksi exe, pitäisi siis paketoida HTML-sivun kylkeen koko selain ja vielä nähdä lisävaivaa, että sen saisi paketoitua yhteen tiedostoon. En usko, että se olisi oikeasti vaivan arvoista. Tulisi myös järjettömän iso paketti verrattuna alkuperäiseen HTML-sivuun. Siksi monet netissä ehdotetut ratkaisut perustuvat siihen, että käytetään selainta sopivalla tavalla.
Site-specific browser -ominaisuus näyttää olevan poissa muodista (varmaan juuri siksi, että tavallinen nettiselain on nykyään luonteva tapa käyttää nettisivuja), mutta ilmeisesti kuitenkin MS Edgen pitäisi edelleen tukea sitä oikein käynnistettynä: msedge.exe --app="omasivu.html"
. (Kuten ensimmäisessä viestissä epäilit, en ole testannut tätä, kun ei ole itsellä tarvetta ja kysymyksessäkin on tuollainen ”antakaa vain ihan valmiita ja testattuja ratkaisuja” -asennevamma.)
Jos nämä valmiit selainta käyttävät ratkaisut eivät kelpaa, voit aina tehdä oman perustuen esimerkiksi Chrome Embedded Framework -esimerkkiin. Ihan ilmaiseksi. Ja kuka tietää, ehkä joku onkin tehnyt ”työkalun”, jolla saat CEF-pohjaisen ohjelman luotua koskematta itse CEFin käännösprosessiin. Tosin en löisi vetoa asian puolesta. Ehkä tällä hakusanalla voit itse etsiä lisää.
" Miksi "HTML-ohjelma" pitää saada exe:ksi?"
Kaksi syytä
- Ohjelmakoodi pitää salata. Ei kaikkien koodareitten saatavaksi.
- Lisenssin takia jotta saa lisenssin ruudulle kryptattuna
"Voisitko selittää, millä tavalla vääriä vastauksia yksinkertainen haku tuottaa?"
- Tuottaa vastauksia, esim että free joka on vain vähän aikaa (testiajan) maksuton ja free download joka on ilmainen lataus mutta jos käytät niin pitää maksaa. Eikä ole varma lopputuloksesta.
"HTML, CSS ja JavaScript ovat niin monimutkaisia, että tuskin kukaan on tehnyt sellaista modernia ja vielä kaiken kehityksen mukana pysyttelevää systeemiä, joka oikeasti kääntäisi niitä Windows-ohjelmaksi."
- Kyllä on!!! Olen joskus nähnyt maksullisen eräällä henkilöllä.
"En usko, että se olisi oikeasti vaivan arvoista. Tulisi myös järjettömän iso paketti verrattuna alkuperäiseen HTML-sivuun."
- Usko pois, eikä ole suurikokoinen exe. Itseasiassa aika pieni.
Siis vastauksia. Joku varmasti tietää.
KYLLÄ LÄHTEE!!!
Stadion1234 kirjoitti:
- Usko pois, eikä ole suurikokoinen exe. Itseasiassa aika pieni.
Et vaan ymmärtänyt mitä Metabolix kirjoitti.
Stadion1234 kirjoitti:
Siis vastauksia. Joku varmasti tietää.
No en tiennyt, mutta googletin. Tuossa yksi joka mainostaa osaavansa HTML-to-EXE ja ilmainen:
https://www.helpandmanual.com/ewriter/index.html
Stadion1234 kirjoitti:
Kaksi syytä
- Ohjelmakoodi pitää salata. Ei kaikkien koodareitten saatavaksi.
- Lisenssin takia jotta saa lisenssin ruudulle kryptattuna
Sinänsä varmaan tiedostat, että tuollainen web-sivun paketointi on helposti kierrettävissä eikä todellisuudessa suojaa sen enempää kuin obfuskointi yleensäkään. Tietysti jos sisältö on kryptattu, niin sitten ilman kryptausavainta sitä ei saa auki. Saman siis voisit saada aikaiseksi ihan netissä olevalla sivustolla (sekä kryptauksen että obfuskoinnin) ilman mitään turhaa exeä.
Grezin linkittämä eWriter Creator -ohjelma toimii juuri mainitsemallani periaatteella, eli sivuja ei mitenkään käännetä EXE:ksi, vaan sivut paketoidaan valmiin ohjelman kylkeen ja näytetään ilmeisesti Delphin TWebBrowser-komponentilla, Windowsin tarjoamalla selainmoottorilla, joka taitaa edelleen olla IE. Eli se siitä modernin tekniikan tukemisesta. (Nämä perustuvat empiirisiin havaintoihin, koska itse en ainakaan löytänyt äkkiseltään mistään kyseisen ohjelman lähdekoodia, vaikka sivulla väitetään, että se on GPL-lisensoitu.)
Mutta todennäköisesti tuo on juuri sellainen ohjelma, jota kysyjä tarkoitti ja jollainen kaveriltakin löytyy.
Taisin ilmaista itseäni huonosti. Uusi yritys : olen tehnyt aika mittavan HTML&JavaScript-ohjelman, joka oli aluksi kotisivullani. Se opettaa epäorgaanista kemiaa. Sitten hoksasin, että "liian" hyvä ilmaiseksi annettavaksi ja otin pois kotisivuiltani. Sitä siis pystyi ajamaan omalla koneella valitsemalla hiiren oikealla -> Open with -> Internet Explorer (tai mikä selain vaan). Nyt haluan siitä omalla koneella pyörivän exe:n jonka koodia ei enää voi kopioida ja voin laittaa koodiin lisenssitunnuksia ja kenties myydä. Itsekästä.
Kokeilen kunhan ehdin sitä EC Software\eWriter:ia.
Sääli ettei pysty näyttämään tässä kuvaruutukopiota. Se selittäisi paljon kemian tuntijalle&opiskelijalle.
Kannattaa aina kertoa kysymyksessä se oikea ongelma eikä kuviteltu ratkaisu. Olet mennyt metsään jo siinä vaiheessa, kun olet päättänyt, että ongelman ratkaisu olisi exe-tiedosto.
Nettisivustolle on helppo tehdä pakollinen kirjautuminen tai muita mielivaltaisia rajoituksia. Nettisivustolla materiaalia voi ladata pala kerrallaan niin, että käyttäjä ei voi ainakaan helposti tallentaa koko sivustoa. Nettisivustolla voi tarjota määräaikaisia käyttöoikeuksia ja kokeilujaksoja ynnä muuta. Ylipäänsä netti on se paikka, jossa asioita voi kaikkein parhaiten valvoa.
Erillisen ohjelman voi aina kopioida ja viime kädessä myös hakkeroida, joten se ei ratkaise ongelmaasi eli ohjelman jakelun rajoittamista. Erilliseen ohjelmaan on myös vaikea tehdä sen hienompaa tarkastusta kuin jokin koodi ("lisenssitunnus") syötettäväksi. Tarkempi käyttöoikeuksien tarkastaminen vaatii käytännössä – yllätys yllätys – netissä toimivan palvelimen, ja silti rajoituksia on usein helppo kiertää, jos niihin ei ole panostettu ihan merkittävästi vaivaa.
Stadion1234 kirjoitti:
(06.11.2021 21:22:05): Taisin ilmaista itseäni huonosti. Uusi yritys...
Juuri tuosta Metabolixin mainitsemasta syystä pyysinkin tarkennusta. Olen samaa mieltä Meatballsin ja Grezin kanssa - mikään exe-tiedosto ei ole hyvä ratkaisu ongelmaasi. Laita ohjelmasi sen sijaan webhotelliin ja koodaa kirjautuminen käyttöoikeuden varmistamiseksi.
Koodin voi suojata kopioinnilta myös webissä, mutta todennäköisesti ketään ei kiinnosta kopioida koodejasi ellet ole keksinyt jotakin todella mullistavaa.
"Koodin voi suojata kopioinnilta myös webissä, mutta todennäköisesti ketään ei kiinnosta kopioida koodejasi ellet ole keksinyt jotakin todella mullistavaa."
- Et tiedä mitä olen keksinyt. Tein sitä koodia kauan ja se preppaa epäorgaanisten molekyylien nimiä ja kaavoja (muodostaa molekyylejä palasista randomeilla) ja antaa selviä ohjeita jos vastaa väärin. Oli tosi ongelmallista käydä läpi eri tapoja miten ihminen voi vastata väärin.
Joo te olette hirveän viisaita mutta apua ei taida siis tulla.
Yritän löytää sen vanhan kaverini joka tiesi ja varmaan auttaa...
Stadion1234 kirjoitti:
apua ei taida siis tulla.
Noh noh, eipäs puhuta paskaa.
Apu ei taida siis kelvata.
Tämähän on suorastaan huvittavan klassinen "helmiä sioille" tilanne.
Tosiasiassahan olet saanut paljon apua:
1) Kattavan selityksen mitä html->exe tarkoittaa (vaikka et sitä näköjään ymmärtänytkään)
2) vastauksen täsmälleen alkuperäiseen kysymykseesi
3) Hyviä vinkkejä miten asian voisi tehdä paremmin
4) Täsmällisiä huomioita tilanteestasi (vaikka et haluakaan tosiasioita myöntää)
Toki kannattaa kysyä vielä siltä kaverilta, niin voit saada tiedon hänen käyttämästään ohjelmasta, joka käytännössä tekee saman kuin tuo jo mainitsemani ohjelma.
Stadion1234 kirjoitti:
Et tiedä mitä olen keksinyt.
Ei sillä ole merkitystä. Vesikuusen viesti on silti paikkansapitävä.
Mistä v*****a näitä JavaScript salailijoita aina vaan riittää..? 🤢
neosofta kirjoitti:
Mistä v*****a näitä JavaScript salailijoita aina vaan riittää..? 🤢
Äidin
electron.
Stadion1234 kirjoitti:
(07.11.2021 04:59:52): "Koodin voi suojata kopioinnilta myös webissä...
Eikö tätä ohjelmakoodia voi levittää vain vaikkapa maksaville asiakkaille? Kuitenkin nykyaikana mahdollista luoda hyvinkin yksinkertaisesti erilaisia maksutapahtumia.
Jos koodi todella on niin mullistavaa, niin eikö sen tuottamaa dataa voi tarjoilla vain palvelimelta, jolloin sen lähdekoodia ja logiikkaa ei näe suoraan, vaan pelkästään sen tuottamaan dataa?
Stadion1234 kirjoitti:
Mistä netistä löytyisi kikka jolla saisin HTML-ohjelman (sisältää JavaScriptiä) konvertoitua exe:ksi ja ilmaiseksi. Älä pelkästään kuuklaa, se tuo paljon vääriä vastauksia. Ihan sellainen että olet myös kokeillut. Kyllä varmasti on jokin kuten muitakin ilmaisohjelmia.
joo en kuuklannut.
painat hiiren oikeella napilla siitä ja sitten valitset "nimeä uudelleen" ja sitten laitat siihen uuden nimen ja .exe ja valmista tuli.
Kuten yllä jo mainittiinkin, voit kapseloida verkkosivut tekemällä sovelluksen joka näyttää ko.sivustoa, joko lokaalisti tai verkosta. Tämän voit tehdä electornilla, C#:lla tai käytännössä millä tahansa valitsemallasi (nykyaikaisella) kielellä.
Tässä koko paska lokaalina:
using System.Windows.Forms; using System.Diagnostics; using Microsoft.VisualBasic; namespace Testi { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { // Interaction jutska vaatii VisualBasic importoinnin Interaction.Shell("CMD.exe /C %userprofile%\\source\\repos\\Testi.bat"); webBrowser1.IsWebBrowserContextMenuEnabled = false; webBrowser1.Url = new Uri("http://localhost:63600/"); //IIS palvelimelle rekisteröity ASP.NET Page //(:63600/ IIS antaa rekisteröinnin yhteydessä) } private void Form1_FormClosing(object sender, FormClosingEventArgs e) { Process[] p = Process.GetProcessesByName("iisexpress"); if (p.Length > 0) { for (int i = 0; i < p.Length; i++) { p[i].Kill(); } } p = null; webBrowser1.Dispose(); this.Dispose(); } } }
REM Testi.bat cd C:\Program Files (x86)\IIS Express iisexpress /systray:true /config:%userprofile%\source\repos\TestiSivu\.vs\TestSivu\config\applicationhost.config /site:TestiSivu
Ulkoiselta palvelimelta ladattaessa homma kevenee huomattavasti, elikä voit heivata kaiken IIS-kaman pois
mikäli ei viitsi rakennella tuota exe -jutskaa niin oheisen mallin mukaisen .bat tiedoston klikkaus riittää mikäli lokaalit ympyrät ja sivu rekisteröity...
CMD.exe /C %userprofile%\source\repos\Testi.bat | start http://localhost:63600/
Stadion1234 kirjoitti:
"Koodin voi suojata kopioinnilta myös webissä, mutta todennäköisesti ketään ei kiinnosta kopioida koodejasi ellet ole keksinyt jotakin todella mullistavaa."
- Et tiedä mitä olen keksinyt. Tein sitä koodia kauan ja se preppaa epäorgaanisten molekyylien nimiä ja kaavoja (muodostaa molekyylejä palasista randomeilla) ja antaa selviä ohjeita jos vastaa väärin. Oli tosi ongelmallista käydä läpi eri tapoja miten ihminen voi vastata väärin.
Onko sinulla sitten tilastoja siitä, kuinka moni tuota ilmaista sovellusta on käyttänyt? Kun teet sovelluksesta maksullisen, niin käyttäjämäärä laskee varmaan 10 %:iin tai alemmas. Jos teet maksullisen sovelluksen hankkimisesta vaikeaa, niin luku putoaa radikaalisti pienemmäksi; luultavasti nollaan.
Eivät ihmiset mitään exejä enää halua. Sovelluksen tulisi toimia ennemmin kännykässä. Tietokoneella pelaavat käyttäjätkin haluavat helppoutta. Postimyynti on mennyttä aikaa PC-softamarkkinoilla.
Miksi et tekisi niin kuin kaikki muutkin eli pistät jakoon hieman kevennetyn ilmaisversion jossa ponnahtelee kaikenlaista häiritsevää mainossälää juuri kun alkaa tuntua mielenkiintoiselta, jonka jälkeen esiin ponnahtaa tietysti vilkkuva linkki maksulliseen PRO-versioon.
muuskanuikku kirjoitti:
Tietokoneella pelaavat käyttäjätkin haluavat helppoutta
Tottakai, mutta käyttäjät ei halua myöskään sitä kiskuri-saas-paskaa jota tulee joka torvesta, kun kaikki softafirmat on äkänneet, että sillä tienaa paljon enemmän fyrkkaa kun käyttäjät ei edes omista ohjelmaa, vaan maksavat sen käytöstä. Niin, että kyllä mä (ja uskoisin että moni muukin) haluaisi niitä "exejä" enemmän kun saas-paskaa (ja varsinkaan mitään selainvirityksiä).
carabia kirjoitti:
Niin, että kyllä mä (ja uskoisin että moni muukin) haluaisi niitä "exejä" enemmän kun saas-paskaa (ja varsinkaan mitään selainvirityksiä).
Monet web-sovellukset on nykyään PWA:na toteutettu, joten ne voi ladata/asentaa suoraan toimiviksi sovelluksiksi työpöydälle tai puhelimiin.
Taisi mennä ohi se suluissa ollut teksti, koska nuo pee vee aat tai muutkaan peeaat ei toimi ilman selainta.
carabia kirjoitti:
haluaisi niitä "exejä" enemmän kun saas-paskaa (ja varsinkaan mitään selainvirityksiä).
No alkuperäisen kysyjän kaipaamalla ratkaisulla siitä tulee joka tapauksessa "selainviritys", oli sitten exe tai ei.
carabia kirjoitti:
Taisi mennä ohi se suluissa ollut teksti, koska nuo pee vee aat tai muutkaan peeaat ei toimi ilman selainta.
Toki, mutta ei se selaimella aukea (tai no, aukeaa mutta ei siten miten verkkosivut vaan omassa ikkunassa, joka näyttää normaalilta sovellusikkunalta). Ja jokaisella on selain varmasti asennettuna, kyse on vain enginen käyttämisestä eikä siitä että pwa appi olisi vain selainlinkki.
Minä nyt vielä kuitenkin palaan hetkeksi asiaan.
Tuli mieleen vanhasta Paradox Pal-ohjelmoinnista,jossa
ohjelma oli tulkattua ASCII-tekstiä. Mutta siinä ASCII-ohjelman
sai sekoitettua ei-ihmisluettavaan muotoon.
Olisiko HTML&JavaScript:lle samantapaista?
Heti löytyi.
Minä en ainakaan enää ota selvää, kuin joistain "nimikkeistä".
Minä ainakin olen nyt tyytyväinen.
Seuraan kyllä vielä jonkin aikaa keskustelua/väittelyä
Tässä pieni pätkä malliksi sekoitetusta koodista :
+%29%7BAPU2%20%3D%201%3Bswitch%28APU%29%0A%7Bcase %201%20%3A%7BAPUs%20%3D%20KANIMI1s%5BKATIONINRO%5D%20+ %20ANNIMI1s%5BANIONINRO%5D%3Bbreak%3B%7Dcase%202%20%3A%0A %7BAPUs%20%3D%20KANIMI2s%5BKATIONINRO%5D%20+%20ANNIMI1s %5BANIONINRO%5D%3Bif%20%28APUs.substring%280%2C2%29%20%3D %3D%20%27@@%27%29%20APU2%20%3D%200%3Bbreak%3B%7Dcase %203%20%3A%7B%0AAPUs%20%3D%20KANIMI1s%5BKATIONINRO%5D%20+ %20ANNIMI2s%5BANIONINRO%5D%3Bif%20%28APUs.substring %28APUs.length%20-%202%2CAPUs.length%29%20%3D%3D%20%27@@ %27%29%20APU2%20%3D%200%3Bbreak%3B%7Dcase%204%
Siis pitäisikö ohjelman "salaiset" osat suojata tuollaisella metodilla, vai mikä olisi tavoite tällä kertaa. Tuollainen suojaus aukeaa hetkessä, joten mitään todellista vaikutusta tuolla ei ole.
){APU2 = 1;switch(APU) {case 1 :{APUs = KANIMI1s[KATIONINRO] ANNIMI1s[ANIONINRO];break;}case 2 : {APUs = KANIMI2s[KATIONINRO] ANNIMI1s [ANIONINRO];if (APUs.substring(0,2) = = '@@') APU2 = 0;break;}case 3 :{ APUs = KANIMI1s[KATIONINRO] ANNIMI2s[ANIONINRO];if (APUs.substring (APUs.length - 2,APUs.length) == '@@ ') APU2 = 0;break;}case 4%
Stadion1234 kirjoitti:
Tässä pieni pätkä malliksi sekoitetusta koodista
En nyt laskisi URL enkoodausta miksikään sekoitukseksi.
jos jotain selainskeidaa virität, niin käyttäjällä on jokatapauksessa pääsy sun purkualgoritmiinkin. ja sen jälkeen vielä siihen javaskriptimössöön tai webasmmössöön. jos sulla on jotain helvetin hienoa, ja käytännöllistä, niin sitä tuskin on väkisin ajettava selaimessa muutenkaan. toki sittenkin pääset käsiksi käskyihin (ja dataan:)), joskin vaatii paljon enemmän työtä ja ymmärrystä kun tapittaa sitä selainmössöä. jokatapauksessa, haiskahtaa ehkä siltä että mietit liikaa suojausta ja ehkä liian vähän miten saisit käyttäjiä (ostajia tms).
Tämä on niin hauska ketju, että on aivan pakko pukata lisää sälää sekaan...
Langan aloittajan suurin huolenaihe on ilmiselvästi se, että joku v***n teinihakkeri mahdollisesti pöllii hänen suurella vaivalla kyhäämänsä JavaScript väännökset ja pahimmassa tapauksessa joko onnistuu myymään ko. tuotokset tai sitten ihan vaan vmäisyyttään panee ne jakoon aivan ilmaiseksi.
Tällainen luikuripeli on (lähes) estettävissä toiseksi edellisessä vietissäni kuvailemallani C# selain viritelmällä. Eli nimimerkki Stadion1234 voisi aivan surutta pukata koko viritelmänsä lähes sellaisenaan yksinkertaisen ASP.NET sivun HTML osioon, kuitenkin niin että HEAD osassa esitellään vain mahdollisesti tarvittavat kolmannen osapuolen skriptit (esim. googlen jquery-latest.min.js). Omat skriptit voi sitten pukata ClientScriptManagerilla vaikkapa StartUpScriptinä lataamisen alussa samaisiin headereihin.
Nyt jos ASP.NET sivu on palvelimella voidaan omat skriptit sijoittaa esim. sivuston /App_Data kansioon yksinkertaisesti sellaisinaan jolloin ne voidaan lukea suoraan IO.File systeemillä ClientScriptManageriin merkkijonona. ASP.NET palvelin estää tiedostojen lataamisen (download) App_Data kansiosta vaikka URL olisikin tiedossa (web.config tiedostossa voi sitten asetella lisää rajoituksia). Mikäli taas haluaa käyttää .dll tiedostoja, niin mikään ei estä sellaista luomasta eli siis pukkaamasta jonkin funktion sisään koko JavaScriptiä (tai useampia) merkkijonona, mistä ne on haettavissa yksinkertaisella kutsulla. Nyt ei löydä edes joka toinen teinihakkeri 😊. No kehitelläänpä hieman lisää, eli asiakasohjelman (luomamme selainviritelmä) voi säätää lataamaan kryptattu URL ASP.NET sivullemme esim. vaikkapa jostain Arabiemiraateissa sijaitsevan SQL-serverin kannasta, jonka salauksen sitten asiakasohjelmamme purkaa lennossa.
TÄMÄN JÄLKEEN VOI SITTEN MIETISKELLÄ, ETTÄ MITÄ V****A JÄIKÄÄN KÄTEEN 🤢
Näinpäs muuten onkin kuten "Teuro" näytti.
Kiitos.
Ihan kauniisti kauniiksi se ei aukaissut, mutta luettavaksi kyllä.
Väitelkää lisää, pyydän...
Niin JS-koodin sekoittamiseen on ihan oikeita työkaluja, joita löytyy termillä JS obfuscator. Se on ihan hyvä apu varmaan haluamaasi käyttöön, kun ilmeisesti pelkäät arvokkaan koodin varastamista.
Sinällään kyllä huvittavaa, että ollaan vuosien ajan tehty monien kymmenien tuhansien eurojen edestä javascript-koodia, jota ei ole ikinä tarvinnut obfuskoida.
Ehkä pitäisi vaihtaa ala kemian puolelle.
Lebe80 kirjoitti:
Sinällään kyllä huvittavaa, että ollaan vuosien ajan tehty monien kymmenien tuhansien eurojen edestä javascript-koodia, jota ei ole ikinä tarvinnut obfuskoida.
Pikemminkin on ihan luonnollista, että mitä vähemmän on osaamista, sitä arvokkaampana ja ainutlaatuisempana omaa tuotostaan pitää.
En nyt siis sano, etteikö aloittajan systeemi olisi hieno ja arvokas, mutta koodina se tuskin on sellaista että sitä kukaan haluaisi sen enempää tutkia. Idean ja toteutuksen voi kopioida koodia näkemättäkin.
Menee samaan kategoriaan kuin: Mitä enemmän tietää, sitä vähemmän ymmärtää tietävänsä.
Hauskinta tässä salailuhommassa on, että markkinoilta löytyy näitä JS Obfuscator PRO viritelmiä ja samat tyypit myy eri sivustolla JS DeObfuscator PRO viritelmiä samaan tahtiin 😜
* Sääli ettei löytynyt foliohattu character emojia *
Saahan sitä oman koodin tutkimista hankaloittaa, vaikkei siitä varsinaista hyötyä ole. Katsoohan ihmiset jääkiekkoakin - harrastuksensa kullakin.
Jos siis jostain syystä haluaa oman koodin tutkimista hankaloittaa, niin kannattaa käyttää jotain suosittua ilmaista obfuskaattoria. Toki koodin saa beautifierillä käden käänteessä taas luettavaan muotoon, mutta mahdollisten kuvaavien muuttujien, funktioiden, ym nimien ja kommenttien poistuminen tekee tutkimisesta hankalampaa.
Näin toimien saa saman hyödyn kuin maksullisella "PRO" obfuskaattorilla, muttei tue rahallisesti käärmeöljynmyyjiä.
Grez kirjoitti:
… Katsoohan ihmiset jääkiekkoakin - harrastuksensa kullakin
Ilman jääkiekkoa suomalaiselle panimoteollisuudelle olohuoneista käsin suunnattu tuki jäisi kyllä merkittävästi vähemmälle 😜
Grez kirjoitti:
… Katsoohan ihmiset jääkiekkoakin - harrastuksensa kullakin
Koodaahan ihmiset java_scriptiäkin ja tituleeraavat itseään insinööriksi... Toki, kuten sanottua, harrastuksensa kullakin.
Yhteenvetona: Mitä enemmän salaillaan sitä vähemmän selaillaan 😜
Teistä oli arvostelijoita ja apuja ja jne. Nyt hetkeksi laitan sivulleni näkymään PIENEN ohjelman osaamisen. Se osaa antaa paljon muutakin vihjeitä. En ala luettelemaan, mutta ehkä nyt sitten laitan yleiseen jakeluun. Se tosiaan opettaa nimeämään epäorgaanisia yhdisteitä.
markkustaven.blogspot.com
Ctrl-f "julkkis" niin löydät
Tulipas hiljaista... Ohjelma tunnistaa ISOT ja pienet kirjaimet ja turhat välilyönnit ja väärät kertoimet/nimet ja jnejne mitä olen laittanutkaan sen tekevän. Älä opeta kalaa uimaan. Nyt häivyn ainakin tästä asiasta koska te ette tunne kemiaa kuten minä. Saatan palata kiusaksenne jossakin muussa asiassa...
Ihan kivan näköinen pikku testeri, ei mitään ihmeellistä koodissa ja idean voisi varmasti helposti kopioida jopa tuota videopätkää katselemalla.
Isoin työhän tuossa on ollut määritellä nuo erilaiset säännöt, miten mistäkin virheistä ilmoitetaan. Koodi sitten perusbulkkia.
Jos tuota haluaisi ihan oikeasti suojata, niin paras keino olisi, kuten jo mainittukin, laittaa tuo pyörimään palvelimella. Tällöin pelaaja ei pääsisi kopioimaan dataa eikä koodia itselleen, toisin kuin mitä tahansa muuta puheena ollut "suojaus"menetelmää käyttäen.
Ah ja voi, vielä minunkin piti tulla... Totta että koodi ei ole PER SE (opetelkaa latinaa ;^) ) mullistava MUTTA opettava (ja helevetin pitkä). Ja se on pääasia. Kemian alkeita (tai ei ehkä ihan alkeita) opiskellessani, niin näitä kysyttiin. Eli piti osata tunnistaa ja muodostaa molekyylejä sen osista, anioneista ja kationeista. Tämän ohjelman avulla voi harjoitella itsenäisesti. Laitoin siihen paljon vinkkejä joita ope kyselisi kokeissa tai luokan edessä.
(Minä ainakin opin tätä tehdessä)
Mutta kiitos teille
Arvoisa teidän akateeminen ylimielisyytenne, ylen PER SE koodinne teille kuitenkin vaikuttaa olevan, kun sitä niin kovin tahdotte salata. Mitä tulee sitten itse viritelmänne ideaan niin sitähän on sovellettu varamaan jo kivikaudella.
* Aivan exe'lanttia, tohtorin foliohatun arvoista työtä *
Stadion1234 kirjoitti:
Tulipas hiljaista...
... koska kemiaohjelmasi kuvakaappaus ei ilmeisesti kiinnosta tämän keskustelun osallistujia ja blogisivusi on mykistävän kauhea.
Stadion1234 kirjoitti:
Nyt häivyn ainakin tästä asiasta koska te ette tunne kemiaa kuten minä.
Luulin, että tässä keskusteltiin HTML-ohjelman julkaisemisesta, salaamisesta ja lisensoinnista (eli rahastamisesta). Mutta hienoa, jos tämäkin ongelma ratkeaa epäorgaanisen kemian yhdisteiden nimeämisen taidoilla.
Kovastippa tuo kiinnosti.
Happamia sanoi...
En olisi suoralta kädeltä uskonut, että joku saisi tehtyä vielä vaikeaselkoisemmat sivut kuin hannutapio.
Mahdolliset lääketieteelliset diagnoosit sivuuttaen, ei kai tässä voi kuin onnitella.
carabia kirjoitti:
… diagnoosit sivuuttaen, ...
Tarkoititko: diagnoosit sivuttaen?
Jatketaanpas tätä kapselointiskeidaa (VB.NET Windows Desktop Application - Local)
Eli väännetään eka työkalu jolla saadaan HTML - JS - CSS koodit melko kätevästi String muotoon
'Formille: MenuStrip, WebBrowser, OpenFileDilog, SaveFileDialog & pari nappia Imports System.IO Public Class Form1 Dim strArray As String() Dim finfo As FileInfo = Nothing Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load SaveToolStripMenuItem.Enabled = False Button1.Enabled = False Button2.Enabled = False End Sub Private Sub OpenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles OpenToolStripMenuItem.Click TextBox1.Clear() OpenFileDialog1.FileName = "" OpenFileDialog1.RestoreDirectory = True OpenFileDialog1.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) OpenFileDialog1.Filter = "html htm js css (*.html *.htm *.js *.css)|*.html;*.htm;*.js;*.css" If OpenFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then TextBox1.Text = File.ReadAllText(OpenFileDialog1.FileName) SaveToolStripMenuItem.Enabled = False Button1.Enabled = True Button2.Enabled = False End If End Sub Private Sub SaveToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles SaveToolStripMenuItem.Click finfo = New FileInfo(OpenFileDialog1.FileName) SaveFileDialog1.FileName = finfo.Name.Replace(finfo.Extension, "") SaveFileDialog1.RestoreDirectory = True SaveFileDialog1.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) SaveFileDialog1.Filter = "text (*.txt)|*.txt" If SaveFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then If File.Exists(SaveFileDialog1.FileName) Then FileSystem.Kill(SaveFileDialog1.FileName) End If File.WriteAllText(SaveFileDialog1.FileName, TextBox1.Text) End If End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click strArray = TextBox1.Text.Split(Environment.NewLine.ToCharArray()) TextBox1.Clear() For i As Integer = strArray.GetLowerBound(0) To strArray.GetUpperBound(0) If strArray(i).Trim <> String.Empty Then strArray(i) = strArray(i).Replace(Chr(34), Chr(34) + " + Chr(34) + " + Chr(34)) strArray(i) = Chr(34) + strArray(i) + Chr(34) If i < strArray.GetUpperBound(0) Then strArray(i) += " + Environment.NewLine +" TextBox1.Text += strArray(i) + Environment.NewLine End If End If Next Erase strArray finfo = New FileInfo(OpenFileDialog1.FileName) Select Case finfo.Extension.ToLower() Case ".js" ' If … Then siltä varalta, että kopioi HTML koodin seasta ' tageineen ja tallentaa suoraan sellaisenaan tiedostoksi If Not TextBox1.Text.ToLower.Contains("<script>") Then TextBox1.Text = Chr(34) + "<script>" + Chr(34) + " + Environment.NewLine + " + Environment.NewLine + TextBox1.Text End If If Not TextBox1.Text.ToLower.Contains("</script>") Then TextBox1.Text += Chr(34) + "</script>" + Chr(34) End If Case ".css" If Not TextBox1.Text.ToLower.Contains("<style>") Then TextBox1.Text = Chr(34) + "<style>" + Chr(34) + " + Environment.NewLine + " + Environment.NewLine + TextBox1.Text End If If Not TextBox1.Text.ToLower.Contains("</style>") Then TextBox1.Text += Chr(34) + "</style>" + Chr(34) End If Case ".html", ".htm" If Not TextBox1.Text.ToLower.Contains("</html>") Then TextBox1.Text += Chr(34) + "</html>" + Chr(34) End If End Select If TextBox1.Text.LastIndexOf(" + Environment.NewLine +" + Environment.NewLine) = Len(TextBox1.Text) - Len(" + Environment.NewLine +" + Environment.NewLine) Then TextBox1.Text = TextBox1.Text.Substring(0, Len(TextBox1.Text) - Len(" + Environment.NewLine +" + Environment.NewLine)) End If SaveToolStripMenuItem.Enabled = True Button1.Enabled = False Button2.Enabled = True End Sub Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click If TextBox1.Text IsNot String.Empty Then Clipboard.SetText(TextBox1.Text) End If End Sub End Class
Viritelmän voi sitten hakea käyttöön esim. Visual Studion External Tools osioon.
Tältä näyttäisi sitten pelkistetty VB.NET esimerkki (koko paska on siis yhden exe'lantin sisällä):
'Formilla ainoataan WebBrowser Imports System.IO Public Class Form1 Private MyHtml As HtmlContent = Nothing Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load MyHtml = New HtmlContent() WebBrowser1.IsWebBrowserContextMenuEnabled = False WebBrowser1.AllowNavigation = False WebBrowser1.AllowWebBrowserDrop = False WebBrowser1.DocumentText = MyHtml.GetContent End Sub Private Class HtmlContent Private content As String = String.Empty Public Sub New() GetContent = "<!DOCTYPE html>" + Environment.NewLine + "<html xmlns=" + Chr(34) + "http://www.w3.org/1999/xhtml" + Chr(34) + ">" + Environment.NewLine + " <head>" + Environment.NewLine + " <meta http-equiv=" + Chr(34) + "X-UA-Compatible" + Chr(34) + " content=" + Chr(34) + "IE=edge" + Chr(34) + " />" + Environment.NewLine + " <title>My Page</title>" + Environment.NewLine + " <meta charset=" + Chr(34) + "UTF-8" + Chr(34) + "/>" + Environment.NewLine + " <script type=" + Chr(34) + "text/javascript" + Chr(34) + " src=" + Chr(34) + "http://code.jquery.com/jquery-latest.min.js" + Chr(34) + "></script>" + Environment.NewLine + " </head>" + Environment.NewLine + " <body>" + Environment.NewLine + " <script>function doSomething(){document.write('TOIMII');}</script>" + Environment.NewLine + " </body>" + Environment.NewLine + "</html>" End Sub Public Property GetContent() As String Get Return content End Get Private Set(ByVal value As String) content = value End Set End Property End Class Private Sub WebBrowser1_DocumentCompleted(sender As Object, e As WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted 'Pikku testi WebBrowser1.Document.Body.InnerHtml += "<button onclick=" + Chr(34) + "doSomething()" + Chr(34) + ">Nappi</button>" End Sub End Class
Ai niin, melkein unohtui tuo lisenssipuoli: DWYFW LICENCE (Do Whatever You Fucking Want)
Public Sub New() 'Vinkki: korvaa edellisen koodiesimerkin vastaava osuus tällä GetContent = "TO DO: Replace this with your to string converted HTML code" End Sub
Ja vie templaatiksi:
Project -> Export Template -> [X] Project template ->
Anna jokin nimi & kuvaus (description) esim. HTML kapselointiskeidaa,
[X] Automatically import the template into Visual Studio & klikkaa Finish
Tämä alkaa ryöstäytyä käsistä.
Alkuperäinen kysymys oli "HTML exe:ksi" mutta meni överiksi...
Mutta hienoa että meni keskusteluksi/väittelyksi.
Jos "Teuro" olet vielä langoilla, niin saatko purettua tämän ohjelmapätkän
Mod. poisti jotain binääridataa. Kysyjälle tiedoksi, että binääridataa ei voi käsitellä tekstinä, koska mm. tavut 0, 10 ja 13 muuttuvat käsittelyssä. Eli et saisi enää itsekään sitä ohjelmanpätkää purettua.
Tässä pätkä koodia koko skeidasivustasi .exe pakattuna (.NET Framework 4.5)
Mod. poisti tästäkin binäärisotkun.
Meinaatko siis työntää tämän skeidan jonkin electron(tms)-paskeen sisään?
Jos et, niin millään ei ole mitään väliä. Ja jos oikeen motivoituu, niin tuon saa ongittua sieltä electronroskastakin. En vain oikein jaksa kuvitella, että tuo sun softasi on niin mullistava, että sitä kukaan kopioisi, varsinkaan näin pienellä markkinalla (kotimaiset kemistioppilaat, vai hä?)
Slack esim. väännetty tuon skeidan sisään.
noutti kirjoitti:
Slack esim. väännetty tuon skeidan sisään.
Oliko tämä jotenkin relevantti tieto keskustelun kannalta?
Mitä skeidan sisältä odottaisi löytyvän (ilman, että mennään molekyylitasolle)?
Eli siis mitä eroa on kananpaskan valkoisen ja mustan osan välillä? No nythän mää hokasin; It's only difference between the colors, otherwise it's just all the same shit. Eli saiko arvoisa hänen akateeminen ylimielisyytensä nyt siis kalan vaiko vain ainoastaan skeidaa?
carabia kirjoitti:
noutti kirjoitti:
Slack esim. väännetty tuon skeidan sisään.
Oliko tämä jotenkin relevantti tieto keskustelun kannalta?
Siten, että kilometriesi puute paistaa tänne asti.
Kun nyt kerran alettiin niin tässä lisää
noutti kirjoitti:
carabia kirjoitti:
noutti kirjoitti:
Slack esim. väännetty tuon skeidan sisään.
Oliko tämä jotenkin relevantti tieto keskustelun kannalta?
Siten, että kilometriesi puute paistaa tänne asti.
Jos luulet, että slack on suosittu teknisen toteutuksensa (varsinkaan työpöytäsoftansa) takia, niin taidat olla sinä jolta puuttuu metrejä, tai ehkä senttejä. Niin tai näin...
carabia kirjoitti:
(15.11.2021 23:36:50): ”– –” Jos luulet, että slack on suosittu teknisen...
En pidä chattisovelluksia hirveän uniikkeina ideoina, mutta jos pidät electronia paskana niin kannattaisi hieman tutkia taustoja ennen, kuin pätee. Olen itse tehnyt eräälle suurelle sähköyhtiölle asiakashallintasoftaan wrapperia electronia ja moitteita ei löytynyt.
Projekteja tullut tehtyä konsulttina ~100 ja arkkitehtina sen jälkeen aikas monta muuta. CTO:na vääntänyt asioita nyt muutaman tovin. Eli minulla niitä kilometreja löytyy, jonka takia en jaksa lähteä venyttelemään nettikikkeliäni hirveästi. Työkalut ovat aika toissijaisia reaalimaailmassa. Jos se excel taulukko ajaa asiansa niin en lähde vikisemään toteutusta Go:lla.
Niin, en todella uskokaan (enkä väittänytkään) että sikariportaasta kukaan kitisee, jos electronin avulla samoista webbideveistä saadaan irti myös työpöytäsoftat ja säästetään fyrkkaa vääntämällä älytöntä bloattia. Menikö pointti ohi?
carabia kirjoitti:
Niin, en todella uskokaan (enkä väittänytkään) että sikariportaasta kukaan kitisee, jos electronin avulla samoista webbideveistä saadaan irti myös työpöytäsoftat ja säästetään fyrkkaa vääntämällä älytöntä bloattia. Menikö pointti ohi?
:D
Mitä tulee kaikkeen tuohon edelliseen niin ne voi unohtaa (IE7 based .NET Framework WebBrowser control, Electron etc.)
https://developer.microsoft.com/en-us/microsoft-edge/webview2/
https://docs.microsoft.com/en-us/microsoft-edge/webview2/get-started/winforms
- No vihdoin ja viimein -
carabia kirjoitti:
Jos electronin avulla samoista webbideveistä saadaan irti myös työpöytäsoftat ja säästetään fyrkkaa vääntämällä älytöntä bloattia.
Ei kai siinä ole bloatin puolesta suurta eroa verrattuna moniin muihin ratkaisuihin (Java, .Net, tai edes Qt). HTML ja JS ovat ihan käteviä tapoja ohjelmien tekoon, ja jos erillinen EXE on tahtotila, niin olkoon.
Mutta onko valmiin nettisivun muuttaminen EXEksi mahdollista tai järkevää kysyjän tavoitteiden kannalta? Tuskin. Lisenssin tarkastus pitää tehdä kuitenkin itse, ja jos kerran koodi on jo netissä toimivaksi tehty, myös jatkokehitys on netissä helpompaa.
Ja kysyjän ylimielisestä änkyröinnistä huolimatta nämä esitetyt vaihtoehdot toimivat kaikki aivan kuten sanoin: valmiin selainmoottorin avulla. Eli varsinaista HTML-kääntäjää ei ole kukaan tänne löytänyt. ”Kyllä on!!! Olen joskus nähnyt”, no mistä muka päälle päin tiedät, millä tekniikalla toimivan ohjelman olet nähnyt?
carabia kirjoitti:
Niin, en todella uskokaan (enkä väittänytkään) että sikariportaasta kukaan kitisee, jos electronin avulla samoista webbideveistä saadaan irti myös työpöytäsoftat ja säästetään fyrkkaa vääntämällä älytöntä bloattia. Menikö pointti ohi?
Niin miten se on bloattia? Osaatko tätä täsmentää? Jos vaihtoehto on siis ylläpitää jokaiselle laitteelle omaa softaansa kun esim. joku rajapintamääritys muuttuu.
Metabolix kirjoitti:
Ja kysyjän ylimielisestä änkyröinnistä huolimatta nämä esitetyt vaihtoehdot toimivat kaikki aivan kuten sanoin: valmiin selainmoottorin avulla.
Tämä. Vaikka tekisit sen "exen" javalla tai C#:lla, siinä käytetään yhä jonkun selaimen moottoria jos pihvi on kapseloida verkkosivut. Ellet sitten koodaa omaa html/css/js tulkkia siihen exeesi.
Sinänsä jos tavoitteena on saada nimenomaan (Windowsissa toimiva) .exe, niin ei-bloatti vaihtoehto olisi koodata uusiksi jollain kielellä joka ei vaadi selainta. Tässä tapauksessa se olisi jopa helppoa moniin muihin weppiapplikaatioihin verrattuna käyttöliittymän yksinkertaisuuden ja ei-webbimäisyyden vuoksi.
Silti olen itsekin sitä mieltä ettei ole varsinaisesti järkeä käyttää edes sitä 2 tuntia koodausaikaa vain, jotta kaikilta kolmelta käyttäjältä saataisiin säästettyä muutamia megoja kiintolevytilaa. Semminkin kun aloittajalta ei välttämättä onnistuisi 2 tunnissa.
Toisaalta eihän tässä ketjussa moneen viestiin olekaan ollut kyse siitä mikä aloittajan kannalta olisi järkevää.
Grez kirjoitti:
Semminkin kun aloittajalta ei välttämättä onnistuisi 2 tunnissa.
Toki, jos lähtökohdaksi otetaan se, että kaupallista (oletan näin, kun sitä niin pitää suojata) softaa pitää kenenkä tahansa pystyä kirjoittamaan suoraan pystymetsästä.
Tiettyjen nimimerkkien olisi ehkä hyvä ajatella sitä kokonaisuutta, jota AP tässä koittaa suojata - jotain kysymyksiä, tekstiprompti ja sitten validointia jne. Tuon kirjoittaa samassa ajassa kasaan jollain järkevämmällä systeemillä kuin html/js, kuin minkä käyttää sen kapselointiin electronilla tahi muulla vastaavalla. Tämä siis olettaen, että halutaan se natiivi sovellus "exe", eikä mitään js-obfuskaatiota nettiin.
Keskustelussa on mennyt hieman puurot ja vellit sekaisin siinä mielessä, että ei ole ollenkaan enää selvää kumpaa halutaankaan tehdä
Metabolix kirjoitti:
Ja kysyjän ylimielisestä änkyröinnistä huolimatta nämä esitetyt vaihtoehdot toimivat kaikki aivan kuten sanoin: valmiin selainmoottorin avulla.
Ja vielä vastatakseni vastaänkyröijän ylimielisyyteen, jo paljon aiemmin (9.11) ehdotin, että ehkä olisi viisainta jos ei käyttäisikään mitään selainpohjaista toteutusta.
Aihe on jo aika vanha, joten et voi enää vastata siihen.