WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

C++ function aufrufen (keine ausgabe auf matlab)

 

sami127
Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 17.10.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.10.2008, 11:04     Titel: C++ function aufrufen (keine ausgabe auf matlab)
  Antworten mit Zitat      
Hallo zusammen,

ich wollte ein C++ Projekt aufrufen auf eine Matlab GUI fläche. das Projekt oder das main.cpp führt ein Maprenderer aus, d.h. ich brauche keine ausgabe auf matlab. Ich will nur auf meine GUI (Matlab) einn Knopf integrerien, der durch bestätigung mein C++ Renderer ausführt.

Ich habe über MEX files gelesen aber mit dieser Methode muss die MEX datei eine matlab function enthalten, die meine C++ ähnlich aussieht (outputs and inputs), und das macht die sache bei Mir kompliziert. ich wollte, zusammengefasst, eine C++ function die mit MSVS kompiliert und ausgeführt wird.

ich bin für jeden hinweis dankbar.
tschö
Private Nachricht senden Benutzer-Profile anzeigen


sami127
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 17.10.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.11.2008, 12:28     Titel:
  Antworten mit Zitat      
hallo alle,
anscheinend habe ich zu viel details geschrieben dass keiner was ich eingentlich programmieren will verstanden hab.

Ich formuliere dann um.

Wie kann man eine C++ Win32 Window über Matlab aufrufen ?

danke im voraus.
Private Nachricht senden Benutzer-Profile anzeigen
 
dib0r
Forum-Guru

Forum-Guru


Beiträge: 413
Anmeldedatum: 09.05.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.11.2008, 15:25     Titel:
  Antworten mit Zitat      
Hallo,

am besten benutzt du dafür die MEX-Syntax. Anhand dieser kannst du Code - in C, C++ oder Fortran programmiert - auch mit MATLAB ansprechen. Vieler der "Built-in" Funktionen von MATLAB sind auch in C geschrieben.

Ist dein Code MEX-kompatibel, kannst du ihn ganz einfach mit
Code:
kompilieren und wie eine normale MATLAB-Funktion ansprechen, z.B. y = foo(x,[1 2 3]);

MfG
Private Nachricht senden Benutzer-Profile anzeigen
 
sami127
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 17.10.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.11.2008, 16:13     Titel:
  Antworten mit Zitat      
danke Dibor für Die Antwort.

Aber in dem Fall, hab ich nur eine simple Funktion. Aber hier generiert mein Prog ein Win32 Window, d.h. es gibt kein Output oder Input in meiner Funktion.
Private Nachricht senden Benutzer-Profile anzeigen
 
dib0r
Forum-Guru

Forum-Guru


Beiträge: 413
Anmeldedatum: 09.05.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.11.2008, 16:17     Titel:
  Antworten mit Zitat      
Hallo,

das ist egal. Dann lautet dein Funktionsaufruf halt "foo;".

MfG
Private Nachricht senden Benutzer-Profile anzeigen
 
sami127
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 17.10.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.11.2008, 16:24     Titel:
  Antworten mit Zitat      
wenn ich meinn main.cpp mit mex befehl aufrufe dann werden fehler aukommen aufgrund der head dateien.
auf visual stuido sind die Umgebungsvariablen und die linking vars schon gut bestimmt aber wie kann man Matlab dazu drängen die zu betrachten ?

danke.
Private Nachricht senden Benutzer-Profile anzeigen
 
dib0r
Forum-Guru

Forum-Guru


Beiträge: 413
Anmeldedatum: 09.05.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.11.2008, 17:30     Titel:
  Antworten mit Zitat      
Hallo,

schau mal die Hilfe zu mex an. Da gibt es einige optionale Parameter die dir da helfen sollten. Ansonsten kann man ja auch an der Matlab-Umgebungsvariablen rumspielen.

MfG
Private Nachricht senden Benutzer-Profile anzeigen
 
Peter S.

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.11.2008, 18:27     Titel:
  Antworten mit Zitat      
also entweder das fertige Programm mit dos('meine.exe') aufrufen, oder anstelle der exe eine dll erzeugen die dann mit der Mex-Funktinoo aufgerufen werden kann.
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.