Archiv verlassen und diese Seite im Standarddesign anzeigen : c++ dateien schließen bzw prozesse beenden
Mithrandir
27.03.2007, 14:39
hallo
wie kann ich in c++ datein(bilder etc.) wieder schließen?
Wie öffnest du sie überhaupt §ugly.
Das sind doch wieder diese Fragen bei denen irgendein Codebeispiel zusammengeklaut wurde und dann man nich weiß was das ganze überhaupt tut.
wurzel^2
27.03.2007, 18:51
meinst du sowas wie
close() ?
Mithrandir
28.03.2007, 14:29
also öffnen tu ich mit:
system("START [Name]");
wurzel^2
28.03.2007, 15:15
aso...des hat ja eig nciht viel mit c++ zu tun..du sendest einfahc den befehl an win das der ne bestimmte datei starten soll... wenn du des beenden willst, müsstest du den entsprechenden dos befehl wissen...
also öffnen tu ich mit:
system("START [Name]");
Dann hast du ja irgendwo die Dokumentation von system() herumliegen. Da müsste das eigenlich drinstehen. Falls du es nicht verstehst, dann schick mir den Link zu der Doku und ich versuche, was damit zu machen.
wurzel^2
29.03.2007, 13:56
hm..ich glaub des geht gar net ;)
Prozesse beenden - n.a. -
hier nachzulesen: http://www.axel-hahn.de/axel/page_compi/bat_unixvsdos.htm
Mithrandir
29.03.2007, 15:45
und wie kann ich close() anwenden?
wurzel^2
29.03.2007, 17:15
http://de.wikibooks.org/wiki/C++-Programmierung:_Dateizugriff
Ich nehme an, der system()-Aufruf kommt aus der C-Standardbibliothek, beschrieben in der libc-Dokumentation (http://www.gnu.org/software/libc/manual/html_node/Running-a-Command.html). Dann hast du keine Chance, das Programm wieder zu schließen.
Verwende stattdessen die Funktion CreateProcess() um das Programm zu starten, dann kannst du es mit TerminateProcess wieder schließen. Leider gibt's keinen Link auf die Doku, ich habe mich bei MSDN noch nie zurechtgefunden.
Mithrandir
30.03.2007, 12:45
danke
und wie kann ich text aus einer datei in eine Variable einfügen habs mal so probiert geht aber net:
char filename;
char inhalt;
filename == "Text.txt";
ifstream fin(filename);
cin.get(inhalt);
habs mal so probiert geht aber net Welche Fehlermeldung bekommst du denn?
char filename; Damit hast du auf dem Stapelspeicher Platz für ein Zeichen (üblicherweise 8 bti) geschaffen, und kannst auf diesen Platz mittels der Variable 'filename' zugreifen.
filename == "Text.txt"; Dadurch verlgeichst du das Zeichen, das in der Variable filename steht mit der Zeichenkette "Text.txt". Das funktioniert aus zwei Gründen nicht:
filename ist keine Zeichenkette, sondern ein numerischer Typ (char ist in C++ ein numerischer Typ).
Der Variablen filename hast du bis jetzt noch nichts zugewiesen.
cin.get(inhalt); cin ist der Standardeingabestream. Dein Dateieingabestream heißt fin.
und wie kann ich text aus einer datei in eine Variable einfügen
So wie auf http://www.cplusplus.com/istream::read beschrieben:
int length;
char * buffer;
ifstream is;
is.open ("test.txt", ios::binary );
// get length of file:
is.seekg (0, ios::end);
length = is.tellg();
is.seekg (0, ios::beg);
// allocate memory:
buffer = new char [length];
// read data as a block:
is.read (buffer,length);
is.close();
EDIT: Wegen buffer = new char [length]; musst du, wenn du buffer nicht mehr benötigtst, delete[] buffer; ausführen.
Mithrandir
21.04.2007, 21:18
gibt es eigentlich auch einen Befehl mit dem ich das cmd Fenster vergrößern kann?
also statt 8x12 10x18
void setWndSize (int x, int y);
in conio.h. Gut möglich das die bei Devcpp und anderen IDEs mitgelieferten das nicht mehr beinhalten, da hilft das (http://ic.sidewindershome.net/Download.php).
Mithrandir
12.05.2007, 13:51
Wie kann ich ein Multitaskingprogramm schreiben bei dem im hintergrung dinge ausgeführt werden und der benutzer weiterhin andere funktionen aufrufen kann ohne das die hintergrungfunktionen dabei stören ?
Victoria
12.05.2007, 14:15
Wie kann ich ein Multitaskingprogramm schreiben bei dem im hintergrung dinge ausgeführt werden und der benutzer weiterhin andere funktionen aufrufen kann ohne das die hintergrungfunktionen dabei stören ?
Was willst du denn damit? Oder anders rum: bleib erstmal bei einfacheren Konsolprogrammen. Die ImprovedConsole (IC) von Sidewinder ist exellent geeignet, um das staubige Design der handelsüblichen (sprich normalen) Konsole zu verbessern. Damit kannst du zB auch die Schrift- und Hintergrundfarbe verändern.
Wenn du bis zu deinem Multitasking Programm kommst, dann wirst du genug Erfahrung haben, um eigene Wege finden zu können :).
Gruß, Gothic_player
Mithrandir
12.05.2007, 14:21
also sprich wenn ich mal informatik studiere wird das was?
wollt halt ein noch recht langweiliges "strategiespiel" entwerfen bei dem man dann häuser bauen kann, dann läft im hintergrung ne zeit ab werend der benutzer sollange was anderes machen kann allso eigentlich noch nich so wierklich multitasking programm
wurzel^2
12.05.2007, 14:27
unter c++ eigentlich relativ einfach...
selber hab ich es von nem freund gelernt... aber ich ahb mal en tut gegoogelt:
http://www.codeworx.org/cpp_tuts_1_5.php
mfg wurzel^2
Mithrandir
12.05.2007, 14:29
danke für den link
Victoria
12.05.2007, 14:34
also sprich wenn ich mal informatik studiere wird das was?Natürlich kann das was werden, wenn es dir Spaß macht, und du dir ausreichend Mühe gibst :). Ich habe ebenfalls vor, später Informatik zu studieren.
wollt halt ein noch recht langweiliges "strategiespiel" entwerfen bei dem man dann häuser bauen kann, dann läft im hintergrung ne zeit ab werend der benutzer sollange was anderes machen kann allso eigentlich noch nich so wierklich multitasking programm
Ein grafisches Strategiespiel à la Age of Empires oder Anno 1503? Solange du nicht gut mit DirectX oder einer anderen grafischen Schnittstelle arbeiten kannst, ist solch ein Vorhaben in meinen Augen vollkommen sinnlos.
Mit kurzen Schritten kommt man auch ans Ziel.
Gruß, Gothic_player
Mithrandir
12.05.2007, 15:29
nein soll ein konsolen strategie spiel in einem kordinatennetz sein also so einfach wie möglich
thorbinger
14.05.2007, 14:49
TicTacToe (http://www.spieleprogrammierer.de/phpBB2/viewtopic.php?t=6357) in C++...
Mithrandir
26.05.2007, 20:22
gibt es eine möglichkeit auser mit PlaSound Lieder in Konsolen programmen laufen zu lassen ?
wurzel^2
26.05.2007, 20:48
ja... musst nur die entsperechenden libarys adden (winmm.lib war des glaub) und <windows.h> und dann kanst du mit PlaySound wave's abspielen...
playsound wird ja von win zur verfügung gestellt, und net zb von ogl doer dx
en tipp: benutze liberys wie zb audiere. sind einfahc einzubinden, aber du aknnst damit danna uch mp3's, ogg vorbis usw abspielen
Mithrandir
26.05.2007, 22:02
und wie genau funktioniert des mit Playsound? Versteh des net mit den ganzen parametern etc
hab des scho oft ausbrobiert hab aber immer linker error bekommen
ld returned 1 exit status
undefined reference to `PlaySoundA@12:
die Library winmm muss noch dazugelinkt werden.
Mithrandir
27.05.2007, 08:51
#pragma comment(lib, "winmm.lib")
hatte es so
Weiß ja nicht welchen Compiler du benutzt aber der mingw der ja auch bei devcpp benutzt wird ignoriert das pragma für Bibliotheken sowieso.
Ein -lwinmm unter zusätzlichen Linkerflags in den Compiler Optionen sollte es auch tun.
Oder halt ein Projekt anlegen da steht dann eh irgendwo welche Libraries man dazulinken will.
Mithrandir
27.05.2007, 11:55
danke jetzt funktionierts
Mithrandir
07.06.2007, 20:06
Wie kann ich jede Zeile einer Datei beim einlesen einer eigene variable zuweisen?
kann mir da jemand plz ein codefragment posten?
wurzel^2
09.06.2007, 10:02
http://www.google.de/search?q=datei+zeilenweise+auslesen+c%2B%2B&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:de:official&client=firefox-a
da findest du jede menge ;) und anstatt auszugeben musst dus halt in ne variabel schreiben.... des dürfte kein problem sein, nimm dazu zb ne matrix
Mithrandir
09.06.2007, 21:39
ok hab ma geschaut danke
neue frage:
wie kann ich mit meinem Programm einen registrierungseintrag machen das es immer zum systemstart ausgeführt wird?
(ich hab mich bis jetzt noch nicht mit registrierungseinträgen auseinandergesetzt würd nur gern wissen wie's aussieht)
wurzel^2
10.06.2007, 09:34
http://www.tutorials.de/forum/visualstudio-mfc/177219-c-registry-eintraege-schreiben-lesen.html €dit: <- das ist für die registry ;)
warum legst du nicht einfach en link zu deinem programm im autostart ordner an?
Mithrandir
10.06.2007, 13:34
http://www.tutorials.de/forum/visualstudio-mfc/177219-c-registry-eintraege-schreiben-lesen.html
warum legst du nicht einfach en link zu deinem programm im autostart ordner an?
weil's da einfache raus zu löschen ist
auserdem hab ich ja nich gesagt das ich des so machen will!
Noch ne Frage:
kann ich bei:
MessageBox( hwnd, (LPSTR) "bla",
(LPSTR) szClassName,
MB_ICONINFORMATION | MB_OK );
return 0;
auch nach bzw for dem "Bla" eine Variable Ausgeben?
Powered by vBulletin® Version 4.2.2 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.