errox Geschrieben 8. August 2007 Geschrieben 8. August 2007 Hallöchen... Ich hätte da eine frage... Ich habe eine variable in einem programm ( bvar ) mit dem wert 70 und der speicheradresse 0012FF60 einen zeiger der auf bvar zeigt und pvar heisst mit der speicheradresse 0012FF54. So... Wie kann ich jetzt durch über ein anderes programm, diese werte ausgeben.. also "70" in einem "externen" programm. Also einen zeiger erstellen der auf 0012FF60 oder 0012FF54 zeigt, so dass ich einer der beiden werte ( haha ) ausgeben kann. Danke für antworten MfG errox Zitieren
carstenj Geschrieben 8. August 2007 Geschrieben 8. August 2007 Hi, Code! Ansonsten verstehe ich deine Frage nicht so ganz, aber wenn doch, wirst du den Speicher durchsuchen müssen, weil du ja nicht wissen kannst, wo dein Ursprungsprogramm die Variable ablegt. Zitieren
errox Geschrieben 8. August 2007 Autor Geschrieben 8. August 2007 Code vom programm der die variablen enthält.. #include "stdafx.h" #include "iostream" using namespace std; int main() { int bvar = 70; int* pvar; pvar = &bvar; cout << &bvar << endl; cout << &pvar << endl; system("PAUSE"); return 0; } So und ich möchte jetzt über ein anderes programm den inhalt von bvar oder pvar ausgeben.... ein zeiger der auf die speicheradressen von bvar oder pvar zeigt. Besser? :confused: bitte sag ja ich kann sonst nicht schlafen :schlaf: Zitieren
Bubble Geschrieben 8. August 2007 Geschrieben 8. August 2007 Mit heute im PC-Bereich gängigen Betriebsystemen geht das nicht, jeder Prozess wird hier isoliert und kann im Normalfall nicht auf Speicherbereiche anderer Prozesse zugreifen. Zur Realisierung einer Kommunikation zwischen zwei Prozessen können Techniken wie Shared Memory eingesetzt werden. Wie man damit umgeht, ist betriebssystemspezifisch. Wenn Du einen Computer mit einem Betriebssystem ohne Speicherisolierung hast (es muss aber trotzdem multitaskingfähig sein), kannst Du es tatsächlich so machen, wie Du es Dir gedacht hast. Zitieren
errox Geschrieben 9. August 2007 Autor Geschrieben 9. August 2007 uuund mit welchem bsystem geht das? Zitieren
Klotzkopp Geschrieben 9. August 2007 Geschrieben 9. August 2007 uuund mit welchem bsystem geht das?Zum Beispiel CP/M oder MS-DOS. Bei aktuellen Betriebssystemen wird genau das, was du da vorhast, verhindert, um die gegenseitige Beeinflussung von Prozessen durch Fehler oder Schadprogramme zu vermeiden. Ich empfehle, einen dafür vorgesehen Kanal zur Interprozesskommunikation zu benutzen. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.