Suche ein Programm zum Entcodieren von Javascript-Inhalten

HALLO an Alle…!
Ich hab ein ganz großes Problem. Vor ungefähr vier Jahren habe ich eine JS.Datei geschrieben und dien Inhalt (Script) für „Fremd-User“ unlesbar codiert. Nun habe ich diese JS-Datei mit dem name „dmenu.js“ vor rund drei Tagen gefunden und wollte sie nach meinen jetzigen Bedürfnissen anpassen um sie für eine völlig neue Homepage benutzen/nutzen zu können.

Leider habe ich dabei das RIESEN-PROBLEM, dass ich den Code nicht mehr lesen kann. Klar, ich hatte früher ein Programm das mir den eigentlichen gesamten Inhalt unlesbar umgewandelt hat. LEIDER HABE ICH DIESES PROGRAMM NICHT MEHR. DEN VIELEN ABSTÜRZEN MEINES ALTEN RECHNERS ZUM DANK…:-/

Meine Frage wäre, ob von Euch jemand ein sicheres Programm zur Entcodierung (lesbar machen) von JS-Inhalten kennt und woher ich dieses Programm bekommen kann. Ja, ich weiß, das ist eine doch recht blöde Frage. Aber ich hab vergeblich im WWW gegoogelt um ein solches Programm zu finden. Das Angebot ist ja der Wahnsinn - weil total unübersichtlich viel…! Aber wer kann mir bitte verraten, welches Programm (Name, Hersteller etc.) das beste und günstigste ist…? Mit günstig meine ich nicht den Preis…
Hat jemand auch Erfahrung wie ich sonst noch unlesbaren Code wieder lesbar machen kann…? Hat jemand Infos für mich im Hinblick auf die verschlüsselten Scripte…?
Es brauch auch nur eine Tabelle sein, auf der ich sehen kann wie Zahlen, Buchstaben und Sonderzeichen wie das @ oder der „/“ Slash oder Back-Slash „“ etc. in dem unlesbaren Script der JS dargestellt sind oder werden…

Liebe Leute, ich bin euch für jede noch so kleine Hilfe sehr dankbar…jetzt schon…!
Also, ich freue mich auf Eure Tipps und Ratschläge…sehr…! Danke und an alle noch einen wunderbaren Tag…!
Gruß MJE

Hi

sorry vlt hab ich deine Frage falsch verstanden…

Du hast also eine java script (javascript != java) Datei etwas unleserlich gemacht in dem du Sonderzeichen Buchstaben und Zahlen in deren Unicode-Repräsentation umgewandelt hast und suchst nun eine Tabelle wo du schauen kannst, welches Zeichen wie kodiert wurde alternativ (bzw bevorzugt) sogar ein Programm was das für dich macht?

Grüße

Hallo @jo!..:smile:
Nein - Du hast diese Frage genau richtig verstanden…:smile:
Mein JS ist komplett verschlüsselt - also, alles was ich damals in diese Datei hinein geschmiedet habe, ist von mir selbst damal mit einem Programm verschlüsselt wurden.
Das weil ich darin damals ein Code verstecken wollte, der als so genanntes Banner mit Link zu meiner damaligen Seite versteckt werden sollte… Die Seite TuWA habe ich ja nicht mehr und wollte das besagte Script meiner neuen Seite anpassen…
Ja, und da konnte ich zwar die gängigsten Variablen wie Slashs oder entschlüsseln, aber eben nicht das andere in dieser JS-Datei…

@jo!, wenn Du mir helfen kannst, oder Du jemand kennst, der so ein Programm weiß, wäre es echt super und absolut zuvorkommend von Dir, mich zu unterstützen… Ich bin Dir dafür sehr dankbar…

Gruß MJE

Ach, ich hab vergessen, dir mal einen Ausschnitt von diesem Script hier hinein zu geben, damit du eine Vorstellung hast, was ich meine und damit Du vielleicht auch eventuell siehst, um was für eine Art Verschlüsselung es sich dabei handelt. Ich hab erfahren dass es für diese Verschlüsselungen mehrere Arten gibt… Ich glaube aber dass es sich hier um die Verschlüsselung ASCII handelt.

So nun aber mal ein Teil dieser Verschlüsselung…:

>> Free Version
//
// version 4.1
// E-mail: [email protected]
//***********************************************

