PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Bot mit .Net?



penguin
07.09.2010, 12:54
Heyah,
Ich wollte mal wieder nen kleines Projekt starten und frage mich "Sollte ich einen Bot in .Net schreiben?".

Anfangs kam mit C++ oder C in den sinn, allerdings liegt mir C# besser als C oder C++.

Nun die Frage(n):
-Sollte ich den Bot mit C# schreiben?
-Wie kann ich dann eine Stub Builden?

Ich hoffe jemand hat da schon bisschen mehr erfahrung als ich :)

kingChrisyLive
07.09.2010, 12:59
-Sollte ich den Bot mit C# schreiben?


Die Frage beantwortest du dir ja bereits selber,da dir C# besser liegt,solltest du den Bot auch in C# verwirklichen,es sei denn du nimmst noch etwas lernen in Kauf und entwickelst ihn dann in C/C++.


-Wie kann ich dann eine Stub Builden?
Ich hoffe jemand hat da schon bisschen mehr erfahrung als ich :)

Ich glaube du solltest dich auch noch ein bisschen mehr mit C# beschäftigen,sonst wird das ganze ein Copy&Paste Projekt und das willst du doch bestimmt nicht,oder ? Denn falls Probleme auftreten fehlen dir die grundlgenden Kenntnisse und du bekommst das Problem nicht gelöst.

gesocks
07.09.2010, 13:00
Was machst wenn kein .net Framework oben ist? Willst das ganze mit dem Native Image Generator dann direkt kompiliern? Dürft dann aber um einiges größer werden der Bot ;)

Flashkill
07.09.2010, 13:00
Bot in .Net bzw in C# wegen den .Net muss total nutzlos

Also von meinen 1000 Vics haben im Durchnitt 200 das Aktuellste gebrauchte .Net drauf

und gerade bei einem Bot ist es wichtig das er eine hohe Systemkompatibilität aufzeigt und Stabil läuft was du mit Framwork nicht hinkriegen wirst weil das eine Sprache ist die während des Laufenden Process Übersetzt wird.

Bei C++ wird der Code direkt so umgesetzt das es kein Laufzeit Compiling gibt sondern nur zur herstellung der *.exe

.Net Bot = Ultra 1337 FAIL

gesocks
07.09.2010, 13:03
und gerade bei einem Bot ist es wichtig das er eine hohe Systemkompatibilität aufzeigt und Stabil läuft was du mit Framwork nicht hinkriegen wirst weil das eine Sprache ist die während des Laufenden Process Übersetzt wird.

Jein - der normale Ablauf ist zwar so, aber es gibt auch von Microsoft selbst den oben erwähnten Native Image Generator.
Der ist eigentlich dazu gedacht die Performance weiter zu steigern wenn es nötig ist, kann einem aber auch das .NET Framework ersparen. Trotzdem würd ichs net tun ;)
Native Image Generator (Ngen.exe) (http://msdn.microsoft.com/en-us/library/6t9t5wcf%28VS.80%29.aspx)

kingChrisyLive
07.09.2010, 13:03
Ach so einen Bot,ich war im Glauben,dass der TO von einem BOT für irgendein game spricht. :D

@TO
Dann kannst du C# vergessen. Beschäftige dich weiterhin mit C/C++.

penguin
07.09.2010, 13:08
Okay danke leute :)
Werde mich wenn ich mal zeit hab ran setzen und schauen was sich da so machen lässt.
Wenn was draus wird gibt's auf jedenfall ne Public Version ;)

-Penguin

chilln
07.09.2010, 13:26
Ach quatsch zu Zeiten von XP Service Pack 2 hat jeder mindestens das .NET Framework 2.0, Vista und 7 habens sogar schon im Auslieferungszustand...

Solange du 2.0 als Zielframework hast ist .NET nicht wirklich ein Problem...

K-Gee
07.09.2010, 13:32
.Net bots sind sau unstable... (Server)
Es gab mal 'ne zeit da hat jeder 2. einen .Net bot geschrieben (löl)

LG

Hu5eL
07.09.2010, 13:34
Also ich habe vor ca nem jahr auch nen bot auf dem .net-framework geschrieben.
damals gab es auch die kommentare das jeder das framework brauch etc.
jedoch war ich recht zufrieden.
wie chilln sagt, solltest du daran denken kein zu neues framework zu nutzen.
UND: denk an ne updatefunktion xD :D

