.Net Framework Funktionen ändern

08/02/2013 14:20 tolio#1
Hat jemand eine Ahnung ob und wenn wie, es möglich ist Funktionen im .Net Framework zu ändern/manipulieren.
Konkret: ich will den Verbindungsaufbau im netzwerkstreams eines Webrequest ändern. das ganze am soll aber nur für das eine Projekt seinnicht für alle.
bin immer offen für alle arten von anregungen, links, kommentaren, beleidigungen, etc
Danke schonmal im vorraus
MfG
tolio
08/02/2013 14:41 Schlüsselbein#2
Du kannst die Funktionen erweitern. Unter .NET gibt's da ne Möglichkeit um Methoden zu Klassen hinzuzufügen (mir fällt das Stichwort gerade nicht ein).
Andere Option wäre Vererbung.

Was hast du denn konkret vor? Ich bin mir ziemlich sicher, dass es dafür eine bessere Lösung gibt.
08/02/2013 15:12 tolio#3
methoden zu klassen hinzufügen ist mir bekannt.

ich will die webrequest klasse, weil diese sehr gut ist, um das socks protokoll erweitern. letztendlich muss ich nur nen anderen verbindungsaufbau durchführen, den hat ich schon fertig programmiert. und so an einer stelle einen anderen netzwerkstream nutzen als den den die klasse an dieser stelle erstellt
08/02/2013 15:24 dready#4
So ausm Stehgreif würd ich mal folgende Ansätze haben:

a) ich bin mir nicht 100% sicher aber nehm schwer an das der eigentliche Verbindungsaufbau im hintergrund über wsock32 läuft, wenn du dort den Connect detours sollte es recht trivial sein Socks zu implementieren.

b) schau dir mal das Linfu framework an, soweit ich mich erinnere erlaubt es dir auch Basismethoden von .net zu intercepten.

Edit: Forum schluckauf :)
08/02/2013 15:37 GodHacker#5
Es gibt doch in .NET extra die Möglichkeit Sockets zu nutzen oder verstehe ich gerade etwas falsch?
08/02/2013 15:39 dready#6
Er mag die Webrequest Klasse um SOCKS-Proxy support erweitern ohne sie von Grund auf neu zu schreiben.
08/02/2013 19:38 tolio#7
danke für alle antworten, ich hab jetzt als erstes mal mit reflector und reflexil die system.dll soweit manipuliert wie ich mir das vorgestellt habe, mal schauen obs funktioniert oder sowas ich werd dann nochmal hier pushen