Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > Coding Releases
You last visited: Today at 21:14

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[DLL] Elitepvpers Library v2

Discussion on [DLL] Elitepvpers Library v2 within the Coding Releases forum part of the Coders Den category.

Reply
 
Old 12/05/2012, 23:04   #16



 
Sedrika's Avatar
 
elite*gold: 18
The Black Market: 103/0/0
Join Date: Sep 2009
Posts: 20,177
Received Thanks: 14,471
Quote:
Originally Posted by Che​ View Post
In welcher Sprache hast du die Bibliothek denn geschrieben? Wie sendest du die Anfragen ab? (über nen XMLRPC-Client, also über die Tapatalk API oder ganz normal?)

Werd mir das ganze morgen oder so mal genauer ansehen, die Idee finde ich jedoch nicht schlecht.
Da ich geschrieben habe, dass es mit C# nicht geht, sollte man von Visual Basic ausgehen.

Ich nutze weder die Tapatalk API (noch nie angesehen, wär eig mal nicht schlecht) oder den XML...-Client. Das meiste sind einfache WebRequests, die ich nutze.
Sedrika is offline  
Old 12/06/2012, 00:19   #17
 
Che's Avatar
 
elite*gold: 120
Join Date: Aug 2010
Posts: 7,450
Received Thanks: 2,755
Quote:
Originally Posted by Sedrika View Post
Da ich geschrieben habe, dass es mit C# nicht geht, sollte man von Visual Basic ausgehen.
In der Regel würde man eher von Hochsprache ausgehen, anhand deiner Beispiele hatte ichs mir schon fast gedacht, deswegen die Nachfrage.
Quote:
Originally Posted by Sedrika View Post
Ich nutze weder die Tapatalk API (noch nie angesehen, wär eig mal nicht schlecht) oder den XML...-Client. Das meiste sind einfache WebRequests, die ich nutze.
XMLRPC ist das Protokoll, welches für die Tapatalk-API verwendet wird.

Das wäre dann ein Verbesserungsvorschlag meinerseits, denn so geht es bedeutend schneller als über WebRequests (Shoutbox ausgenommen). Kannst es dir ja mal ansehen, ne Dokumentation findest du hier:

Beispiele für die Verwendung des XMLRPC-Protokolls unter VB findest du leicht über Google. Das wäre echt ne nette Verbesserung
Che is offline  
Old 12/06/2012, 00:47   #18



 
Sedrika's Avatar
 
elite*gold: 18
The Black Market: 103/0/0
Join Date: Sep 2009
Posts: 20,177
Received Thanks: 14,471
Werd ich mir ansehen, könnte mir sicherlich helfen, wenn ich aus prinzip die Lib neu schreibe, da ich dann unnötiges meist raushaue usw.
Sedrika is offline  
Old 12/06/2012, 18:05   #19

 
Furkan's Avatar
 
elite*gold: 59
The Black Market: 326/0/0
Join Date: Jun 2010
Posts: 1,945
Received Thanks: 424
Könntest du noch einfügen, dass man sehen kann wieviele ungelesene PN's man hat und am besten auch noch den Titel + Text davon.
Furkan is offline  
Old 12/06/2012, 19:28   #20
 
elite*gold: 2
Join Date: May 2010
Posts: 846
Received Thanks: 3,938
Zum C# Problem

Code:
[STAThread]
static void Main(string[] args)
{
   xLibrary.xLibrary a = new xLibrary.xLibrary();
   Console.WriteLine(a.IsEpvpUser());
}
Wieso killt IsEpvpUser() den Prozess wenn das Ergebnis false ist? Sowas sollte eine Library niemals machen, außer es ist WIRKLICH nötig. Außerdem sollte man sowieso niemals sowas wie .Kill() anwenden. Genauso wie die HWID zu generieren und zu kopieren + MessageBox sind komplett unnötig, sowas sollte man immer der Anwendung überlassen!

Ansonsten, Fehlerbehandlung scheint hier zu fehlen.
.IsUser(xLibrary.xLibrary.UserGroup.Banned) ->
"Ungültige Konvertierung von der Zeichenfolge in Typ Double.", evtl. weil ich meine HWID nicht eingetragen habe .
-PinkiWinki- is offline  
Old 12/06/2012, 20:08   #21



 
Sedrika's Avatar
 
elite*gold: 18
The Black Market: 103/0/0
Join Date: Sep 2009
Posts: 20,177
Received Thanks: 14,471
Quote:
Originally Posted by -PinkiWinki- View Post
Zum C# Problem