//***********************************************
// Obfuscated by Javascript Obfuscator
// http://javascript-source.com
//***********************************************

var dqp=0;var ddjp=0;var db11=0;var dbIp=0;var dbcb=0;var dib=0;var dpl=0;var dbdp=0;var dbid=0;var dbb1=0;var dbdo=0;var ddp=0;var dp1=document;var _un=„undefined“;var dpcc=1000;var _nos=0;dplo();var dbj1=dib&&ddp

Hallo MJE365,

da man Javascript nicht wirklich verschluesseln kann sondern nur unleserlich (wie in deinem Beispiel auch geschehen) kann man einfach einen De-Obscurer benutzen. Das geht z.B. einfach online mit http://jsbeautifier.org

An die originalen Variablennamen und Kommentare kommt man leider nicht wieder heran, aber das macht den Code wesentlich lesbarer, so das man dann eine Chance hat die Logik wieder zu verstehen und mit manuellem wieder umbenennen der Variablen, Funktionen etc. wieder lesbar zu machen.

Gruss
Stefan

1 Like

Hallo Stefan…!
Genau das suche ich. Gibt es denn noch ein Programm das ich selbst für meine Zwecke nutzen kann, was dann ich als mein Eigen haben kann…zum Downloaden…? Das Obscurer-Programm darf ruhig was kosten…:smile: Hast Du eine Webseite, wo ich ein solches Programm kaufen kann…? Denn ich mache sehr viel mit Javascript und so… Da wäre es für mich vom Vorteil wenn ich ein eigenes Programm habe, um nicht ewig oft zwischen Online-Portalen hin und her wechseln zu müssen…

Danke sehr für deine Hilfe… Echt top…:smile:…!

Ach, eine Frage hab ich da noch…:
was muss ich dann in den HTML-Code als Verweis angeben damit mir das entsprechende Script dann in leserlicher Form ausgegeben wird…? DANKE DANKE…!

Hier habe ich mal das decodierte Script:

var dqp = 0;
var ddjp = 0;
var db11 = 0;
var dbIp = 0;
var dbcb = 0;
var dib = 0;
var dpl = 0;
var dbdp = 0;
var dbid = 0;
var dbb1 = 0;
var dbdo = 0;
var ddp = 0;
var dp1 = document;
var _un = „undefined“;
var dpcc = 1000;
var _nos = 0;
dplo();
var dbj1 = dib && ddp = 0;
window.p_LNX = nv.platform.indexOf(„Linux“) != -1;
if (RegExp(" AppleWebKit/").test(navigator.userAgent)) {
dbdo = 1;
return;
}
if (n.toLowerCase() == „konqueror“) {
dbdp = 1;
ddp = 1.6;
return;
}
if (a.indexOf(„Opera“) >= 0) {
dpl = 1;
ddp = pf(a.substring(a.indexOf(„Opera“) + 6, a.length));
dbb1 = ddp >= 7;
return;
}
if (n.toLowerCase() == „netscape“) {
if (a.indexOf(„rv:“) != -1 && a.indexOf(gk) != -1 && a.indexOf(ns) == -1) {
dbdp = 1;
ddp = pf(a.substring(a.indexOf(„rv:“) + 3, a.length));
} else {
dib = 1;
if (a.indexOf(gk) != -1 && a.indexOf(ns) > a.indexOf(gk)) {
var d = a.indexOf(ns + „6“) > -1 ? 10 : a.indexOf(ns) > -1 ? 9 : 0;
ddp = pf(a.substring(a.indexOf(ns) + d, a.length));
} else {
ddp = pf(v);
}
}
return;
}
if (dp1.all ? 1 : 0) {
dqp = 1;
ddp = pf(a.substring(a.indexOf("MSIE ") + 5, a.length));
ddjp = ddp >= 5;
db11 = ddp >= 6;
dbb1 = 1;
dbIp = !dbid;
dbcb = dbid;
}
}
dpc1();

function dpc1() {
window.dd1b = location.protocol == „https:“ ? 1 : 0;
keystrokes = 0;
dm_focus = 1;
dm_actKey = 113;
}

function do1(id) {
if (dp1.getElementById) {
return dp1.getElementById(id);
}
if (dp1.all) {
return dp1.all[id];
}
if (dp1.layers) {
return dp1.layers[id];
}
return null;
}

