Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

[ Win/Linux ][ Netzwerk ] TSNE_V2 / V3 - Netzwerk-Modul
Gehe zu Seite Zurück  1, 2, 3, 4, 5, 6, 7, 8, 9  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Projektvorstellungen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  

Wie findet Ihr dieses Projekt?
Super
78%
 78%  [ 15 ]
Gut
10%
 10%  [ 2 ]
Mittelmässig
10%
 10%  [ 2 ]
Schlecht (Warum?)
0%
 0%  [ 0 ]
Scheisse (Warum?)
0%
 0%  [ 0 ]
Stimmen insgesamt : 19

Autor Nachricht
isiprimax



Anmeldungsdatum: 02.01.2009
Beiträge: 77

BeitragVerfasst am: 02.10.2011, 15:03    Titel: Antworten mit Zitat

Unter Windows 7 64 Bit und dem FreeBasic Compiler 0.23 kommt folgende ausgabe.

Code:
[FEHLER] Can't create socket.


Ich habe nur die Datei "test_ping.bas" geöffnet und die IP meines Routers eingegeben.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1749
Wohnort: [JN58JR] DeltaLabs.de

BeitragVerfasst am: 02.10.2011, 18:16    Titel: Antworten mit Zitat

Oh .. habe ich ganz vergessen zu erwähnen:

es kann passieren, das man den PING Befehl nur mit "Root" Rechten ausführen kann.

Versuche es mal als Administrator unter windows.