viel spass wünsche ich dir bei deinem vorhaben

@K-Gee klar wenn der Programmierer versagt, sind auch c++ / c bots unstable ....

penguin
07.09.2010, 17:43
Es geht mir eigentlich schon um nen recht professionellen Bot.
Sollte viele Funktionen haben, unter anderem auch Binarys beim Vic in Ram laden, usw.

Habe mich aber eben entschieden, dass es alleine schon wegen der Geschwindigkeit eher ein Fall für C++ ist.

hackerking
07.09.2010, 18:29
wenn es um einen quick&dirty bo

Betonung auf quick, und daraus resultiert wohl dirty. Ich hoffe so meintest du das :D
Es muss eigentlich heißen quick&dirty&c&p..

@Topic
In .NET kann man sehr wohl stabile Bots bauen (eigene Erfahrung). Außerdem haben bei 1000 Vics über 900 .NET (.NET 2.0 ist seit Windows XP SP 2.0 vorhanden. Die Framework Version kann man in Visual Studio einstellen. Von 2.0 bis 4.0 (VS 2010) Und mal ehrlich wer hat etwas darunter?). Das beste: Wenn du einen Builder dazu schreibst, läuft der auch (sofern keine Win Apis verwendet werden) auf Mac und Linux dank Mono..
Der einzige Grund für mich in C(PP) wäre, wegen der Geschwindigkeit. Naja und auch wegen den Hatern *OpCodezAnguck*

pima
07.09.2010, 18:38
WIe hackerking bereits sagte, das Framework ist in 2.0 so gut wie auf jedem (Windoof)Rechner vertreten !
Im Grunde steht einem C# Bot nichts im Wege aber willst du es wircklich professionel machen und damit sogar Geld verdienen, ist C++ deine Wahl. Es kann zwar zu Anfang mehr Arbeit sein aber mit der Zeit arbeitet man sich da rein und dann gehts auch fix.

hackerking
07.09.2010, 18:59
professionel machen und damit sogar Geld verdienen, ist C++ deine Wahl. Es kann zwar zu Anfang mehr Arbeit sein aber mit der Zeit arbeitet man sich da rein und dann gehts auch fix.

.NET ist für Professionelle Anwendungen gedacht..
.NET Bots werden viel viel schlechter gemacht als sie sind...
Ich weise gerne nochmal darauf hin:

Schwer <> Gut
Einfach <> Schlecht

Ihr könnt nicht direkt jeden Bot als Scheiße abstempeln, nur weil er in .NET ist. Ihr müsst erst einmal gucken was der Bot kann. Er kann sogar stabiler sein als ein Bot in C. Vorausgesetzt der Coder weiß was er macht und ist kein C&Pler..

n0ise
07.09.2010, 19:07
pima hat eh die Ahnung schlechthin von allem ;)
Sicherlich kann man in .Net stabile, gute Bots coden. Man muss nur wissen wie.

hackerking
07.09.2010, 19:09
n0ise? :D :D
Dein Bot ist das perfekte Beispiel wie man es nicht machen sollte ;)
C&P, Scheiß unübersichtlich, dreckig, Langsam usw usw..

SFX
07.09.2010, 19:56
.Net bots sind sau unstable... (Server)
Es gab mal 'ne zeit da hat jeder 2. einen .Net bot geschrieben (löl)


Der Bot ist nur so stabil wie du in schreibst -.-

Wenn da einer ohne das nötige Wissen dran war ist es klar dass er unstabil ist..


Bot in .Net bzw in C# wegen den .Net muss total nutzlos

Also von meinen 1000 Vics haben im Durchnitt 200 das Aktuellste gebrauchte .Net drauf

und gerade bei einem Bot ist es wichtig das er eine hohe Systemkompatibilität aufzeigt und Stabil läuft was du mit Framwork nicht hinkriegen wirst weil das eine Sprache ist die während des Laufenden Process Übersetzt wird.

Bei C++ wird der Code direkt so umgesetzt das es kein Laufzeit Compiling gibt sondern nur zur herstellung der *.exe

.Net Bot = Ultra 1337 FAIL

200 haben das aktuellste, aber wer hat < 2.0 ?

die Zahl durfte gegen null laufen..

Zudem können bestimmte Dinge in .net leichter umgesetzt werden als in C++ und damit gibt es deutlich weniger Platz für Bugs..

Warum wird Java eigentlich nicht so sehr gehasst wie .net da ist genau das gleiche o.O ?

EBFE
07.09.2010, 20:02
NET Framework bietet viele vorgefertigte Klassen/Funktionen, die einem das Leben enorm vereinfachen und die "Neuentwicklung" des Rades oder das mühselige Zusammensuchen und Einbinden der Libs sparen.

Damit lässt sich auch Großteil der Software (durchaus schon "semiprofessioneller" oder professioneller Desktopbereich) schreiben ;). Es ist sogar so (auch wenn die C-ler es nicht gerne hören ;)), dass ein Anfänger in NET eher performantere Anwendungen schreibt, als in C (denn, nicht vergessen, die Non-Plus-Ultra Optimierung ist zuallererst die richtige Datenstruktur + Algo. In C muss man oft erstmal Libs zusammensuchen - viele verzichten darauf und setzen es "Halbherzig" um (nach dem Motto: "hauptsache es läuft"). Und dann wird eben eine (eigene) Listenumsezung statt Hashtable/Dict/Array genutzt, eigene Textsuche usw.

Problem bei NET ist eben nur, dass es so umfangreich + "einfach" zu benutzen ist ;)
Wie bei allen Dingen, bei denen es am Ende auf Performance und/oder besonders gute technische Umsetzung ankommt (bei Bots eben Netzwerkverbindung + System"integration") muss man in dem Fall tatsächlich wissen, was da tatsächlich im Hintergrund so werkelt und gegebenfalls händisch eingreifen und bei der Umsetzung beachten ;).
Das ist bei Hashbrutern so (wer an "C++ ist per definition schon schnell!!!!" glaubt, darf sich gerne den SHAbr oder EmDebr ansehen (einer der perfomantesten SHA bzw MD5 CPU bruteforcer) - der Code hat nicht mehr viel mit C++ gemein), Serversoftware, die auf extreme Performanz ausgelegt wurde oder Renderingsoftware. z.B läuft Eve Online (http://de.wikipedia.org/wiki/EVE_Online) mit StacklessPython + Coroutinen Modell - und es wäre zu bezweifeln, dass eine 0815 "ich mach das mal in C/C++/Whatever, dann ist es automatisch schneller/ressourcenschonender!" Umsetzung auch nur einen Bruchteil der Performance erreicht ;)

Und da überschätzten sich halt viele NETler gerne - weil sie sonst in NET gaaanz viele komplizierte Dinge schnell&einfach machen können, ohne wissen zu müssen, was dahintersteckt (was zwar normalerweise bei Softwareentwicklung auch gut so ist - nicht aber in solchen Spezialfällen ;) )

n0ise
07.09.2010, 20:14
C&P -> Zeig mir einen Bot der genauso aussieht wie mein leak und pub ist?
Scheiss unübersichtlich -> kommt vom decompilen. Wenn m4x (oder wer das auch immer war) das nicht anständig hinbekommt kann ich auch nichts dafür
Dreckig -> Ein Bot kann dreckig sein? :D
Langsam -> Im vergleich zu was? Einem ASM Bot? Sowas willst du nicht ernsthaft vergleichen :D Haste mit der stoppuhr gestoppt? xD

Du bist ein Witzbold :D

Ja Java ist sogesehen das Gleiche. Nur nutzt das so gut wie niemand zum Coden von Malware und deswegen kennen die ganzen kleinen Kiddes das nicht.
Zudem ist die Zahl der Leute die das JRE installiert haben wirklich geringer als die die das .Net Framework installiert haben.
Finds lustig, dass Microsoft ab Windows 8 .Net bevorzugen wird :D
Jetzt komm ihr kleinen Kiddies und weint weiter rum dass .Net scheisse, lahm, unstable usw... ist.
Ihr habt nämlich null Plan von gar nichts.
Wette ihr habt noch nichtmal was in einer ".Net Sprache" gecodet geschweige denn verstanden wie sich .Net aufbaut bzw. worauf .Net aufbaut.
ABER das verraten wir ja keinem :D

HF GL Leute ;)

pima
07.09.2010, 20:16
.NET ist für Professionelle Anwendungen gedacht..
.NET Bots werden viel viel schlechter gemacht als sie sind...
Ich weise gerne nochmal darauf hin:

Schwer <> Gut
Einfach <> Schlecht

Ihr könnt nicht direkt jeden Bot als Scheiße abstempeln, nur weil er in .NET ist. Ihr müsst erst einmal gucken was der Bot kann. Er kann sogar stabiler sein als ein Bot in C. Vorausgesetzt der Coder weiß was er macht und ist kein C&Pler..


Ich habe nie behauptet, dass .Net schlecht ist. Es ist einzig die Sache der Unterstützung. Für C++ muss man eben kein Framework haben und das haben viele User gern.
Aber wenn er sich schon die Frage stellt welche Sprache er nehmen sollte, empfehle ich ihm C++. Auf längere Zeit wird es sich, so hoffe ich, bezahlt machen C++ besser zu können. Dazu habe ich aus dem ersten Post interpretiert, dass er bereits C++ kann und es die Sache dann schon erleichtern würde.


Und zu dir n0ise, falls du es sein solltest, fang hier nicht an zu streiten. Hier gehts um die Beantwortung einer Frage und nicht um gespamme...

n0ise
07.09.2010, 20:33
Wenn er bereits C++ kann dann soll er den Bot auch in C++ coden.
Die Theorie ist "immer" gleich. Wenn man die verstanden hat kann man sie in vielen Sprachen umsetzen.
Ob es auf längere Zeit hin besser ist C++ zu "können" sei mal in den Raum gestellt.
Man sollte sich mal damit beschäftigt haben. Ein wenig was über Pointer gelernt haben und der Rest...
Mein Fazit zum Thema: .Net ist einfach und mächtig. Wer was dagegen hat soll sich das Leben schwer machen. Wer nicht... ;-)

Und zu dir pima.
Wenn du meine Posts gelesen hättest... :D *mimimi* :D

l0dsb
07.09.2010, 22:48
Gottverdammt. Können wir diese Diskussionen nicht ein für alle Male unterbinden, es ist echt nicht mehr schön. Use the right tool for the job.

.NET ist nicht für alles brauchbar und richtig eingesetzt für 90% der Kiddies wohl zu komplex. Dasselbe gilt für C/C++. Wie stabil eine Software ist, hängt primär vom Programmierer ab.

penguin
09.09.2010, 19:19
So, habe mir eben mal alle posts aufmerksam durchgelesen.
Danke an alle, die geantwortet haben. Ich werde den Bot in C++ coden.
Morgen direkt zieh ich mir mal wieder paar tutorials rein (Über winsock, HTTP, usw.) um mein wissen mal wieder aufzufrischen (Letztes mal habe ich vor ca. 6 Monaten was mit C++ gemacht).

Wenn ich den Bot fertigstellen sollte werde ich wie schon gesagt hier eine Public version mit Basisfunktionen wie HTTP DDoS, usw. posten.

So, meine frage wäre hiermit erledigt :)

Bonkers
09.09.2010, 20:08
Wette ihr habt noch nichtmal was in einer ".Net Sprache" gecodet geschweige denn verstanden wie sich .Net aufbaut bzw. worauf .Net aufbaut.

Das war wohl der lächerlichste Post der letzten Tage. Immerhin das hast du erreicht.
Normalerweise würde ich dich nun per fataler Wortgewalt in den Boden stampfen, aber da ich mal wieder zu viele Mentos gegessen, und noch dringend was zu erledigen habe fasse ich mich kurz:

Deine erbärmlichen Mail-Bomber und anderen Abschaum-Tools reizen nichtmal im Geringsten die Möglichkeiten die das Framework anbietet, aus. Du hast meiner Meinung nach absolut keine Ahnung, und hast dir dein Wissen von irgendwelchen Anfänger-Coding-Seiten zusammenkopiert. Du brauchst nicht glauben dass du einen auf dicke Hose machen kannst, nur weil du irgendwelche offensichtlichen Befehle in deine IDE tippen kannst. String.Compare, ich lach mich tot.