Code:
[STAThread]
static void Main(string[] args)
{
   xLibrary.xLibrary a = new xLibrary.xLibrary();
   Console.WriteLine(a.IsEpvpUser());
}
Wieso killt IsEpvpUser() den Prozess wenn das Ergebnis false ist? Sowas sollte eine Library niemals machen, außer es ist WIRKLICH nötig. Außerdem sollte man sowieso niemals sowas wie .Kill() anwenden. Genauso wie die HWID zu generieren und zu kopieren + MessageBox sind komplett unnötig, sowas sollte man immer der Anwendung überlassen!

Ansonsten, Fehlerbehandlung scheint hier zu fehlen.
.IsUser(xLibrary.xLibrary.UserGroup.Banned) ->
"Ungültige Konvertierung von der Zeichenfolge in Typ Double.", evtl. weil ich meine HWID nicht eingetragen habe .
Ich habe in der Nacht die Lib komplett neu geschrieben und in Klassen unterteilt.
Und das mit dem Kill, war eine sehr alte funk noch, wo ich das ganze getestet hatte.

Ich hau bald ein Update rein mit weiteren Funktionen.
Sedrika is offline  
Old 12/07/2012, 21:31   #22
ベトナム警察



 
Lumi's Avatar
 
elite*gold: 725
The Black Market: 516/0/0
Join Date: Jan 2012
Posts: 16,346
Received Thanks: 3,425
Du könntest zu deiner .dll noch "Premium Ablauf" Check hinzufügen.
Wenn User = Premium, dann "Premium ablauf: 05-24-2013" oder sowas. ^^
Lumi is offline  
Old 12/08/2012, 15:01   #23
 
~.ScoiL's Avatar
 
elite*gold: 70
Join Date: Jul 2011
Posts: 496
Received Thanks: 194
Und für die die es in AutoIt verwenden möchten:

Ihr öffnet Notepad und kopiert euch den Code.
Dann speichert ihr die Datei in euer Scriptverzeichnes und benennt sie zum Beispiel hello.vb .


Hier noch ein Scriptbeispiel:


Quelle:
~.ScoiL is offline  
Thanks
2 Users
Old 12/08/2012, 15:11   #24



 
Sedrika's Avatar
 
elite*gold: 18
The Black Market: 103/0/0
Join Date: Sep 2009
Posts: 20,177
Received Thanks: 14,471
Habe mal die Lib neu geschrieben und in Klassen unterteilt usw.

Habe den Thread auch neugeschrieben und beispiele für Funktionen rausgenommen, da diese nun in der Lib selber vorhanden sind.

Mfg Sedrika
Sedrika is offline  
Old 12/08/2012, 15:36   #25
 
elite*gold: 2
Join Date: May 2010
Posts: 846
Received Thanks: 3,938


+

xLibraryEx.xLibraryEx.OpenFuncIndex() = Totaler Schwachsinn, für was bietet Microsoft direkt eine XML Dokumentation an in der IDE? Das sind simple Kommentare im Code, die IDE erzeugt daraus dann eine XML...

Wieso muss man von jeder Klasse eine Instanz anlegen? Wie wär es mit static/shared?

Kann es sein das du nirgends .Dispose aufrufst? Das ist ein Memory Leak.
-PinkiWinki- is offline  
Old 12/08/2012, 15:44   #26



 
Sedrika's Avatar
 