function dpq(id) {
if (!id) {
return null;
}
if (dqp && ddp 0) {
ex = dpco.exec(id);
if (!ex || !dbd[parseInt(ex[1])] || !dbd[parseInt(ex[1])].m[parseInt(ex[2])]) {
return null;
}
return dbd[parseInt(ex[1])].m[parseInt(ex[2])].i[parseInt(ex[3])];
} else {
ex = dpcq.exec(id);
if (!ex || !dbd[parseInt(ex[1])]) {
return null;
}
return dbd[parseInt(ex[1])].m[parseInt(ex[2])];
}
}
var dbb = new(function () {
var dd1 = this;
dd1.ddbo = function (base, dbc) {
for (var p in dbc) {
base[p] = dbc[p];
}
};
dd1.ddbo(dd1, {
ddlj: function (o) {
var op = dpl && ddp = 9) {
l -= dp1.body.leftMargin || 0;
t -= dp1.body.topMargin || 0;
}
return [l, t, wh[0], wh[1], d];
},
getWinParam: function (paramName, def) {
return paramName in window && typeof window[paramName] != _un ? window[paramName] : def;
},
dbdd: function (win) {
if (!win) {
win = window;
}
var l = 0,
t = 0,
w = 0,
h = 0;
if (dib || dbdp || dpl || dbdo) {
l = win.pageXOffset;
t = win.pageYOffset;
w = win.innerWidth;
h = win.innerHeight;
if (dbdp) {
if (win.scrollMaxX > 0) {
h -= dd1.ddcd();
}
if (win.scrollMaxY > 0) {
w -= dd1.ddcd();
}
} else if (!dbdo) {
if (win.document.width > win.innerWidth) {
h -= 16;
}
if (win.document.height > win.innerHeight) {
w -= 16;
}
}
} else {
var doc = dd1.ddqb(win.document);
if (doc) {
with(doc) {
l = scrollLeft;
t = scrollTop;
w = clientWidth;
h = clientHeight;
}
}
}
return [l, t, w, h];
},
join$: function () {
var a = arguments;
var dji = [];
for (var i = 0; i |\s+]?)(*|\w+)(:first|:last)?(.*)$/.exec(dol);
var dbdj = [];
var i = 0;
while (i ") {
dlp[dlp.length] = dlp[i].childNodes[chInd];
}
}
}
}
if (dol[3] == „:first“ && dbdj.length) {
break;
}
i++;
}
if (dol[3] == „:last“) {
dbdj = [dbdj[dbdj.length - 1]];
}
dlp = dbdj;
dol = dol[dol.length - 1];
}
dji = dd1.join$(dji, dlp);
}
return dji;
},
ddcc: [],
dbdq: function (ddqq) {
if (dd1.ddcc[ddqq]) {
return;
}
if (typeof dd1.workPath == _un) {
if (typeof dmWorkPath != _un) {
dd1.workPath = dmWorkPath;
} else {
dd1.workPath = „“;
var scripts = document.getElementsByTagName(„script“);
for (var i = 0; i ");
dd1.ddcc[ddqq] = 1;
},
dbqb: function (val) {
if (!/\D+/.test(val) && val) {
return val + „px“;
}
return val;
},
scrlWidth: 0,
ddcd: function () {
if (!dd1.scrlWidth) {
if (!dbdp) {
dd1.scrlWidth = dqp ? 17 : dpl ? 17 : dbdo ? 16 : 17;
} else {
var dblp = document;
var scr = dblp.createElement(„div“);
scr.style.position = „absolute“;
scr.style.top = „-1000px“;
scr.style.left = „-1000px“;
scr.style.width = „100px“;
scr.style.height = „50px“;
scr.style.overflow = „hidden“;
var inn = dblp.createElement(„div“);
inn.style.width = „100%“;
inn.style.height = „200px“;
scr.appendChild(inn);
dblp.body.appendChild(scr);
var wNoScroll = inn.offsetWidth;
scr.style.overflow = „auto“;
var wScroll = inn.offsetWidth;
dblp.body.removeChild(dblp.body.lastChild);
dd1.scrlWidth = wNoScroll - wScroll;
}
}
return dd1.scrlWidth;
},
ddqj: [],
dIc: function (dbbi) {
if (!dbbi) {
return 0;
}
if (typeof dbbi != „string“) {
for (var i = 0; i = dcq.duration || Math.abs(dcq.status) > 1) {
for (i = 0; i = 0 && diq >= 0) {
dbpb.dbq1 = 1;
dm_ext_setPressedItem(dbI, dbpp, diq, 0);
}
}
}
}

function dm_initFrame(dpqd, dppc, dpqj, dpcp) {
if (dpl && ddp = 0) {
var reg = „(’[^’]+’)|([^,’]+)“;
var res = [];
while (val) {
var pos = val.search(reg);
if (pos = 0 ? db1.pressedItem : -1,
doi: dbll,
dbjo: ddjd,
dio: ddbl,
dbpi: ddio,
ddji: ddjI,
dIb: dIb,
saveNavigation: db1.saveNavigationPath,
smSmartScroll: dbcb ? 0 : db1.smSmartScroll,
dbli: db1.smColumns,
_useIFRAME: db1.useIFRAME || !dd1b && dbIp && db11 || p_LNX && dbdp && ddp != 1.6,
_AJAX: db1.dmAJAX,
_ajaxReload: db1.ajaxReload,
dbqI: dIb ? 0 : 1,
dcl: 0,
itemWidth: „100%“,
itemHeight: „100%“,
itemAddStyle: „“,
ddI1: db1.fontColorDisabled,
dpbo: db1.smHideOnClick,
dpbI: db1.separatorImage,
dbji: db1.separatorAlignment,
dp1d: db1.separatorColor,
dpbd: db1.separatorWidth,
dpbl: db1.separatorHeight,
dpbc: db1.separatorVImage,
dplj: db1.separatorVColor,
dpbp: db1.separatorVWidth,
dpbq: db1.separatorVHeight,
ddop: db1.separatorPadding,
dbdI: db1.pathPrefix_img,
dp1b: dbb.dij(db1.smFrameImage, db1.pathPrefix_img),
dbdi: db1.smFrameImage ? db1.smFrameWidth : 0,
dbop: function () {
return ddjj.doi && dci == 1 ? parent.frames[ddjj.dio].window : window;
}
});
this.cStyles = [];
for (var st = 0; st 1 && dbl.cStyles.Subsubmenu || di1 && dbl.cStyles.Submenu || dbl.cStyles.Menu;
dbl.m[dpo] = {
i: [],
dbp: dbl.dbI,
dbI: dpo,
id: „dm“ + dbl.dbI + „m“ + dpo,
dqb: dbbb,
ddj: „“,
diI: null,
hideTimer: null,
dpb: di1,
left: dpo ? „-1000px“ : dbl.posX,
top: dpo ? „0px“ : dbl.posY,
ddlc: dpo ? dbl.smMovable : dbl.movable,
dbIq: 0,
ddIb: di1 > 1 ? dbl.DX : dbl.topDX,
ddIo: di1 > 1 ? dbl.DY : dbl.topDY,
ddd: ddd,
dbj: ddd.horiz >= 0 ? ddd.horiz == „1“ ? 1 : 0 : dpo ? dbl.smOrientation : dbl.isHorizontal,
rowCount: 1,
dbId: dpo ? „auto“ : dbl.menuWidth,
mainHeight: dpo ? „auto“ : dbl.menuHeight,
opacity: !dpo ? 100 : dbl.transparency,
dbbo: !dpo ? -1 : dbl.transition,
duration: dbl.transDuration,
ddIl: dbl.transDuration2,
shadowColor: dbl.shadowColor,
shadowLen: dbl.shadowLen && dbd.dpld && (dpo || dbl.shadowTop) ? dbl.shadowLen : 0,
dbcI: „“,
SmartScroll: dpo ? dbl.smSmartScroll : dbl.topSmartScroll,
sX: 0,
sY: 0,
dbip: !dpo && dbl.topSmartScroll ? 1 : 0,
hAlignReal: 0,
vAlignReal: 0,
dboi: [],
dddl: 0,
db1b: function () {
for (var j = 0; j = 0) {
hideTimer = setTimeout(„dlc(’“ + id + „’);window.status=’’“, time);
}
}
},
StopHide: function () {
if (this.hideTimer) {
this.hideTimer = clearTimeout(this.hideTimer);
}
}
};
if (dbbb) {
dbbb.ddI = dbl.m[dpo].id;
}
return dbl.m[dpo];
}

function ddqp(dq) {
while (dq) {
dq.StopHide();
if (dq.dqb) {
dq = dbd[dq.dbp].m[dq.dqb.dbq];
} else {
break;
}
}
}

function dd1j(str, dppI, dpp1, dppi) {
return !str || str == „link“ ? dpp1 : str == „text“ ? dppI : str == „tip“ ? dppi : str;
}

function dd1p(dpqb, ddpp) {
return dbb.dij(dII(dpqb, „“), ddpp);
}

function dddo(dbl, dqd, ddb, dqo, iVar) {
var dbci = dqo[0] || „“;
var dboI = dqo[1];
var ddl1 = dqo[5] || dbl.itemTarget;
var dppo = dqd.dpb == 0 ? dbl.itemAlignTop : dbl.itemAlign;
var ddoI = dII(dqo[4], „“);
var ddq1 = dII(dqo[8], „“);
var iIcons = [dII(dqo[2], „“), dII(dqo[3], „“)];
if (ddq1 && !dbl._AJAX) {
dbb.dbdq(„dmenu_ajax“);
dbl._AJAX = 1;
}
if (!dqd.djp) {
dboI = dd1p(dboI, dbl.pathPrefix_link);
iIcons = dbb.dij(iIcons, dbl.dbdI);
}
var ddcI = 0;
if (dbci.charAt(0) == „dcq“) {
ddcI = 1;
dqd.rowCount++;
dbci = dbci.substr(1, dbci.length - 1);
}
dqd.i[ddb] = {
dbp: dbl.dbI,
dbq: dqd.dbI,
dbI: ddb,
id: „dm“ + dbl.dbI + „m“ + dqd.dbI + „i“ + ddb,
dbco: ddq1,
ddI: ddq1 ? „_“ : „“,
ddbj: 0,
text: dbci,
link: dboI,
target: ddl1,
tip: ddoI,
dpqo: dd1j(dbl.statusString, dbci, dboI, ddoI),
align: dppo,
cursor: dboI ? dbl.itemCursor : „default“,
dbi: dbl.cStyles[„i“ + dqo[6]] || !dqd.dpb && !ddb && dbl.cStyles[‚Top First Item‘] || !dqd.dpb && ddb >= dqd.i.length - 1 && dbl.cStyles[‚Top Last Item‘] || !dqd.dpb && iVar.childMenu && dbl.cStyles.TopRootItem || !dqd.dpb && dbl.cStyles[‚Top Item‘] || dqd.dpb && ddb >= dqd.i.length - 1 && dbl.cStyles.SubLastItem || dqd.dpb && !ddb && dbl.cStyles.SubFirstItem || dqd.dpb && dbl.cStyles.Subitem || dbl.cStyles[‚All Items‘],
dpc: iIcons,
dpb1: dqd.dpb ? dbl.iconWidth : dbl.iconTopWidth,
dpqp: dqd.dpb ? dbl.iconHeight : dbl.iconTopHeight,
icState: 0,
ddIp: !dqd.dbI || !dbl.arrowWidthSub ? dbl.arrowWidth : dbl.arrowWidthSub,
ddId: !dqd.dbI || !dbl.arrowHeightSub ? dbl.arrowHeight : dbl.arrowHeightSub,
dcl: ddl1 == „_“ ? 1 : 0,
dco: 0,
djI: 0,
dbqI: 1,
dbIl: 0,
dppd: ddcI,
tblObj: null,
dbjc: null,
dp1o: null,
arrObj: null,
dbi1: 0,
db1b: function () {
with(dbb) {
dIc(this.dbi.dob);
dIc(this.dbi.dbbd);
dIc(this.dbi.dbdb);
dIc(this.dpc);
}
},
dbbp: function () {
var res = dpq(this.id + „it“);
if (res) {
return res;
}
dbd[this.dbp].m[this.dbq].dbbp();
return dpq(this.id + „it“);
}
};
with(dqd.i[ddb]) {
dqd.i[ddb].dIj = link.indexOf(„search:“) == 0 ? 4 : !text ? 0 : text == „-“ ? 1 : dbi.dbdb.length > 0 && dbi.dbdb[0] || dbi.dbbd.length > 0 && dbi.dbbd[0] ? 2 : 3;
}
return dqd.i[ddb];
}

function dplp(dq) {
var dppp = [„Blinds“, „Checkerboard“, „GradientWipe“, „Inset“, „Iris“, „Pixelate“, „RadialWipe“, „RandomBars“, „RandomDissolve“, „Slide“, „Spiral“, „Stretch“, „Strips“, „Wheel“, „Zigzag“];
var sf = „“;
with(dq) {
if (ddjp && dbIp) {
if (dbbo >= 0 && dbbo ";
}

function dbqc() {
return „“;
}

function ddll(id, clN, ddpl, ddpc, events) {
return „“;
}

function ddqi(id, ddpl, ddpc, dblo, events, add) {
return „“;
}

function ddd1() {
return „“;
}

function dbd1(id) {
return „“;
}

function dbdl() {
return „“;
}

function dcd(id, dblo, add) {
return „“;
}

function dcb() {
return „“;
}

function dbbc(id, url, w, h, add) {
if (url == „“) {
return „“;
}
return „“;
}

function dm_mouseSmOut(doj) {
var dq = dpd(doj);
if (dq.ddd.djb 0 && dq.ddd.djb >= 0) {
maxTime = Math.max(maxTime, dq.ddd.djb);
dq.StartHide(maxTime);
dq = dbd[dq.dbp].m[dq.dqb.dbq];
}
}

function dm_mouseSmOver(doj) {
ddqp(dpd(doj));
}

function ddlo(dI, img, color, w, h, align) {
if (img) {
return dbbc("", dbb.dij(img, dI.dbdI), w, h, „“);
} else {
return "

SORRY, ES IST ETWAS SEHR VIEL OBEN IM SCRIPT… :wink:
DANKE

Hallo nochmal an Alle…!
Ich bedanke mich sehr für all die schnelle Hilfe von @jo! und @Stefan…! Ihr habt mir sehr geholfen. Allerdings brauche ich noch ein Programm, welches mir auch die entschlüsselten Scripte so lesbar macht, damit ich selbst erkenne wo sich die Buttonlinks befinden. Wie bereits ich schon zuerst beschrieben habe, hatte ich ein solches Programm früher mal. Mit diesem war es mir einfach, schnell diese Quelltexte von den JS-Dokumenten zu lesen.

Ganz lieben Dank an alle für Eure Hilfe…! Ohne Euch wäre ich - glaube ich - noch immer ganz am Anfang…
Gruß MJE

Hi,

decodiert hast du es ja schon, is ja schonmal was.

jetzt willst du deine Buttons bzw dessen Links finden?

Hmm meinst du sowas wie Syntaxhighlighting? Sprich dass das Keyword „function“ gesondert angezeigt bekommen?

Ggf auch noch formatiert?

Fürs einfache Highlighting müsste Notepad++ reichen. Fürs formatieren könnte bspw eclipse, netbeans oder viele andere IDEs genau das richtige sein (die können auch „highlighten“…)

Hoffe mal ich hab die Folgefrage richtig verstanden

Grüße

Hallo @jo! …:smile:
Erstmal bedanke ich mich für deinen Tipp.
Es kann gut möglich sein dass diese Variablen in diesem Script so versteckt sind.
Aber wie Du selbst im oberen Script gesehen hast, gibt es ja viele Variablen mit „function“.
Aber, es kann auch sein dass ich den sprichwörtlichen Wald vor lauter Bäumen nicht mehr sehe…:smile:). Ich versuche schon seit Tagen - ach seit Wochen herauszufinden, wie ich dieses decodierte Script noch besser lesbar machen kann… Denn selbst „function“ ist ja zum Teil gut verschlüsselt. Dennoch werde ich versuchen, die LINKBUTTON zu suchen…wo ich den Hinweis auf die spezielle Verlinkung habe… Ich hatte damals einen Kumpel, der mir dabei geholfen hat, die JS-Inhalte zu verschlüsseln. Der hat darin seinen Button zu seiner Homepage eingefügt.
Na, ich werde diesen Button vielleicht nicht mehr finden. Denn der Quelltext in dieser Javadatei beinhaltet fast nur Button… Und das Entcodieren hat mir ja auch nicht wirklich geholfen. Mit den vielen Zeichensätzen (Zahlen, Buchstaben etc.), also wie die im ASCII ausgegeben werden, kenne ich mich nicht gut aus…
Danke dennoch…
Gruß MJE

Hi,

hab mich etwas blöd ausgedrückt. das Keyword function war ein Beispiel. Notepad++ und auch die IDEs highlighten ALLE Keywords (also auch if else var usw)

Ich selbst bin in Javascript nicht so erfahren (bzw hab zwar MAL was mit gemacht aber ist auch schon wieder Jahre her), aber wenn LinkButton eine standart Komponente von JS ist sollte auch der gehighlightet werden.

Gruß

Hi @jo!..:smile:
Stimmt, normalerweise ist das so… Da gebe ich Dir vollkommen Recht. Ich hab versucht, das bereits entschlüsselte Script noch weiter zu entschlüsseln. Denn Linkbutton haben ja eigentlich immer die selbe Ausführung. Zumindest dachte ich das. Zu Ohren gekommen ist mir aber auch dass man diese Codes in JS zerlegen kann, wie bspw. ein Auto und deren Teile dann im Script an verschiedenen Stellen positioniert, die mit einem Highlight-Aufruf dann zusammengefügt werden - ergo versteckt mit einander „kommunizieren“. Wir als Nutzer dann eben auf dem Bildschirm NUR diesen Link sehen. Das bedeutet also dass der JS-Code im Hintergrund arbeitet. Also, sobald wir am PC-Monitor den Link-Button anklicken, sich dann im JS-Code die „Schnipsel“ automatisch „erkennen“ und dann die Weiterleitung zu der entsprechenden Seite erfolgt. Da steht unser Einer als JS-Anfänger echt „dumm“ da…:smile:
Aber @jo!, natürlich muss ja selbst diese Variante irgendwo einen Highlight haben, damit der Code funktionieren kann. Ich hab angefangen den Code Zeile für Zeile zu untersuchen. Wir können uns ja gern zusammen diesen Code mal vornehmen. Und wir schreiben uns hier oder halt auch über EMail unsere Fortschritte…

Ich bin dir echt dankbar. Denn durch unsere Kommunikation bekommen wir echt gute Ideen, wie wir das Script so entschlüsseln können damit es für uns einfacher wird, diesem Herre zu werden… Also @jo! - DANKE…!
Gruß MJE

Ach, ich hab ganz vergessen, in meinem Profil die Umstellung vorzunehmen… @jo!..das tue ich jetzt gleich noch… Sieh bitte dann mal in meinem Profil nach, da steht dann meine EMail für deine vielen Tipps bereit… Nochmals Danke…

Das Obscurer-Programm
darf ruhig was kosten…:smile: Hast Du eine Webseite, wo ich ein
solches Programm kaufen kann…? Denn ich mache sehr viel mit
Javascript und so… Da wäre es für mich vom Vorteil wenn ich
ein eigenes Programm habe, um nicht ewig oft zwischen

Lernst du eigentlich nie dazu? Wozu bitte willst du das bisschen Javascript unleserlich machen? Hast du Angst, jemand klaut dir deine super Ideen? Das ist schwachsinn. Du fragst explizit nach Möglichkeiten, dies rückgängig zu machen. Also bist du dir selbst im Klaren, dass das reversibel ist.

Im Gegenteil hast du jetzt selbst einen Schaden aus deinem letzten Ausflug ins Obscurer-Land und willst dennoch den gleichen Fehler wieder machen.

Und nochwas ist ganz offensichtlich: Dir mangelt es an Professionalität. Du bist sicher ein ganz toller Werbeguru, wenn du nichtmal in der Lage bist, dir irgendwohin die damals verwendete Software zu notieren. Sowas nennt man Dokumentation und sollte zum Handwerkszeug eines jeden Professionellen gehören. Dabei spielt es dann auch keine Rolle, ob es eine private Seite war oder nicht.

Und abschließend möchte ich anmerken, dass ein viele jahre altes Javascript ganz sicher nicht mehr zeitgemäß programmiert ist und du vermutlich mit neuen Bibliotheken - jquery - unterdessen vermutlich schneller und besser zu einer neuen Lösung gekommen wärst.

Wenn ein Pferd tot ist, dann steige ab. Ein totes Pferd reitet nicht schneller, wenn du härter mit der Peitsche haust.

Günther