Zum Inhalt springen

Fufialk

Mitglieder
  • Gesamte Inhalte

    297
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von Fufialk

  1. Ich habe schon ähnliche Probleme gehabt. Und würde folgende Lösungen Vorschlagen: Ich würde im Gerätemanager alle USB-Treiber deinsatllieren, Achtung, auch ausgeblendete Geräte runterschmeissen. und den Rechner neu starten und die Treiberinstallation für die USB Root Hubs durchlaufen lassen. Als nächstes erst mal nur den Treiber vom Cardreader Installieren. Auch wenn XP diese normalerweise standardmässig erkennt und automatisch installiert, liegt hier manchmal der Teufel im Detail. Einen Treiber der vom Hersteller kommt sollte es trotzdem geben und dieser sollte auch besser funktionieren, als die Windowseigenen Treiber. Danach das Gerät anstecken und kucken, was passiert. Wenn es sich bei dem Cardreader um ein passives Gerät handelt, also ohne eigene Stromversorgung, wovon ich bei diesem Fehler mal ausgehe, kann es zudem daran liegen, daß Deine USB-Ports nicht ausreichen mit Strom versorgt werden. Schau mal im Handbuch des Mainboards nach, ob da eventuell verschiedene Ports verbaut sind. Leider ist USB 2.0 nicht immer gleich USB 2.0 und Plug & Play nur ein Gerücht. Sollte es an der Stromversorgung liegen, kannst Du Glück haben, und ein neues Netzteil behebt Dein Problem, oder aber auf dem Board wurden einfach mal billige Komponenten verbaut, die zwar dem Standard genügen, jedoch die im Standard verabschiedeten Toleranzen zu sehr ausreizen.
  2. Nun, leider ist das Problem nicht so einfach. Da ich mir darüber ja im Vorfeld auch Gedanken gemacht hatte, und vorher sowohl den S-ATA als auch den S-ATA-RAID Treiber für XP besorgt und auf eine Diskette gepackt hatte. Beide quittierten das Setup mit der o.g. Fehlermeldung. Einer von beiden hätte ja funktionieren müssen. Wie ich im Laufe der letzten Nacht festgestellt habe. Das Problem ist der Treiber selbst. Die XP-Treiber egal ob RAID oder nicht führen zu diesem Fehler. Ich habe mir mit nlite eine Setup-CD erstellt, in welche ich sowohl das ServicePack 2 als auch alle verfügbaren Treiber für den Controller integriert habe. Auch die NT4 Treiber!!! Und siehe da, es hat alles tadellos funktioniert. Ich denke, dass hier der eigentliche Fehler liegt. Die XP-Treiber lassen sich anscheinend nur in ein laufendes System integrieren, beim Setup versagen sie aber. Dies ist übrigens auch bei anderen RAID Controllern ein Problem, wie ich in einem anderen Forum gelesen habe. Übrigens hilft nlite bei der Neuinstallation auf Notebooks mit SATA-HDD's und Usern, die kein Floppy mehr haben. Vielen Dank an alle, bis zum nächsten Problem....
  3. Hallo, Ich habe folgendes Problem, und würde gerne wissen, wer helfen kann. Ich habe ein S-ATA RAID System für meinen PC eingerichtet, und wollte nun Windows XP installieren. Beim Einbinden des S-ATA RAID Treibers (über F6 im Setup) erhielt ich folgende Fehlermeldung: In Datei txtsetup.oem ist ein unerwarteter Fehler (1024) in Zeile 1742 in f:\nt4\base\boot\setupoemdisk.c aufgetreten. Ich hatte vorher das XP auf einer Standalone S-ATA Festplatte installiert, was mit den Treibern problemlos funktioniert hat. Löse ich den RAID-Verbund auf und versuche die Installation wie vorher als Standalone, erhalte ich plötzlich die selbe Fehlermeldung, obwohl es bei der früheren Installation problemlos geklappt hat. Ich habe bereits verschiedene Treiberversionen aus verschiedenen Quellen probiert, immer ohne Erfolg. Auch der Versuch Treiber und das Servicepack 2 in eine neue Setup CD zu integrieren, brachten keinen Erfolg, was aber bisher noch daran liegt, daß die Treiber auf der CD nicht gefunden werden. Der Versuch den Treiber von Diskette einzubinden wird ebenfalls mit der o.g. Fehlermeldung quittiert. Wer hat noch einen Tipp? Ich arbeite mit einen ASUS A7N8X-Deluxe und zwei Samsung HD080HJ HD's im Stripset am onboard SIL3112A Controller. Um Problemen vorzubeugen habe ich vorsichtshalber die Festplatten per Jumper in den 150MB/s Modus versetzt.
  4. Ich arbeite alleine auf dem Rechner mit Administratorrechten. Wenn ich ich alle Dateien außer der *.ide und der *.cpp im Ordner lösche, werden alle anderen Dateien (beim compilieren die *.CSM und beim befehl "make project" auch die *.r$p) erstellt. Jedoch kommt dann die fehlermeldung, daß diese nicht geöffnet werden kann. Übrigens auf dem Rechner mit der Originalversion hab ich keine Adminrechte. Dort funktioniert alles problemlos.
  5. Hallo, Ich habe ein funktionierendes Projekt auf einen anderen Rechner übertragen, jdoch erhalte ich beim Linken folgende Fehlermeldung: Transferring to C:\BC5\BIN\tlink.exe @F:\auswertung\coderupp\datsrv.r$p' (1,1):Unable to open file 'f:\auswertung\coderupp\datsrv.r$p' Die Datei existiert allerdings im angegebenen Verzeichnis. Auch stimmen die Projekteinstellungen auf beiden Rechnern überein. Die Datei ist nicht schreibgeschützt. Kann das eventuell an den unterschiedlichen Prozessoren liegen? Auf dem Originalrechner arbeitet ein AMD Duron Prozessor (Windows2000), auf dem zweiten handelt es sich um einen AMD Turion64 ML-32 (Windows XP). Der Kompiler ist bei beiden der selbe (Borland C++ 5.02). Oder gibt es eventuell noch weitere Einstellungen außer denen unter Options, die ich berücksichtigen muß?
  6. Einstellungen in welchem Bereich? Ich habe die Optionen (Options|Project) manuell übertragen, und es läuft trotzdem nicht (selbe Fehlermeldung). Im übrigen kann man doch diese Optionen den C/C++ Standard doch gar nicht aufweichen, bzw. neue Funktionen hinzufügen.
  7. Hier alle Warnungen, die er mir rauswirft. Wie gesagt es sieht alles nach falscher Syntax bzw. falschen deklarationen aus, bei der Original Projektdatei zuckt er nicht im geringsten, und erzeugt eine lauffähige Anwendung. Info :Building... Info :Compiling C:\Auswertung\C++\CodeRupp\Datsrv\datsrv.cpp Error: TCPIPAPI.H(56,28):Declaration missing ; Error: TCPIPAPI.H(59,28):Multiple declaration for 'recv_params::far' Error: TCPIPAPI.H(56,28):Earlier declaration of 'recv_params::far' Error: TCPIPAPI.H(59,28):Declaration missing ; Error: TCPIPAPI.H(60,28):Multiple declaration for 'recv_params::far' Error: TCPIPAPI.H(59,28):Earlier declaration of 'recv_params::far' Error: TCPIPAPI.H(60,28):Declaration missing ; Error: TCPIPAPI.H(66,28):Declaration missing ; Error: TCPIPAPI.H(69,28):Multiple declaration for 'send_params::far' Error: TCPIPAPI.H(66,28):Earlier declaration of 'send_params::far' Error: TCPIPAPI.H(69,28):Declaration missing ; Error: TCPIPAPI.H(70,28):Multiple declaration for 'send_params::far' Error: TCPIPAPI.H(69,28):Earlier declaration of 'send_params::far' Error: TCPIPAPI.H(70,28):Declaration missing ; Error: TCPIPAPI.H(72,3):Constant member 'send_params::far' in class without constructors Error: TCPIPAPI.H(83,20):Declaration missing ; Error: TCPIPAPI.H(86,2):Constant member 'tag_setsockopt::far' in class without constructors Error: TCPIPAPI.H(92,16):Declaration missing ; Error: TCPIPAPI.H(93,16):Multiple declaration for 'tag_getsockopt::far' Error: TCPIPAPI.H(92,16):Earlier declaration of 'tag_getsockopt::far' Error: TCPIPAPI.H(93,16):Declaration missing ; Error: TCPIPAPI.H(174,14):Declaration missing ; Error: TCPIPAPI.H(175,14):Multiple declaration for 'tag_pppdial::far' Error: TCPIPAPI.H(174,14):Earlier declaration of 'tag_pppdial::far' Error: TCPIPAPI.H(175,14):Declaration missing ; Error: TCPIPAPI.H(175,14):Too many error or warning messages Die Zeilen 56 bis 60 sind der von mir bereits gepostete Code: struct recv_params { char far * bufferPtr; int bufferLength; int flags; /* Blocking or dontwait */ struct sockaddr far * fromPtr; /* only needed for UDP */ int far * fromlengthPtr; /* only needed for UDP */ unsigned long timeout; /* timeout milliseconds */ };
  8. Hier alle Warnungen, die er mir rauswirft. Wie gesagt es sieht alles nach falscher Syntax bzw. falschen deklarationen aus, bei der Original Projektdatei zuckt er nicht im geringsten, und erzeugt eine lauffähige Anwendung. Info :Building... Info :Compiling C:\Auswertung\C++\CodeRupp\Datsrv\datsrv.cpp Error: TCPIPAPI.H(56,28):Declaration missing ; Error: TCPIPAPI.H(59,28):Multiple declaration for 'recv_params::far' Error: TCPIPAPI.H(56,28):Earlier declaration of 'recv_params::far' Error: TCPIPAPI.H(59,28):Declaration missing ; Error: TCPIPAPI.H(60,28):Multiple declaration for 'recv_params::far' Error: TCPIPAPI.H(59,28):Earlier declaration of 'recv_params::far' Error: TCPIPAPI.H(60,28):Declaration missing ; Error: TCPIPAPI.H(66,28):Declaration missing ; Error: TCPIPAPI.H(69,28):Multiple declaration for 'send_params::far' Error: TCPIPAPI.H(66,28):Earlier declaration of 'send_params::far' Error: TCPIPAPI.H(69,28):Declaration missing ; Error: TCPIPAPI.H(70,28):Multiple declaration for 'send_params::far' Error: TCPIPAPI.H(69,28):Earlier declaration of 'send_params::far' Error: TCPIPAPI.H(70,28):Declaration missing ; Error: TCPIPAPI.H(72,3):Constant member 'send_params::far' in class without constructors Error: TCPIPAPI.H(83,20):Declaration missing ; Error: TCPIPAPI.H(86,2):Constant member 'tag_setsockopt::far' in class without constructors Error: TCPIPAPI.H(92,16):Declaration missing ; Error: TCPIPAPI.H(93,16):Multiple declaration for 'tag_getsockopt::far' Error: TCPIPAPI.H(92,16):Earlier declaration of 'tag_getsockopt::far' Error: TCPIPAPI.H(175,14):Too many error or warning messages Die Zeilen 56 bis 60 sind der von mir bereits gepostete Code: struct recv_params { char far * bufferPtr; int bufferLength; int flags; /* Blocking or dontwait */ struct sockaddr far * fromPtr; /* only needed for UDP */ int far * fromlengthPtr; /* only needed for UDP */ unsigned long timeout; /* timeout milliseconds */ };
  9. Hallo, Ich habe einen nicht von mir geschriebenen Code, und möchte weiter daran arbeiten. Das Problem ist, wenn ich ein neues Projekt erstelle und den Code einfüge erhalte ich unzählige Fehler beim kompilieren, obwohl ich den selben Kompiler (Borland C++ 5.02) nutze, wie der Autor des Codes. Wenn ich die Originalprojektdatei öffne, geschieht die nicht. Woran kann das liegen? Aufgefallen ist mir schon, daß teilweise Zeilen vorkommen, die sich nicht an den C/C++ Standart halten, wie zum Beispiel: struct recv_params { char far * bufferPtr; int bufferLength; int flags; /* Blocking or dontwait */ struct sockaddr far * fromPtr; /* only needed for UDP */ int far * fromlengthPtr; /* only needed for UDP */ unsigned long timeout; /* timeout milliseconds */ }; Auch werden Funktionen eingebettet, die nirgendwo initiert wurden, trotzdem meldet der Kompiler keinen Fehler.
  10. Ich habe in einem nicht von mir stammenden Code eine nach C/C++ Richtlinien falsch deklarierte Funktion gefunden, und würde nun gerne wissen, ob es sich eventuell um eine andere Sprache handelt, oder ob es generell Nonsense ist. void huge _pascal cgi_readvar(rpCgiPtr request) Mein Borland 5.5 Compiler streikt hier völlig. Ist so etwas generell möglich (andere Compiler)? Oder handelt es sich schlicht um einen Syntaxfehler? Passe ich die Sache an, void huge_pascal_cgi_readvar (struct rpCgiPtr *request) lässt sich der Code compilieren, jedoch mit einer Fehlermeldung bezüglich eines undefinierten Types innerhalb der Funktion, an der Stelle: if (request -> fArgumentBufferLength == 0L) ('fArgumentBufferLength' is not a member of 'rpCgiPtr', because the type is not yet defined in function huge_pascal_cgi_readvar(rpCgiPtr *))
  11. OK, vielen Dank. Wird dabei das ursprüngliche File verändert? Oder ein neues ausgegeben? Nur zur Info, weil ich erst morgen wieder am Code arbeiten kann.
  12. Unten drunter sitzt meines wissens ein Borland Compiler. Ist jedoch nicht so genau aus der Dokumentation zu erfahren. Die Konfigurationsdatei ist so eingestellt, daß die bcc32.exe zum Compilieren und als Linker eine ilink32.exe Mehr kann ich leider nicht dazu sagen. Als Debugger steht der Turbo Debugger 32bit von Inprise Corporation zur Verfügung..... Ich habe mal alles zum "Spielen" auf meinen Server hochgeladen. Wichtig ist, daß alles nach C:\Borland\ entpackt wird und sich dort auch der Ordner "Include" befindet. Andernfalls müssen die bcc32.cfg und die ilink32.cfg sowie die SciTEGlobal.properties und die SciTE.properties entsprechend angepasst werden. Ich hoffe das hilft ein wenig weiter.
  13. Ich arbeite gerade an einem sehr umfangreichen und nicht von mir geschriebenen Code. Leider hat der Verfasser auch seine Kommentare nur sehr spärlich gesäht. Gibt es ein Tool, das nur den Präprozessor laufen lässt und den so veränderten Quellcode ausgibt? Oder muss ich mit Find & Rplace arbeiten? Ich arbeite mit dem freien Edito/Compiler Scintilla.
  14. Hallo, ich bin auf der Suche nach einer Art Lexikon/Nachschlagewerk, in welchem die C/C++ Bibliotheken und Funktionen aufgeführt und eventuell etwas erläutert sind. Schließlich kann man ohne Kenntnis dieser nur sehr umständlich oder gar nicht Programmieren. Auch würde es helfen Tips a'la:"Probier es doch mit std::..." zu verstehen und nachzuvollziehen. Leider hat mich die Suchfunktion hierzu bis jetzt im unklaren gelassen, weshalb ich hier jetzt den direkten Weg wähle. Eventuell hat ja jemand Erfahrung mit folgenden Werken, die mir die Suche bei Amazon geliefert hat, und kann eine Aussage über deren Qualität machen. 1.:C++-Standardbibliothek Einführung und Nachschlagewerk 2.:C/C++ Kompendium . Arbeitsbuch und Nachschlagewerk
  15. Hab jetzt die Suche erfolglos strapaziert. Jedoch keinen Weg gefunden, mein Array bzw. den String zu Terminieren.
  16. Das mit den veralteten Schreibweisen liegt sicherlich an der Lieteratur, die ich verwende, und auch daran, daß ich immer nur so weit an dem Programm arbeite, bis es das macht, was ich will. Sicherlich keine sehr gute Einstellung, ich kann mir aber leider nicht viel mehr Zeit nehmen. Die Sache mit den Arrays ist für mich sehr einfach zu verstehen, bsonders, da es hierzu auch sehr viel Dokumentation gibt. Während ich mit Funktionen wie std::string noch gar nicht gearbeitet habe. Was mir nicht ganz einleuchtet ist: Ich deklariere char endung [3] es dürften doch also gar nicht mehr als drei Zeichen dort stehen. Außerdem sage ich: strncpy(endung,find+1, 3); es sollen nur 3 Zeichen kopiert werden. Mit strlen kann ich die Länge meines Strins auslesen. Gibt es auch einen Befehl, um sie festzulegen?
  17. Hallo, Ich habe mehrere kleine Programme geschrieben, die Messdaten auslesen und auswerten. Die Messdaten liegen als Dateien mit unterschiedlichen Dateiendungen vor (*.dat und *.msg). Ich möchte nun meine Vielen einzelnen Programme als Unterfunktionen eines einzigen Programmes zusammenfassen, um den Anwendern das Arbeiten zu erleichtern. Hierzu muss ich die per Drag & Drop übergebenen Dateien nach Ihren Endungen sortieren, wofür ich folgenden Code geschrieben habe: #include <iostream.h> // cin, cout #include <fstream.h> // ifstream, ofstream #include <stdlib.h> // exit, rand #include <iomanip.h> // setw #include <conio.h> // getch #include <sys/types.h> // off_t #include <sys/stat.h> // stat #include <time.h> // ctime, time #include <stdio.h> #include <string.h> //strcmp //void meldungen (); //void daten (); int main(int argc, const char* argv[]) { if (argc < 2) { printf("Starten Sie das Programm indem Sie die umzuwandelnden Daten"); printf("\nper Darg & Drop auf das Programmicon ziehen."); printf("\nBeenden mit Tastendruck."); getch(); exit(0); } int f; int nendung; for (f = 1; f < argc; f++) { cout << "\nFolgende Datei wird verarbeitet : " << argv[f]; char endung [3]; const char* find = strrchr(argv[f], '.'); //letztes "." finden strncpy(endung,find+1, 3); //3 Zeichen ab "." kopieren und "filewrite zuweisen cout << "\nEndung : " << endung; if ( strcmp ( endung , "dat" ) == 0 ) nendung = 0; else if ( strcmp ( endung , "msg" ) ==0 ) nendung = 1; else nendung = 2; switch (nendung) { case 0 : cout << "\nDatendatei"; break; case 1 : cout << "\nMeldungsdatei"; break; case 2 : cout << "\nEs handelt sich nicht um ein Messfile!"; break; } } getch(); } [/PHP] Mein Problem ist, daß nach der Dateiendung noch Leer bzw. Sonderzeichen an [b]char[/b] endung übergeben werden, obwohl hier nur 3 Zeichen stehen sollten.
  18. Ja, vielen Dank, hatte es jetzt auch schon bemerkt und umgestellt. Manchmal reicht es eben schon, wenn man einfach jemanden fragt.
  19. Es ist mal wieder aussenstehender Rat gefragt, der mich auf den richtigen Weg weißt. Ich lese verschiedene Werte aus einer Datei ein, führe eine Berechnung durch, und speicher die Werte ab. Jetzt soll eine Kontrollfunktion hinzukommen, da ein Wert auf monotonen Anstieg überprüft werden soll. Ich weiß, an welcher Stelle dieser Wert steht. Ich lese nun den ersten Wert ein, führe die Berechnung durch, lese den zweiten Wert ein, führe die selbe Berechnung durch, und Vergleiche. Im nächsten Schritt, wird Wert 2 mit dem nächsten verglichen. Das ganze läuft über eine Schleife: int u = 74; int z = 0; for (i = 0; i < Max; i++) { int t = z+2; ifl.seekg(t*sizeof(short), ios::beg); ifl.read((char*)&timechecka, sizeof(int)); ifl.seekg(u*sizeof(short), ios::beg); ifl.read((char*)&timecheckb, sizeof(int)); timechecka = (timechecka + 3600)/86400 + 25569; timecheckb = (timecheckb + 3600)/86400 + 25569; timecheckc = (zeit + 3600)/86400 + 25569; bool timecheck = (timechecka <= timecheckb && timecheckb <= timecheckc); switch (timecheck) { case true: /*Verarbeitung*/ z = z + 72; u = u+72; break; case false: u = u + 72; break } } [/PHP] Beim ersten Durchlauf der Schleife passiert folgendes: t = 2 => [b]timechecka[/b] zuweisen u = 74 => [b]timecheckb[/b] zuweisen double Berechnung, [color=Red]hier tritt jetzt der Fehler auf[/color] [b]timecheckb[/b] wird falsch berechnet: timechecka = 25569 timecheckb = 8.57189 e+ 262 timecheckc = 38621 Zweiter Durchlauf: t = 74=> [b]timechecka[/b] zuweisen u = 146 => [b]timecheckb[/b] zuweisen double Berechnung: timechecka = 2.56 e+04 timecheckb = 9.92 e+257 hier wird der selbe Wert richtig bestimmt (auf die Zähler (u & t) achten) denn [b]timechecka[/b] ist hier der selbe Wert, wie [b]timecheckb[/b] im ersten Schleifendurchlauf. Habe ich jetzt alle verwirrt? Wer sieht meinen Schreib/Denkfehler?
  20. Hab es zum Glück selbst gemerkt. Naja und auch hier im Forum den Einstieg zur Lösung gefunden. char* find = strrchr(argv[f], '\\'); //letztes "\" finden strncpy(fwrite,find+1, 12); //alles ab "\" kopieren und fwrite zuweisen [/PHP] Vielen Dank an alle, die mich auf den rechten Weg gewiesen haben, und einen schönen Abend noch.
  21. Du meinst etwa mit folgendem Fragment: char *strrchr( const char *argv[1], '134'); // 134 = Dez für \ cout << strrchr; // sollte dann nur den Dateinamen 43542CF0.DAT ausgeben [/PHP] Habe ich noch zwei Fehlermeldungen drin: Expression syntax in function main(int,char * *) ) expected in function main(int,char * *) genau in dieser Zeile. Leider findet sich in der cpprefference auch nicht mehr als Hinweis.
  22. Du meinst mit strcopy?
  23. Da habe ich mich wohl etwas zu weit aus dem Fenster gelehnt. Ich übergebe den Dateinamen per Drag&Drop über die Variable argv[1]: int main(int argc, const char* argv[]) erhalte den kompletten Pfad : C:\Pfad\4320C271.DAT zeit = strtol(argv[1],0, 16); liefert jetzt ein falsches Ergebnis. Ich benötige also noch eine Funktion, die mir nur den Namen der Datei aus argv[1] ausgibt.
  24. Genau genommen muss es sogar for (f=1; f < argc; f++) heißen, da bei <= einmal zuviel in die Schleife gesprungen wird, was zu einem Fehler führt.
  25. Folgendes Problem: Bei einer zu bearbeitenden Datei ist ein Datum als Hexwert im Dateinamen angegeben, z.B.: 43542CF0.DAT dieses möchte ich gerne in ein lesbares Format umwandeln und als Namen übergeben, zum Beispiel 18 11 2005.txt Derzeit entnehme ich diesen Zeitstempel immer direkt aus der Datei, mit: struct stat buf; stat(argv[f], &buf); groesse = buf.st_size; ifl.seekg(2*sizeof(short), ios::beg); // an dieser Stelle im File sind Datum & Uhrzeit hinterlegt ifl.read((char*)&zeit, sizeof(int)); time_t timer; struct tm *tblock; tblock = localtime(&zeit); sprintf(filewrite,"C:\\Messdaten\\Auswertung\\CUT\\%02d %02d% 04d.txt ",tblock->tm_mday,tblock->tm_mon+1,tblock->tm_year+1900); Das Problem ist, dass bei einigen Dateien das im File hinterlegte Datum nicht stimmt, was teilweise sogar zum Programmabsturz führt, was ich gerne vermeiden möchte. Meine Überlegung: Da der Dateiname immer die selbe Länge hat, und die Dateien immer im selben Verzeichnis liegen, sollte der Zeitstempel, also für unser Beispiel: 43542CF0 mit Hilfe eines Array recht einfach zu separieren sein, wie kann ich diesen wert jedoch meiner Variable zeit zuweisen?

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...