Aykut Çevik

Klischees müssen erfüllt werden

Archive for the ‘Programmieren’ Category

Woran man Entwickler erkennt

without comments

Damit die Klischees ihre Erfüllung finden:

Woran erkennt man Entwickler? Klischee!

Woran erkennt man Entwickler? Klischee!

Gefunden auf graphitti-blog.de.

Written by Aykut Çevik

Juli 11th, 2011 at 6:16 pm

Posted in Programmieren,Web

Tagged with ,

LoadLibrary() Windows API Fehler 126

without comments

Manchmal bekam ich einen Fehler, bzw. einen IntPtr.Zero, wenn ich versucht hatte, mittels LoadLibrary eine Assembly zu laden. Den Fehler, den ich mit GetLastWin32Error abfragen konnte, war 126 – eine nichts aussagende Zahl. Nach etwas recherchieren kam ich dann zur Lösung. Read the rest of this entry »

Written by Aykut Çevik

April 8th, 2011 at 6:55 pm

Ermitteln von nativen Assembly-Funktionen

without comments

Um Funktionen einer Assembly mit Hilfe der Windows-API LoadLibrary zu laden, um sie dann später mit GetProcAddress auszuführen, ist es hilfreich, die Funktionen einer Assembly zu kennen.

Die Auflistung bekommt ihr durch Nutzung von “dumpbin”, welches in der Visual Studio sowie in der Windows SDK Command Prompt integriert ist. Der Aufruf erweist sich als recht simpel:

dumpbin “%windir%\System32\aepic.dll” /EXPORTS

Wie die Auflistung (s. Bild) zeigt, beinhaltet die “aepic.dll” die Funktionen PicFreeFileInfo sowie PicRetrieveFileInfo.

dumpbin in Aktion

dumpbin in Aktion

Denkt an das FreeLibrary ;)

Randnotiz: Beim Laden einer Assembly kann ein Fehler auftreten, mehr dazu hier.

Written by Aykut Çevik

April 8th, 2011 at 6:45 pm

MSSQL Management Studio – 29506 Fehler

without comments

Während der Installation vom MSSQL Management Studio auf Windows 7 x64 bekam ich immer den Fehler 29506. Einfache und schnelle Lösung ist, die Installation trotz der zuvor auffordernden UAC-Bestätigung als Administrator auszuführen. Wenn das Ausführen als Administrator über das Kontextmenü nichts bringt, müsst ihr über ein als Administrator gestartetes “cmd” den Pfad zur Installation angeben und bestätigen. It works fine!

Written by Aykut Çevik

April 8th, 2011 at 9:00 am

StringBuilder für JavaScript – StringBuffer-Klasse

without comments

JavaScript ist extrem langsam*, wenn es um String-Verkettungen mit den herkömmlichen Mitteln geht.

var foo = "foo";
foo = foo + "bar";

// oder

var foo = "foo";
foo += "bar";

Mithilfe der StringBuffer-Klasse geht es erheblich schneller:

function StringBuffer() {
    this.buffer = [];
    this.iCount = -1;
}

StringBuffer.prototype.append = function append(string) {
    this.buffer[++this.iCount] = string;
    return this;
};

StringBuffer.prototype.toString = function toString() {
    return this.buffer.join("");
};

Der Aufruf ist einfach und ähnlich dem StringBuilder in .NET:

var foo = new StringBuffer();
foo.append("foo");
foo.append("bar");
alert(foo.toString());

* Die neuen bzw. modernen Browser (Firefox 4, IE 9 etc.) haben erhebliche Verbesserungen gemacht – früher war nicht alles besser ;)

Written by Aykut Çevik

April 7th, 2011 at 7:24 pm