MfG
TPM
_________________
[ WebFBC ][ OPS ][ DeltaLab's ][ ToOFlo ][ BGB-Movie ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
isiprimax



Anmeldungsdatum: 02.01.2009
Beiträge: 77

BeitragVerfasst am: 04.10.2011, 15:39    Titel: Antworten mit Zitat

Ja das mit den Adminrechten hat geholfen, ist aber nicht praktisch. Kann man das irgendwie umgehen?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1749
Wohnort: [JN58JR] DeltaLabs.de

BeitragVerfasst am: 04.10.2011, 15:41    Titel: Antworten mit Zitat

Das weis ich leider noch nicht. Theoretisch sollte es eventuell möglich sein, aber ich kann da nichts versprechen. Suche allerdings schon nach eienr möglichkeit das irgend wie zu umgehen.


EDIT
Unter linux liese sich dies auf einfache weise mit dem setzen von CAP_NET_RAW bzw. des SUID umgehen.


MfG
TPM
_________________
[ WebFBC ][ OPS ][ DeltaLab's ][ ToOFlo ][ BGB-Movie ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1749
Wohnort: [JN58JR] DeltaLabs.de

BeitragVerfasst am: 04.10.2011, 16:37    Titel: Antworten mit Zitat

@isiprimax

versuche einmal dieses Beispiel (modifiziertes Ping):
http://www.freebasic-portal.de/porticula/testtest-bas-1369.html

es integriert eine mischugn aus RAW sockets und dem Windows internem (schon mit root-rechte versehendem) Ping programm.

In deinem Falle sollte das Ping programm aufgerufen und deren ergebniss zurückgegeben werden.
Nachteil: die Genauigkeit der Zeit liegt nur im ms Bereich.

Wenn das Beispiel funktioniert (unter linux tut es das bereits), werde ich dies in TSNE integrieren.


MfG
TPM
_________________
[ WebFBC ][ OPS ][ DeltaLab's ][ ToOFlo ][ BGB-Movie ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 06.10.2011, 18:03    Titel: Antworten mit Zitat

Zitat:
Raw sockets offer the capability to manipulate the underlying transport, so they can be used for malicious purposes that pose a security threat. Therefore, only members of the Administrators group can create sockets of type SOCK_RAW on Windows 2000 and later. Anyone can create a raw socket on Windows NT 4.0, but non-Administrators will not be able to do anything with the socket and operations will fail with an error code of WSAEACCES.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1749
Wohnort: [JN58JR] DeltaLabs.de

BeitragVerfasst am: 06.10.2011, 22:20    Titel: Antworten mit Zitat

is mir bekannt, muss sich dennoch irgend wie umgehen lassen. ... oder möchtest mit der aussage irgend was anderes offenbaren, das ich nicht erkennen kann?


MfG
TPM
_________________
[ WebFBC ][ OPS ][ DeltaLab's ][ ToOFlo ][ BGB-Movie ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 07.10.2011, 13:43    Titel: Antworten mit Zitat

Du kannst es nicht umgehen. Du wirst zwangsweise mindestens einmal Administratorrechte benötigen, z.B. um einen Gerätetreiber (der wiederrum signiert sein muss) oder einen Service zu installieren, der ...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 08.10.2011, 11:06    Titel: Antworten mit Zitat

http://msdn.microsoft.com/en-us/library/windows/desktop/aa366050(v=vs.85).aspx

Das sollte sein, was du suchst. Alternativ auch IcmpSendEcho2Ex u.ä.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1749
Wohnort: [JN58JR] DeltaLabs.de

BeitragVerfasst am: 08.10.2011, 11:16    Titel: Antworten mit Zitat

hab ich bereits integriert. suche noch ne variante für linux bevor ichs veröffentliche.


MfG
TPM
_________________
[ WebFBC ][ OPS ][ DeltaLab's ][ ToOFlo ][ BGB-Movie ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1749
Wohnort: [JN58JR] DeltaLabs.de

BeitragVerfasst am: 15.12.2011, 06:45    Titel: Antworten mit Zitat

15.12.2011

* TSNE_PINGICMP definiert und includiert wegen möglicher nicht Existenz der ICMP.dll auf dem Zielsystem.
* TSNE_SUBCALLBACK definiert und includiert. Ermöglicht die direkte Weitergabe von Pointer an die Events.
* test_ping.bas aktualisiert.


Da es in letzter Zeit vermehrt zu problemen beim Compilieren kam. Vorallem wegen dem neuem PING in TSNE wurde eine 'TSNE_PINGICMP' Definiert.
Sie ermöglicht die Inkludierung der ICMP.dll in TSNE, wenn Sie definiert wurde.

Siehe hierzu das test_ping.bas Beispiel:

Code:

'...
'#Define TSNE_PINGICMP              'USE ONLY IF U SURE CAN SAY ICMP.DLL EXIST ON THE TARGET OS!!!
                                    'Dieses Flag signalisiert die Verwendung der ICMP.dll unter WINDOWS in TSNE.
                                    'Es kann vorkommen, das die ICMP.dll nicht auf jedem System verfügbar ist.
                                    'Daher bitte nur nutzen, wenn sichergestellt ist, das diese DLL auch WIRKLICH
                                    'auf dem Zielsystem verfügbar sein wird!

'...

'TSNE nutzt 3 arten von PING funktionen

'1. RAW-Ping    hierbei wird ein Socket erzeugt das selbst einen PING sendet und auswertet.
'               Hierfür sind ROOT-Rechte nötig! Sowohl unter Windows als auch unter Linux!
'2. APP-Ping    Das Programm "PING.exe" bzw "ping" unter Linux wird hierbei aufgerufen und
'               sendet den eigentlichen Ping. Hierfür sind KEIEN Root-Rechte nötig!
'               Sollte auf jedem System Funktionieren.
'3. ICMP.dll    TSNE nutzt bei gesetztem "TSNE_PINGICMP" die icmp.dll zum versand und empfang
'               eines Ping's. Hier muss jedoch die DLL auch im system Vorhanden sein, was
'               NICHT IMMER der Fall ist! Daher bitte mit vorsicht nutzen!

'Ein RAW-Ping Kann durch das Setzen des 'V_ForceRAWPing' Parameters in der Funktion 'TSNE_Ping' erzwungen werden.

'[WINDOWS]
'Zuerst wird versucht (Vorrausgesetzt TSNE_PINGICMP ist definiert) einen Ping über die ICMP.dll zu senden.
'Bei erfolglosem Versuch wird versucht das Programm "ping" auszuführen.
'Scheitert dies, versucht TSNE einen Ping über das RAW-Socket.
'
'[LINUX]
'Ist dieser Parameter auf 0 gesetzt wird zuerst versucht das Programm "ping" auszuführen.
'Scheitert dies, versucht TSNE einen Ping über das RAW-Socket.
'...



Neu (offiziell) hinzugekommen ist die möglichkeit Direkt Pointer an die Events zu übergeben. (Beispiel wird noch geschrieben)
(Anstoß zu dieser Änderung von TheMuh)

Wenn 'TSNE_SUBCALLBACK' definiert wurde, dann werden die Callback's mit einem weiterem Parameter aufgerufen (V_CallBackPtr as Any Ptr).

Als Kurze verdeutlichung:
* Aufruf von TSNE_Create_Client oder TSNE_Create_Accept mit einem Pointer zu einer Datenstruktur für die Verwaltung oder zu einem LinkedList Pointer. (Ganz am ende der Parameterliste)
* Bei einem Event wird, wenn 'TSNE_SUBCALLBACK' definiert, dieser in TSNE gespeicherte Pointer zurück übergeben und kann im Code genutzt werden.
Sinvoll um z.B. das Suchen in der LinkedList nach dem Eintrag zu dieser Verbindung zu vermeiden.

Die Verwendung von 'TSNE_SUBCALLBACK' ist NICHT zwingend. Sie kann, muss aber nicht genutzt werden.

Die Kompatibilität bleibt weiterhin zu allen Quellcodes erhalten!


'test_ping.bas' wurde mit infos gefüllt, die den Vorgang und das handling der PING-Funktion etwas erklären.


MfG
TPM
_________________
[ WebFBC ][ OPS ][ DeltaLab's ][ ToOFlo ][ BGB-Movie ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 16.12.2011, 12:49    Titel: Antworten mit Zitat

Die ICMP-API ist spätestens seit Win98 mit dabei, es sollte also keine Systeme mehr ohne die geben (Es sei denn natürlich, irgendein tolles Snakeoil-Programm entfernt dieses unerhörte Sicherheitsrisiko vom Rechner)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1749
Wohnort: [JN58JR] DeltaLabs.de

BeitragVerfasst am: 16.12.2011, 12:51    Titel: Antworten mit Zitat

Die API ist auch vorhanden. Nur die DLL nicht lächeln


MfG
TPM
_________________
[ WebFBC ][ OPS ][ DeltaLab's ][ ToOFlo ][ BGB-Movie ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Type



Anmeldungsdatum: 24.02.2006
Beiträge: 187
Wohnort: Dresden

BeitragVerfasst am: 18.12.2011, 16:44    Titel: Antworten mit Zitat

Heyho,

ich hab mir TSNE V3 hier heruntergeladen und wollte das Ping Beispiel ausprobieren.

Dummerweise erhielt ich folgende Ausgabe:
FreeBasic hat Folgendes geschrieben:
[FEHLER] Internal Error! Please contact support/programmer!
Drücken Sie eine beliebige Taste . . .


*DichKontaktier*

Weißt du, was da los ist?
MfG Type
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1749
Wohnort: [JN58JR] DeltaLabs.de

BeitragVerfasst am: 18.12.2011, 17:05    Titel: Antworten mit Zitat

Dieser Fehlercode ist schon recht schwerwiegend und deuten auf Fehler bei der Verarbeitung / Auswertung oder der Arbeitsweise von TSNE hin.

Kannst du mir ein paar angaben zu deiner Platform machen?

OS, FB Version, ...

Kannst du auch mal schaun, ob du auch ein ping.exe bzw. ping im os zur Verfügung hast, und es ausführen kannst?

Wenn ja, dann mach mal bitte einen ping auf folgende weise und gib mir den output.

linux:
Code:
/bin/ping -t 60 -c 1 -qU 127.0.0.1


windows
Code:
ping -w 60 -n 1 127.0.0.1



MfG
TPM
_________________
[ WebFBC ][ OPS ][ DeltaLab's ][ ToOFlo ][ BGB-Movie ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Type



Anmeldungsdatum: 24.02.2006
Beiträge: 187
Wohnort: Dresden

BeitragVerfasst am: 18.12.2011, 17:14    Titel: Antworten mit Zitat

Als OS hab ich Windows XP mit SP3 laufen.
Meine FreeBasic Version ist: 0.21.1

Ausgabe von Ping:
Windows hat Folgendes geschrieben:
Ping wird ausgeführt für 127.0.0.1 mit 32 Bytes Daten:

Antwort von 127.0.0.1: Bytes=32 Zeit<1ms TTL=128

Ping-Statistik für 127.0.0.1:
Pakete: Gesendet = 1, Empfangen = 1, Verloren = 0 (0% Verlust),
Ca. Zeitangaben in Millisek.:
Minimum = 0ms, Maximum = 0ms, Mittelwert = 0ms


Mir ist aber gerade aufgefallen, dass der nur Fehler auftritt, wenn die IP nicht erreichbar ist. - Eventuell war das ja so gewollt, von dir. Aber bei einem nicht gefundenem Host, sollte man keinen internen Fehler ausgeben, oder?

MfG Type
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1749
Wohnort: [JN58JR] DeltaLabs.de

BeitragVerfasst am: 18.12.2011, 17:51    Titel: Antworten mit Zitat

richtig. hab ich garnicht bedacht. THX

kannst du mri mal eien ausgabe geben, wenn der host nicht erreichbar ist?


MfG
TPM
_________________
[ WebFBC ][ OPS ][ DeltaLab's ][ ToOFlo ][ BGB-Movie ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Type



Anmeldungsdatum: 24.02.2006
Beiträge: 187
Wohnort: Dresden

BeitragVerfasst am: 18.12.2011, 20:53    Titel: Antworten mit Zitat

Wie meinst du das? - wenn ping.exe fehlschlägt?

ping.exe hat Folgendes geschrieben:
Ping wird ausgeführt für 192.168.3.3 mit 32 Bytes Daten:

Zeitüberschreitung der Anforderung.

Ping-Statistik für 192.168.3.3:
Pakete: Gesendet = 1, Empfangen = 0, Verloren = 1 (100% Verlust),


MfG Type

Edit: Mal was anderes:
Wenn ich gtk und TSNE zusammen verwende, bekomme ich beim kompilieren viele Fehlermeldungen:
- Bei Include von GTK vor TSNE:
FreeBasic hat Folgendes geschrieben:
E:\FreeBASIC\inc\crt\win32\time.bi(14) error 4: Duplicated definition, tm in 'type tm'
Kompilierung fehlgeschlagen.


- Bei Include von TSNE vor GTK:
FreeBasic hat Folgendes geschrieben:
\gtk\glib\gmain.bi(85) error 56: Illegal specification, at parameter 2 (99) of g_main_context_query() in 'declare function g_main_context_query (byval context as GMainContext ptr, byval max_priority as gint, byval timeout_ as gint ptr, byval fds as GPollFD ptr, byval n_fds as gint) as gint'
C:\Dokumente und Einstellungen\christof\Desktop\ping\ServerMonitor\gtk\glib\gmain.bi(86) error 56: Illegal specification, at parameter 2 (99) of g_main_context_check() in 'declare function g_main_context_check (byval context as GMainContext ptr, byval max_priority as gint, byval fds as GPollFD ptr, byval n_fds as gint) as gint'
C:\Dokumente und Einstellungen\christof\Desktop\ping\ServerMonitor\gtk\glib\gkeyfile.bi(44) error 56: Illegal specification, at parameter 2 (&h80) of g_key_file_get_keys() in 'declare function g_key_file_get_keys (byval key_file as GKeyFile ptr, byval group_name as zstring ptr, byval length as gsize ptr, byval error as GError ptr ptr) as zstring ptr ptr'
C:\Dokumente und Einstellungen\christof\Desktop\ping\ServerMonitor\gtk\glib\gkeyfile.bi(45) error 56: Illegal specification, at parameter 2 (&h80) of g_key_file_has_group() in 'declare function g_key_file_has_group (byval key_file as GKeyFile ptr, byval group_name as zstring ptr) as gboolean'
C:\Dokumente und Einstellungen\christof\Desktop\ping\ServerMonitor\gtk\glib\gkeyfile.bi(46) error 56: Illegal specification, at parameter 2 (&h80) of g_key_file_has_key() in 'declare function g_key_file_has_key (byval key_file as GKeyFile ptr, byval group_name as zstring ptr, byval key as zstring ptr, byval error as GError ptr ptr) as gboolean'
C:\Dokumente und Einstellungen\christof\Desktop\ping\ServerMonitor\gtk\glib\gkeyfile.bi(47) error 56: Illegal specification, at parameter 2 (&h80) of g_key_file_get_value() in 'declare function g_key_file_get_value (byval key_file as GKeyFile ptr, byval group_name as zstring ptr, byval key as zstring ptr, byval error as GError ptr ptr) as zstring ptr'
C:\Dokumente und Einstellungen\christof\Desktop\ping\ServerMonitor\gtk\glib\gkeyfile.bi(4cool error 56: Illegal specification, at parameter 2 (&h80) of g_key_file_set_value() in 'declare sub g_key_file_set_value (byval key_file as GKeyFile ptr, byval group_name as zstring ptr, byval key as zstring ptr, byval value as zstring ptr)'
C:\Dokumente und Einstellungen\christof\Desktop\ping\ServerMonitor\gtk\glib\gkeyfile.bi(49) error 56: Illegal specification, at parameter 2 (&h80) of g_key_file_get_string() in 'declare function g_key_file_get_string (byval key_file as GKeyFile ptr, byval group_name as zstring ptr, byval key as zstring ptr, byval error as GError ptr ptr) as zstring ptr'
C:\Dokumente und Einstellungen\christof\Desktop\ping\ServerMonitor\gtk\glib\gkeyfile.bi(50) error 56: Illegal specification, at parameter 2 (&h80) of g_key_file_set_string() in 'declare sub g_key_file_set_string (byval key_file as GKeyFile ptr, byval group_name as zstring ptr, byval key as zstring ptr, byval string as zstring ptr)'
C:\Dokumente und Einstellungen\christof\Desktop\ping\ServerMonitor\gtk\glib\gkeyfile.bi(51) error 56: Illegal specification, at parameter 2 (&h80) of g_key_file_get_locale_string() in 'declare function g_key_file_get_locale_string (byval key_file as GKeyFile ptr, byval group_name as zstring ptr, byval key as zstring ptr, byval locale as zstring ptr, byval error as GError ptr ptr) as zstring ptr'
C:\Dokumente und Einstellungen\christof\Desktop\ping\ServerMonitor\gtk\glib\gkeyfile.bi(51) error 123: Too many errors, exiting
Kompilierung fehlgeschlagen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1749
Wohnort: [JN58JR] DeltaLabs.de

BeitragVerfasst am: 22.12.2011, 12:19    Titel: Antworten mit Zitat

hmmm .. ich kann mir nur vorstellen, das irgend ein typ doppelt deklariert werden soll. und zwar "tm" ... aber das muss dann wohl irgend wo in der windows.bi sein.


MfG
TPM
_________________
[ WebFBC ][ OPS ][ DeltaLab's ][ ToOFlo ][ BGB-Movie ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Keltin



Anmeldungsdatum: 23.08.2012
Beiträge: 10

BeitragVerfasst am: 23.08.2012, 14:44    Titel: Antworten mit Zitat

Hallo,

ich glaub ich hab da einen Bug entdeckt.
Ich habe mit den neuen Compiler fbc 0.24.0 für Windows immer einen Absturz des Programmes wenn ich mit TSNEv3 arbeite sobalt das Programm beendet wird.

Dabei reicht schon ein simpler Code wie dieser:

Code:

#Include once "TSNE_V3.bi"
Print "Hallo Welt"
sleep


Wenn der gleiche Code mit fbc 0.23.0 für Windows compiliert wird gibt es keine Fehler.
Unter Win XP hängt sich das Programm nach drücken einer Taste auf und läst sich nur mit TaskManager beenden.
Bei Win7 x64 kommt die Meldung "Test.exe funktioniert nicht mehr" und man kann das Programm schließen oder online nach einer Lösung suchen lassen.

Edit:
Ich hab diesen Fehler auch im FB-Referenz - Bug-Report geschrieben und dort kamm schon eine Antwort von MOD welche den Fehler behoben hat.
Mit den Link zu einer neuen TSNE Version http://ops.ath.cx/code?id=249 grinsen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Projektvorstellungen Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite Zurück  1, 2, 3, 4, 5, 6, 7, 8, 9  Weiter
Seite 7 von 9

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz