Zum Inhalt springen

De Kaisastiähla

Mitglieder
  • Gesamte Inhalte

    32
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von De Kaisastiähla

  1. Oh mann ich bin so dumm. Nachts arbeiten ist einfach für den Allerwertesten. Also das Problem war Debugger. Bei so einer Konstruktion (array von maps von structs und uints) zeigt er mir einfach nichts an. Da steht einfach nichts. NOrmalerweise kann man schön alle Member aufklappen und anschaun. Dann steht da alles wichtige. Adressse, Typ, Inhalt usw. Aber hier stand " _p$[4] (0)" Und die Klammer gibt normalerweise die Menge der Elemente an.Schön habe ich mich veräppeln lassen. Zum Schluss habe isch das _p$ mal komplett durchiteriert und mit OutputDebugString alles ausgegeben. Danke nochmal für den Tip Und siehe da. Inhalte sind doch drin. Gruß und danke für die Zeit Klotzkopp
  2. Ich hab mal mit Spy++ drüber geschaut, konnte aber keine Childwindows erkennen. Wie kommst du zu deiner Aussage?
  3. Wird in der main gemacht. Intanziiert das singleton. if (!p_Tablemap) p_Tablemap = new TABLEMAP; tm.h #include "atlstr.h" #include <map> struct STablemapHashPoint{ unsigned int x; unsigned int y; }; typedef std::pair<unsigned int, STablemapHashPoint> PPair; typedef std::map<unsigned int, STablemapHashPoint> PMap; typedef PMap::iterator PMapI; extern class TABLEMAP { public: TABLEMAP(void); ~TABLEMAP(void); private: PMap _p$[4]; // indexed on "x<<16 | y" (as a uint32_t; x in high 16bits, y in low 16bits) const bool p$_insert(const int i, const STablemapHashPoint s){ if (i>=0 && i<=3) { std::pair<PMapI, bool> r=_p$[i].insert(PPair(((s.x&0xffff)<<16) | (s.y&0xffff), s)); return r.second; } else return false; } } *p_Tablemap; #endif tm.cpp CTablemap *p_tablemap = NULL; Hi, ich bräucht mal eure Hilfe. Ich quäle mich jetzt schon 8 Stden damit rum. Egal wie viel ich in _p$ inserte es bleibt leer. Beziehungsweise es wird gar nicht erst mit 4 initialisiert. Woher kommt das?
  4. Hallo, ich möchte in C++ durch die Winapi auf ein Childwindow eines anderen Programms zugreifen und auslesen. Allerdings ist das Programm in Java geschrieben und baut auf AWT auf. Wie bekomme ich das hin? Gibt es libs? Ist Java Acces Bridge eine Richtung? Gruß
  5. Okay gut zumindest können Googler das vielleicht für sich nutzen...
  6. Schau die hier die Motivation an. Ich muss zugeben die Funktionsweise des IP-Routing per google zu finden ist nicht leicht. In unserem "Skript" auf Seite 17-26 kannst du dir anschauen wie es funktioniert. Wenn du das konzentriert durchgelesen, und verstanden hast erübrigt sich deine Frage. EDIT: Noch besser schaus dir live an! Teil1 17 +18 Teil2 18 - 26
  7. Ein Layer(Level)-3-Switch unterscheidet sich wesentlich vom Layer-2-Switch. Ein Layer(Level)-3-Switch ist eigentlich ein Router. Beziehungsweise er erledigt die selbe Arbeit. Im Vergleich zum richtigen Router ist er aber wesentlich schneller, da er die Arbeit hauptsächlich durch Hardware erledigt. Ein Router routet softwaregesteuert. Übersichtlicher Artikel über Hubs, Switches und Router Für Details der Wiki Artikel
  8. Warte ne woche ich mache grad ein Seminar drüber. Dann kann ich dir 8 Seiten Info geben. Wenn du mit deinem Client deinen festen DesktopPC meinst empfiehlt es sich statische ARP Einträge in den Cache einzutragen. Nimm dir dazu die Eingabeaufforderung und tippe arp ein. Dem Manual kannst du dann entnehmen wie du das machst. Mach das aber wirklich nur wenn du dir sicher bist dass dein Client dein Heimnetz nicht verlässt. Das ist aber nur die Halbe Miete. Zumindest ist ein MITM Hack nicht mehr (ganz) möglich. Trotzallem ist der Router noch anfällig für manipulative ARP-Replys. D.h. dein Downloadtraffic kann noch abgehört werden. (zumindest sind bis hier deine Passwörter sicher). Aber jetzt würde ich auch gerne eine praktikable Lösung wissen. Wie schalte ich in meinem Router und Win7 die Adress Resolution aus? Ich sehe das Problem beim Router (T-Com Speedport) wie soll ich da statische ARP-Einträge machen?
  9. Hallöle ich hab mal ne Frage. Also ich hab das ARP langsam intus. Aber eins ist mir noch immer unklar. Wenn ein IP Paket nach "draussen" also aus dem Subnetzwerk gesendet werden soll, dann wird doch in der Routingtabelle geschaut und festgestellt "ach ist ja ausserhalb" dann muss das ARP evtl noch MAC des Routers auflösen und das IP paket wird einfach an den Router weitergeleitet. wozu jetz Proxy-ARP wie hier illistriert?
  10. Wow du musst C++ erfunden haben. Würde mich interessieren wie du dir so viel Wissen angeeignet hast. Karriere?

  11. Jop, testen kann ich immer nur im mit dem Debugger von VS2010, indem ich die Variablen verfolge. Das haben die echt gut gemacht. In Win32 Anwendungen ist es leider nicht so einfach etwas auszugeben à la prinntf(...) oder weitere. Überzeugt mich vom Gegenteil, würde mich sehr freuen. Danke, gemacht. Nochmals danke, feine Sache wenn das für mich erledigt wird. Ich muss dazu sagen, dass wir das in der Uni gelernt haben. Prof obv failed teaching C++. Hier steht halt das getline den istream zurückgibt. Deinem Code entnehme ich dann, dass ein leerer istream NULL/0/false ist. Ist das immer so? Naja würde ich gern aber ich brauche hinterher nen CSting wegen seinen angenemen Operationen und Möglichkeit ihn zu kovertieren. Ich habe schon ne weile nach casts von Std::string zu jeglichen (unnötig vielen) Stringarten gesucht, aber das scheint mir nicht so einfach wie der CString. Hier habe ich eine Lösung gefunden. Nur nicht für den Std::string. Danke für die kompetente Hilfe.
  12. Hallo, ich möchte aus einer Datei lesen aber irgendwie will getline mir nichts ausgeben // Open the file fstream f; f.open("111.txt", ios::in); if (!f.is_open()) return Error(); while (!f.eof()) { f.getline(charstrLine, 80); } f.close(); 111.txt existiert und hat Inhalt. Ich bin mir nicht sicher ob es am Unicode liegt aber selbst wenn sollte es ja irgendwas ausgeben, da die Buchstaben (ohne Umlaute) ja die selben Werte haben, oder? Ich verzweifel beinahe. Sitze schon den ganzen Anbend/Nacht. Sehen dass das nicht funktionier tu ich im Debugmodus. Die werte ändern sich nicht. habe auch schon messageboxes ausgeben wollen. geht nicht. Infos: c++ VS 2010 Win32 Anwendung non MFC keine vorkompilierte Header nichts was ich nicht kenne ATL/STL und so ... ka was das bedeutet... alles aus.
  13. Ich kann es mir selbst beantworten. Habe gerade etwas mit der height rumgespielt und herausgefunden, dass er immer auf vielfache der Eintragshöhe rundet. Kann ich das irgendwie umgehen?
  14. listbox_tables_handle = CreateWindow( L"LISTBOX",L"ListBox", WS_VISIBLE | WS_CHILD | LBS_STANDARD, 0, 0, 200, 300, hWnd, (HMENU)0, GetModuleHandle(NULL), NULL); Damit mach ich meine Listbox. Warum zur Hölle macht er sie aber 200x290 groß?
  15. Hallo, dieses Thema interessiert mich brennend. Das will ich erreichen: ... die DrawText(Ex) Funktionen hooken. Nur bin ich noch nicht ganz durchgestiegen. Ich habe dazu einige Fragen: -Mauss ich dazu zwingend DLL-Injection beherrschen? -Brauche ich Detours.h zwingend dazu? Oder bietet die Windows.h da etwas in der Richtung? -Kennt ihr ein gutes Tutorial? -Wenn nicht, ihr aber bescheid wisst wärt ihr bereit mich einzulernen? -Hat jemand von euch sich schon mal damit beschäftigt und zufällig etwas Codegeschnipsel auf der Platte?
  16. Hallo, also cih will mir eine kleines Programm schreiben das mir TopLevel Fenster ausgibt. Funktioniert auch mit EnumWindows. Jetzt will ich das so getsalten, dass ich eingeben kann wonach im Title gesucht wird. Ist auch nicht weiter wild. Also ich speicher einen String dnach wird gesucht. Der String soll aber veränderbar sein. Also dachte ich an einen Button, der ein weiteres Fenster öffnet (Dialog box oder sowas). Indem ich den String eingeben und bestätigen bzw abbrechen kann. Hier ist mein Problem. In diversen Foren, MSDN Dolumentation, Tutorials wird nirgends auf eine "richtige" Weise hingewiesen. Ich weiss nicht wohin mit meinem Code und was ich jetz machen soll(Dialog Box oder MessageBox etc). In den Tuts über Dialogboxes wird NUR die Dialogbox kreiert. Also ohne Parentwindow. Wie macht ihr das? hat jemand von euch ein Codeschnipsel von seinen Win32API anfängen? Des weiteren würde ich mich freuen wenn mir einer Zeigen könnte wie ich dass elegant hibekomme. Meine *.cpp sieht total überladen aus. Kann ich *Procs auslagern, oder überhaupt irgendwelche Teile auslagern. Ich bin völlig erschlagen von dem ganzen imperativen Mist. Ich habe schon ein, zwei tage versucht die GDI etwas OO zu gestalten, hatte aber dann probleme mit EnumWindows (statische EnumWindowProc-Funktion wollte eigene statischen member nicht -> linker fehler -> weitüber meinem Horizont) Ich wär sehr Dankbar wenn mir mal jemand den roten Faden in die Hand drücken könnte, da ich schon seit Studen nicht weiter komme.
  17. Okay hatte etwas Eile, sorry. Also hab den Fehler selbst gefunden. Es war ziemlich ungeschickt einen Timer mit 0 zu initialisieren. Und dann auch noch const. Greets
  18. #include "Windows.h" #include "Tchar.h" #include "stdio.h" #include "stdlib.h" #include <vector> #include <string> #include "resource.h" using namespace std; //_____________________________________________________________________________ // Global variables static TCHAR szWindowClass[]= _T("mthb"); // The main window class name. static TCHAR szTitle[] = _T("MyTHB"); // The string that appears in the application's title bar. static const int TimerID; //_____________________________________________________________________________ // Prototypes LRESULT CALLBACK WindowProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam); //============================================================================== int WINAPI WinMain (HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpcmdline, int ncmdshow) //============================================================================== { MSG message; HWND hWnd; WNDCLASSEX windowclass; // Struktur für Fenstereigenschaften windowclass.cbSize = sizeof (WNDCLASSEX); windowclass.style = CS_HREDRAW | CS_VREDRAW; windowclass.lpfnWndProc = WindowProc; windowclass.cbClsExtra = 0; windowclass.cbWndExtra = 0; windowclass.hInstance = hInst; windowclass.hIcon = LoadIcon (hInst, MAKEINTRESOURCE(IDI_ICON1)); windowclass.hIconSm = LoadIcon (hInst, MAKEINTRESOURCE(IDI_ICON1)); windowclass.hCursor = LoadCursor (NULL, IDC_ARROW); windowclass.hbrBackground = (HBRUSH)COLOR_BACKGROUND+1; windowclass.lpszMenuName = NULL; //(LPCWSTR)("Datei"); windowclass.lpszClassName = szWindowClass; // Fensterklasse registrieren if (!RegisterClassEx (&windowclass) ){ MessageBox(NULL, _T("Call to RegisterClassEx failed!"), _T("ManusApp"), NULL); return 1; } // Fenster-Handle erzeugen hWnd = CreateWindowEx ( NULL,//WS_EX_TOOLWINDOW, szWindowClass, szTitle, WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, 800, 400, NULL, NULL, hInst, NULL); // Test Create(); if (!hWnd){ MessageBox(NULL,_T("Call to CreateWindow failed!"),_T("ManusApp"),NULL); return 1; } ShowWindow(hWnd, SW_SHOWNORMAL); UpdateWindow(hWnd); // Empfange Nachrichten while (GetMessage(&message, NULL, 0, 0) ){ TranslateMessage (&message); DispatchMessage (&message); } return (int)(message.wParam); } // WinMain //============================================================================== LRESULT CALLBACK WindowProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) //============================================================================== { switch (message){ //------------------------------------------------------------------------- case WM_CREATE: { if (!SetTimer(hWnd, TimerID, 1000, NULL)) MessageBox(NULL, _T("No timer available"), _T("ManusApp"), NULL); return (0); } //------------------------------------------------------------------------- case WM_DESTROY: { //KillTimer(hWnd, TimerID); PostQuitMessage (0); return (0); } //------------------------------------------------------------------------- case WM_TIMER: { Beep(7000,100); return 0; } //------------------------------------------------------------------------- return (DefWindowProc (hWnd, message, wParam, lParam) ); } // WindowProc Danke für eure Hilfe bisher. Also ich hab mir die Dokumentationen und viele Beispiele durchgelesen. Aber irgendwie funktioniert der Timner nicht. Witigerweise wenn ich die negation vor SetTimer wegmache kommt natürlich die Meldung also die MessageBox ABER der Timer läuft bzw es piepst. Und zwar NUR SO LANGE bis ich ich die messagebox wegklicke. Ich versteh die Welt nicht mehr. Könnt ihr mir helfen? Code ist stark aufs Wesentliche eingekürzt evtl sind noch ein paar übrigbleibsel drin. Danke schonmal und viele Grüße.
  19. Ich habe bisher nur Konsolenprogramme geschrieben udn bin mir nicht ganz sicher wo jetz der eigentliche Programmcode rein soll, da in der WINMAIN ja nur GUI zeugs steht und am Ende der IP in einer Endlosschleife kursiert. Ich will dass jede Sekunde alle Fenster in einer Listbox ausgegeben/aktualisiert werden. Hier ist doch ein Thread sehrsinnvoll oder nicht? Nur soll er nicht die ganze Ziet laufen sondern nur alle 1000ms nachschaun.
  20. Hi, wenn ich will dass mein Programm (bisher nur fenster) jede sekunde was machen soll, wei implementiere ich das sinn voll? Ich gehe davon aus, dass ich beim der WM_CREATE message einen Thread erstelle der was macht und dann 1000ms in Sleep(1000); geht oder ? Oder gibt es da sinnvollere Herangehensweisen?
  21. Ne abba es nervt zu sehen dss man für 1k brutto 10 Jahre aufem ***** sitzen muss. Zu allem übel kommt noch dazu, dass die Steueren überproportional steigen. Klar kann man einem der nichts hat nicht viel nehmen. Aber dass mann dann dem der ein klein bisschen mehr hat gleich so viel nehemne muss ****t mich einfach an. Der Staat soll bei den Assis die (unverdient) 100k aufwärts im Jahr verdienen abkassieren und nich beim - und dass ist das Problem, bzw Absicht des Steuersystems - zahlenmäßig viel größeren Mittelstand. Frei nach dem Motto Kleinvieh macht auch/(mehr) mist.
  22. Hajaa noch schlimmer, warn Fehler gut... freu dich... 1400€/Monat * 120 Monate = 168000€ 1680000€ / 400 €/monat = 35 Jahre... zurfrieden... immernoch das sellbe enttäuschende ergebnis. Ich geh arbeiten wie jeder andere, damit ich mir meine Semmeln leisten kann, und muss dann eben das kleinste Übel nehmen. Und das kleinste Übel is eben Informatik weils mich interessiert. Und kommm mir jetz nich mit, Arbeiten gehen zur Erfüllung, oder als sinn des Lebens.... wenn du Geld ****en würdest, wär dein erster Gedanke bestimmt ich geh jetz Informatik studieren....
  23. Lool. Frechheit was hier abgeht. Hab mal per mail übers Arbeitsamt bei ein paar firmen in ganz D verteil nachgefragt. 3000 durchschnittlich BRUUUUTTO! > 1800 Netto > nur 400 mehr als meine Freundin die mit hauptschulabschluss scon seit sie 15 ist arbeitet. Ich bin Informatikstudent, 23 fang frühesten mit 25 an. Das sind 10Jahre -> 120Monate*1200€/m = 144000€ die ich nachholen muss. d.h. 144000€/400€/Monat=360 -> in 30 Jahren hab ich meine Freundin gehaltsmäßig eingeholt. Vielen Dank dann bin ich 55 und hab nur noch 12 Jahre in denen ich nur knapp mehr als 50000 als meine freundin erwirtschafte bevor ich in Rente geh. Wie geil ist das denn... Für was hab ich eigentlich meine Jugend verschwendet? Damit ich mit 55 mehr Geld hab?
  24. #include <stdio.h> #include <windows.h> int main(int argc, char **argv) { //Definitionen und Deklarationen int temp; int begin; int end; int sd; int loop; WSADATA firstsock; char hostname[100]; struct sockaddr_in HOST_ADDR; // Input printf("Enter ip to scan :\t"); gets(hostname); if(!(isdigit(hostname[0]))) exit(EXIT_FAILURE); printf("Enter starting port :\t"); scanf("%d" , &begin); printf("Enter ending port :\t"); scanf("%d" , &end); system("cls"); //Initialisiere winsock if (WSAStartup(MAKEWORD(2,0),&firstsock) != 0) { fprintf(stderr,"WSAStartup() failed!"); exit(EXIT_FAILURE); } //Host definieren HOST_ADDR.sin_family = AF_INET; HOST_ADDR.sin_addr.s_addr = inet_addr(hostname); // Alle Daten Ausgeben und mainloop starten printf("Hostname:\t%s\t%d\n" "Startport:\t%d\n" "Endport:\t%d\n\n", hostname, HOST_ADDR.sin_addr.s_addr, begin, end); // Schleife um die einzelnen Ports abzufragen for(loop = begin; loop <= end; loop++) { HOST_ADDR.sin_port = htons(loop); //Socket öffnen sd = socket(AF_INET , SOCK_STREAM , IPPROTO_TCP); if (sd == -1) printf("Socket could not be created.\n"); //Versuche mit Port zu verbinden temp = connect(sd , (struct sockaddr *)&HOST_ADDR , sizeof HOST_ADDR); if (temp == -1) printf("Port %d is closed.\n", loop); else printf("Port %d is open\n", loop); //Socket schließen temp = closesocket(sd); if (temp == -1) printf("Socket %s:%d could not be closed properly.\n",hostname, loop); } //Beende winsock WSACleanup(); printf("Portscan has finished\n"); system("pause"); return EXIT_SUCCESS; } Pro Port braucht er eine halbe Sekunde.:upps Was meint ihr wie kann ich den beschleunigen? Grüße
  25. Mein Programm soll nicht allgemeingültig sein, eher sehr spezifisch. Mir ist mittlerweile ein besseres Beispiel eingefallen: Ein Bot der Blackjack spielt. Er erkennt Karten, gibt den Betrag ein und drückt Knöpfe (verdoppeln, teilen, ablegen und was es da noch so gibt). Das ist dann schon die nächste Frage wie kann man so etwas herausfinden?

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...