elite*gold: 18
The Black Market: 103/0/0
Join Date: Sep 2009
Posts: 20,177
Received Thanks: 14,471
Meinst du damit solche kommentare im Source
Code:
    ''' <summary>
    ''' Anmelden auf Elitepvpers
    ''' </summary>
    ''' <param name="Username">Benutzername</param>
    ''' <param name="Password">Passwort</param>
    ''' <returns>True = Erfolgreich. False = Fehlgeschlagen.</returns>
    ''' <remarks></remarks>
Die sind drin.

Und wozu soll ich den Inhalt der Post Variable immer wieder disposen, wenn ich sie jedesmal überschreibe ?

Wenn es dich glücklich macht, schreibe ich ruhig vor jeder funk noch ein shared.
Sedrika is offline  
Old 12/08/2012, 15:54   #27
 
elite*gold: 2
Join Date: May 2010
Posts: 846
Received Thanks: 3,938
Ja die Kommentare meine ich, du musst aber auch die XML Datei mit senden(Und in den Einstellungen erstmal einschalten).

Es ist egal ob du die Variable überschreibst, Dispose MUSS immer aufgerufen werden, das hat schon seinen Sinn. Oft verwenden Klassen native Resourcen, dann sollte man auf jeden Fall Dispose aufrufen, sonst hast du einen schönen Memory Leak im Programm .
-PinkiWinki- is offline  
Old 12/08/2012, 16:01   #28



 
Sedrika's Avatar
 
elite*gold: 18
The Black Market: 103/0/0
Join Date: Sep 2009
Posts: 20,177
Received Thanks: 14,471
Ich schreib grad den kram nochmal um.

Edit: Hab es mal nun verändert neu hochgeladen und die v1.11 entfernt.

Ach und Dispose ist nicht nötig um Speicher freizugeben, da .NET dies von alleine dank der Garbagecollection welches ein Mehrstufiger Prozess ist und das ganze von alleine macht.
Dabei werden Objekte die nicht mehr referenziert werden aus dem Speicher geräumt und die, die noch referenziert werden, werden in eine zweite Ebene der Garbagecollection verschoben.

Das was ich jetzt gemacht habe ist alles zu sharen, damit man keine Instanzen mehr braucht.

Jemand der mit einem .NET Code ankommt (in dem fall du mit C#) und sich etwas darüber informiert hat, sollte es eigendlich wissen.

Zudem gibt bsp. Windows 7 alle Speicher vom Programm nach dem beenden wieder frei.

Mfg Sedrika
Sedrika is offline  
Old 12/09/2012, 17:42   #29
 
elite*gold: 2
Join Date: May 2010
Posts: 846
Received Thanks: 3,938
Eben nicht. Der GC verwaltet nur managed Objekte und ruft auch nicht Dispose auf. Dispose muss selber aufgerufen werden(Oder Using Pattern).

Klassen die das IDisposable Interface implementieren nutzen oft unmanaged Resourcen, welche dann mit Dispose freigegeben werden. Wenn du das Objekt einfach überschreibst bleiben damit die unmanaged Resourcen im Speicher und werden nie gelöscht, was am Ende ein Memory Leak ist . Du solltest dich besser informieren, ich weiß wie der GC funktioniert.

Klar, logisch, nachdem das Programm beendet wird wird alles gelöscht. Aber was wenn die Anwendung länger läuft und öfter die Funktionen nutzt? Am Ende hast du dann einen RAM Verbrauch von 100 MB bzw bekommst eine OutOfMemory Exception im Programm oder hast massig File/Stream/... Handles offen die eigentlich geschlossen werden sollen. Wie gesagt Dispose hat seinen sinn.

Bei manchen Klassen könnte man es theoretisch weglassen, aber das ist einfach unsauber und ein schlechter Stil.
-PinkiWinki- is offline  
Old 12/09/2012, 22:55   #30



 
Sedrika's Avatar
 
elite*gold: 18
The Black Market: 103/0/0
Join Date: Sep 2009
Posts: 20,177
Received Thanks: 14,471
Wozu sollte ich IDisposable in meine Subs einbringen um zwischen durch Manuell Resourcen freizugeben, wenn die GC das für mich macht.

Und nur weil mein Stil nicht deinem entspricht ist es och lange nicht schlecht.
Sedrika is offline  
Reply


Similar Threads Similar Threads
CO2_CORE_DLL (C# Library)
07/08/2014 - CO2 PServer Guides & Releases - 32 Replies
I decided to implement a big part of my knowledge in a library. At the start, I wanted to make a C library, but as mostly all the server use C# and because I don't want to work too much on it, I decided to make it in C#. The library is constructed like the .net framework. Often, you'll just have to change System to CO2_CORE_DLL to get some similar class/goal. The library is based on the version 5017 of CO2, but it may work on older or newer client. It also use a lot of pointer, but there...
Release Library
06/04/2013 - Maestia - 6 Replies
Here are all the working Releases and Tutorials. Speed Hack: This will increase your movement speed http://www.elitepvpers.com/forum/maestia/1288146- release-maestia-speed-hack-v-1-x86-64-a.html Hackshieldkiller, Bot,...: The bot will level automatically. The Hackshieldbypass will bypass the Hackshield, so you wont get kicked.
[Biete] Elitepvpers Library Source [VB.NET] | [Suche] elite*gold
01/19/2013 - elite*gold Trading - 3 Replies
.
[C#] Socket Library
03/28/2010 - Coding Releases - 2 Replies
Release Notes: This SocketLibrary (.dll) can be used for any purposes. From something big like a complete MMORPG, to something as small as a chat. I do not really care a bout you giving me credits for this release, but it would be nice if you did. You do not have to believe I made this, if you can prove I didn't create this, please show me. As far as I know, I did create this, didn't take me more than 10 minutes. Version(s): 0.1 - The first release, not many extras yet, just a basic,...



All times are GMT +1. The time now is 21:14.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.