Nach neu Installieren funktioniert nicht
-
Hi Leute,
Ich bin gerade dabei ein einigermaßen komplexes Programm zu schreiben aber leider musste ich mein Windows neu aufsetzen und damit auch c++ builder 6.
Nun starte ich mein Programm und es scheint als ob alles gut funktionieren würde nur kann ich mein Form nicht sehen. Es taucht im taskbar/startmenü auf aber egal was ich tue oder lasse es will nicht auf meinem Bildschirm sichtbar werden.
Jetzt habe ich den gesamten Inhalt des Forms kopiert und in eine neue form eingesetzt. Es funktioniert. sobald ich aber eine .h Datei zu meiner Main hinzufüge passiert genau das selbe wie vorher?
Was kann ich machen damit all die Arbeit nicht um sonst war? Warum erscheint das Programm im taskbar aber nicht auf meinem Bildschirm?
Hilfe hilfe hilfe
Vielen Dank!
Bitte helft mir!
Jetzt habe ich festgestellt, dass ich .h Dateien includen kann aber sobald ich eine Funktion aufrufe, die in solch einer Datei ist... erscheint das Form nicht auf dem desktop!Ich brauche dringend Hilfe!
Merci
-
Kann mir keiner helfen?
-
Es wäre vielleicht sinnvoll gewesen, deine Frage passend im VCL-Board zu posten. Hier geht's eigentlich nur um Standard-C++. Schau mal hier:
http://www.c-plusplus.net/forum/f2
Es wird dich sicher jemand verschieben.
Wie genau meinst du das denn? Tritt der Fehler auf, sobald du eine beliebige oder eine bestimmte Header-Datei inkludierst? Im letzteren Fall läge der Fehler wahrscheinlich bei dir und wäre in deinem Header zu suchen.
-
der Fehler bzw. das auftauchen des Forms in der Taskbar aber nicht auf dem Monitor entsteht nicht, wenn ich eine Header include sonder erst, wenn ich eine Funktion aufrufe, die in dieser includeten Datei liegt. Es hat vorher funktioniert und nu weiß ich nicht warum es nicht mehr geht. Ich dachte es liegt vielleicht daran, dass die Verknüpfungen(links) zwischen den Dateien aktualisiert werden müssen.
PS. das mit dem verschieben stimme ich dir vollkommen zu.
Vielen dank für deine Antwort
-
Hm, und das kann eine beliebige Funktion sein? Oder ist es nur eine ganz bestimmte? Bei letzterem kannst du die Funktion ja mal posten.
-
Ich habs... so simple aber doch etwa 7 stunden um das Problem zu finden.
Es liegt an eine Funktion die zum Hochladen gewisser Textdateien in eine globalen Array dient.
ifstream datei("E:\\FROM WINDOWS\\ADMINS STUFF\\PROG\\PROG_NR_152\\Textfiles\\products.txt");
nun liegt aber dieses Verzeichnis nicht mehr vor.
hihihaaa. Unglaublich!
Wie kann ich solch ein Problem umgehen? Das die Datei unabhängig von dem Absoluten Pfad angesprochen wird?
Danke dir für deine Zeit und deine Mühe!
-
Dieser Thread wurde von Moderator/in pumuckl aus dem Forum C++ (auch C++0x und C++11) in das Forum VCL (C++ Builder) verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Die Datei in ein Verzeichnis legen und (folgen mehrere Möglichkeiten)
- dieses in den globalen Suchpfad mit aufnehmen.
- Pfad zu diesen Verzeichnis in eine Ini- Datei ablegen, die vom Programm beim Start eingelesen wird.
- Pfad in der Registry ablegen, die dann vom Programm eingelesen wird.
- Pfad wird beim Programmstart übegeben.Oder diese Datei ins Programmverzeichnis mit ablegen (sollte man nur machen, wenn in Datei nicht geschrieben wird wegen den Verzeichnisrechten).
Oder diese Datei im Userverzeichnis ablegen, lässt sich z.B. über die Systemvariable USERPROFILE abfragen und das Programm dann darauf zugreifen lassen.
Absolute Pfad fest zu codieren sollte man nicht machen, vor allen noch, wenn diese auf ein anderes Laufwerk als C: verweisen. Dein Beispiel zeigt ja, was das für Auswirkungen haben kann.