
Cos
Mitglieder-
Gesamte Inhalte
119 -
Benutzer seit
-
Letzter Besuch
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Alle Inhalte von Cos
-
also du meinst ich sollte die Auslesung mit 3 Schleifen realisieren. Also ich lese das erste byte ein prüfe ob 3d (1.schleife) if ja...2.schleife: nächstes Byte einlesen und prüfen ob 03. Falls ja 3. schleife 4 bytes auslesen und weiter verarbeiten...richtig? ok ich probiers mal. danke.
-
Hi, vielen Dank für deine Antwort, aber leider funktioniert es nicht. Jetzt ist die Frage woran das liegt. Erstens bekomm ich gar kein Ergebnis in den Pointer pdest. Wenn ich den Debugger starte kommt die Meldung beim Öffen der Variable : CXX0030: Fehler: Ausdruck kann nicht ausgewertet werden und ich erhalte keine Veränderung der variable wenn der Ausdruck pdest = strstr( Head, strSample); durchlaufen wird. Also um noch einmal das Problem zu beschreiben weil ich es anscheinend nicht genau erklärt habe. Also ich möchte die Datei scannen. Es ist eine Video-Datei und in der Datei soll nach der Hexzahl 3d03 gesucht werden. Also nicht nach dem Ascii-Wert. Der Sinn davon ist das ich die Stelle finde in der Datei wo diese Zahl vorkommt und danach dann 4 Bytes auslesen möchte.
-
Genau. Aber ich hab nun mal einen anderen Lösungsansatz versucht. Eigentlich wollte ich ja direkt aus der Datei lesen. Da gabs aber andere Probleme. Nun lese ich 10 000 Byte in ein Array ein, ist zwar groß aber hoffe das es geht. Nun nehme ich aber wieder deinen Lösungsansatz auf (strstr) und versuche in der Datei nach dem Code 3d03 zu suchen. Gestaltet sich aber bissl schwer. Vielleicht könnt ihr mir nochmal aushelfen. Also die Datei ist eingelesen und ich hab das char-array strSample angelegt. In dem steht der Code 3d03. Nun will ich mit strstr nach dem Code suchen. Leider nimmt strstr (ist ja auch klar wegen string) nur strings an, aber ich möchte nach dem Hex-wert 3d03 suchen und nicht nach dem zugehörigen Ascii. Hat jemand eine Idee wie man das lösen kann. Hier der code: FILE* Headfile; char strSample[] = "3D03" //Ist nur in Hochkomma wegen Test soll natürlich // als Hex-Wert eingesetzt werden char *pdest; int resultSample=0, resultChannel=0, resultBits=0, resultBps=0, resultBlock=0; Headfile = fopen((m_sInputTest1), "rb"); fread( Head, sizeof( char ), 10000, Headfile ); pdest = strstr( Head, strSample ); resultSample = pdest - Head + 1;
-
mit strstr finde ich ja die Position wo der String beginnt. Meinst du dann das ich dann ab dort auslesen soll. Wie kann ich das realisieren ohne das ganze in ein array zu legen? PS: ich seh gerade das in meine quellcode noch das fread drin ist.das soll natürlich weg sein
-
Hallo zusammen, ich bin auf der Suche einer Lösung für folgendes problem. ich hab eine große Datei (soll heißen Array einlesen fällt weg, da das Array min 10 000 sein muss) die ich auslesen will bis zu bestimmten Punkten. Also in der Datei steht das Wort AudioSamplingRate = 22050/1 was ich suche. hab das ganze mit strtok versucht und das sieht folgendermaßen aus. Headfile = fopen((m_sTestFileName), "rb"); fread( Head, sizeof( char ), 100000, Headfile ); token = strtok( Head, stops ); while( token != NULL ) { tester.Format( " %s\n", token ); token = strtok( NULL, stops2 ); } Die Deklaration der stops und des token folgen: FILE* Headfile; char stops[] = "AudioSamplingRate = "; char stops2[] ="/"; char *token; CString tester; Doch leider bekomme ich die zahlen nicht in meinen CString tester geladen...was mache ich falsch? Als Ergebnis steht {"øj/"} in tester... danke für eure Hilfe.
-
oh erstmal entschuldigung das ich den alten Thread nicht gefunden habe... also diese Datei soll schon öfters angeschaut werden da sie als Zusatzinfo dient. aber wenn es nicht ohne weiteres möglich ist, dann soll der User halt bissl suchen in dem File bis er das gefunden hat was er will... war ja nur eine idee...aber vielen dank für deine mühen.
-
es geht darum, dass diese Datei eine Zusatzinfo für ein Programm ist und ich kann ja nicht davon ausgehen das jeder User den Altova oder einen anderen Editor hat. und wenn keine anderen Programm installiert sind öffnet (jedenfalls mein rechner) der rechner die XML datei mit dem Internet Explorer.
-
na zum beispiel im IE oder im altova...macht das was aus?
-
Hallo, weiß einer von euch ob man ein Stylesheet oder irgendwas einsetzen kann das nach dem öffnen einer XML-Datei nicht der komplette Baum angezeigt wird sondern nur die oberpunkte? So das bei Interesse auf das "+" geklickt werden kann und erst dann öffnet sich der Unterpunkt? Danke Grüße Cos
-
das war ja auch nicht ernst gemeint...Der Klotzkopp hat das hoffentlich verstanden... Is schon klar dass das was anderes ist.
-
das ist doch das selbe...win32 und dos programm, sei nicht immer so kleinkariert wenn man es startet dann muss man die eingabeauffoderung starten... aber vielen dank für die hilfe, habs gefunden und nu gehts. grüße cos
-
Hallo zusammen, ich hab unter vc++6 ein Programm geschrieben das unter Dos läuft. Nun möchte ich das Programm debuggen. als ich f5 drückte fragte mich vc welches programm ich debuggen möchte und ich wählte die datei abc.exe aus. jetzt habe ich aber das problem dass das programm abc.exe wenn es under dos aufgerufen wird nur ein simple ausgabe liefert und erst richtig arbeitet wenn man es in verbindung mit einer andere datei bringt, sprich : C:\abc.exe input.mpg output.abc der sinn von input.mpg und output.abc erklärt sich ja von selbst. mein problem ist nun wie komme ich wieder in diese konsole in der ich beim drücke von f5 das zu debuggende programm eingeben kann, damit ich diesemal die 2 dateien miteingeben kann und dann der richtige arbeitsablauf gedebuggt wird...denn wenn ich jetzt f5 drücke hat vc sich die datei gemerkt und will immer die ausgabe debuggen was mir aber nichts bringt... hat jemand eine idee danke cos
-
probiers mit SHFileOperation, bei mir ging das.
-
Sorry hat sich erledigt. man sollte ab und an mal den Debug Ordner löschen... nu gehts. also Thread bitte wieder löschen.
-
Hi, wieso bekomm ich hier einen fehler: Unbehandelte Ausnahme in ABCBox.exe : 0xC00000005. Access Violation der Code der diesen Fehler hervorruft ist // Dialogfelddaten //{{AFX_DATA(CAbcboxDlg) enum { IDD = IDD_ABCBOX_DIALOG }; CButton m_cAbcSplitButton; CButton m_cAbcDumpButton; CButton m_cAbcWrapButton; CButton m_cAbcTestButton; (Sobald diese Varaible dabei ist bekomme ich den Fehler....WIESO??) danke grüße cos
-
falls du nichts finden solltest dann schau hier mal rein http://www.pro-mpeg.org/ und wenn du magst guck dir wie oben erwähnt die Standards an. interessant für dich ist die 300er Reihe SMPTE viel erfolg
-
Hallo, ich habe mal eine Frage bzgl. eines Pfades. ich habe folgenden Code if (DebugFileCounter >= 1) { SHFILEOPSTRUCT Op_mpg; Op_mpg.hwnd=m_hWnd; Op_mpg.wFunc=FO_MOVE; Op_mpg.pFrom=DebugPathFile1_vid; Op_mpg.pTo=Filepath; Op_mpg.fFlags=FOF_MULTIDESTFILES | FOF_NOCONFIRMATION | FOF_NOCONFIRMMKDIR; Op_mpg.lpszProgressTitle="Kopiere MPG-Dateien....!"; SHFileOperation(&Op_mpg); VideoFileCounter++; Nothing++; In diesem Code wird eine Datei von einem Pfad (DebugPathFile1_vid) in einen anderen (FilePath) kopiert. Das funktioniert auch ganz gut, aber wenn ich eine Release Version erzeuge dann geht es nicht. Dann bekomme ich eine MessageBox das die Datei bereits vorhanden sei. Das seltsame daran ist, das es bei einer anderen Prozedur ein paar Zeilen vorher funktioniert. SHFILEOPSTRUCT Op_wav; Op_wav.hwnd=m_hWnd; Op_wav.wFunc=FO_MOVE; Op_wav.pFrom=DebugPathFile1; Op_wav.pTo=Filepath; Op_wav.fFlags=FOF_NOCONFIRMATION | FOF_NOCONFIRMMKDIR | FOF_RENAMEONCOLLISION ; Op_wav.lpszProgressTitle="Kopiere Wave-Dateien....!"; SHFileOperation(&Op_wav); AudioFileCounter++; Nothing++; Dort bekomme ich keine Probleme obwohl auch dort nur eine Datei verschoben wird. Aber nun zum Schluss noch das kurioseste überhaupt...und zwar ist der Pfad wohin kopitert werden soll folgender: C:\Dokumente und Einstellungen\ABC\Desktop\Dortmund\ABC-groupfiles ist nun der Pfad aber folgender gehts...: C:\Dokumente und Einstellungen\ABC\Desktop\Dortmund\ABCgroupfiles, also liegt es meines Wissens nach an dem - in den letzten Namen, was kann ich dagegen tun? Ich habe die Pfade nullterminiert : DebugFile1_vid = (LPCTSTR) finder.GetFileName(); DebugPathFile1_vid.Format("%s%c", finder.GetFilePath(), 0); und char Filepath [_MAX_PATH]; _getcwd(Filepath, 200); eine idee? danke
-
habs schon....sind nur rückgabewerte.gell
-
ist die meldung Thread 0x534 wurde mit Code 1 (0x1) beendet. beim debuggen was schlimmes? Das bekomme ich wenn ich shfileoperation arbeite wenn diese was kopieren.... nur mal so kurz gefragt.
-
AHAAAAAA Na das erklärt dann das Problem. also ist wohl die beste Lösung eine Kopie der Klasse anzulegen, mit anderem namen, und mit ihr dann zu arbeiten um unabhängig vom Button zu sein. Jetzt sag mir mal ob es eine gute Entscheidung war diese Lösung zu wählen :beagolisc
-
Antwort zum Nachtrag.... ja diese Funktionen werden von einem Button gestartet und ich habe das nachträglich hinzugefügt. Aber nun ja nicht mehr. nun gibt es die OnRun...warp & split die für den Button sind und die OnRun...wrapConvert & splitConvert die Klassen sind die nicht vom Button abhängig sind.
-
ich habe nur abc geschrieben um mir es zu ersparen das von gestern nochmal alles zu schreiben...abc() steht für die Funktion OnRunabcwrap() von der ich mittlerweile eine Funktion mit fast dem identischen Code habe die jetzt OnRunabcwrapConvert(Cstring,bool) heißt. Nun spreche ich diese (OnRunabcwrapConvert(Cstring,bool)) an wenn ich die Strings übergeben muss (das ist der Pfad den ich brauche um den Konvertierungsprozess zu starten und die bool Variable) und wenn ich den Konvertierungsprozess nicht ausführe nehme ich die Funktion OnRunabcwrap().
-
aber meinst du nicht das der fehler daher rühren kann das ich die funktion mit den zwei variablen angesprochen habe ohne dieses zwei variablen zu übergeben? Also es gab ja die funktion abc(cstring,bool) und die wurde angesprochen mit abc() und mit abc(cstring i, bool k) und wenn ich die variablen angeben habe gings wenn ich nur abc() aufgerufen habe kam der Fehler. Nun rufe ich die jeweilige funktion nur mit den variablen auf wenn ich sie brauche ansonsten nehme ich die abc(). ich hätte sowieso nicht gedacht das man eine Funktion die mit abc(Cstring, bool) definiert ist, mit abc() aufrufen kann. Ich dachte immer die funktion erwartet diese variablen...
-
Hi Guten Morgen, das wurde mir gestern zu bunt und ich habe das Problem anders gelöst. ist zwar nicht sonderlich schön aber es geht und das ist das was zählt Habe nun eine Funtkion geschrieben für den Fall das der CString und der bool-wert benötigt wird und eine Funktion die ohne die Übergabe läuft. Und nun tritt der Fehler nicht mehr auf...Ist zwar bissl mehr Code aber was solls... Aber wie immer vielen Dank für deine Hilfe Wenn du denkst das dieser Thread noch jemand anderem nutzen kann, kannst du ihn online lassen...wenn nicht, lösch ihn wieder Danke Cos
-
noch eine kleine Ergänzung. Habe versucht mal dem converterex einen anderenn Wert zuzuweisen und es passierte folgenedes: Als ersten Versuch. converterex = ""; // Programm läuft durch bis zum Heapfehler converterex ="test"; // Fehlermeldung beim Ausführen der Zeile : Debug Assertion Failed! Program :...\abcbox.exe File:strcore.cpp (die ich nicht mit eingebunden habe) Line:154 converterex.Format("%s%d", "",0); //gleiche Fehlerbeschreibung allerdings nun in Line 165 Also muss doch schon was bei der Deklaration der Variablen falsch sein wenn ich sie noch nichtmal ändern kann.