HWND main_hwnd unter MFC problem
-
Hallo zusammen
Ich wollte mit einem code das mit winApi geschriben wurde mit Visual.net
unter MFC zum laufen bringen.//now that the performance object has been successfully created,
// we need to initialize it
hr = performance->Init (NULL, // address to a DirectMusic object, if
// it exists. If NULL, the object will
// be created internally
NULL, // address of a DirectSound object. If you use
// DirectSound in conjuction with DMusic, you
// should ALWAYS pass the DSound pointer. We
// aren't using DSound, so we can pass NULL
// and the object will be created internally.
main_hwnd); // application's window handle
// check the HRESULT returned by the function. Normally, I convert
// HRESULT value to a string and save it to a log file so that I
// know the exact error. For our purposes, I'll just pop-up a
// message box when a function fails
if (FAILED(hr))
{
MSGBOX("Failed to initialize performance object");
return false;
}beim kompilieren kommt das MSGBOX ("Failed to initialize performance object")
HWND main_hwnd;// handle to the applcation's window
kann es an main_hwnd liegen.
wie kann ich den handle von meinen dialogfenster übergeben.
muss ich dafür neue handle definiren oder hat das MFC schongemacht?Grüße Can
-
Probier mal statt main_hwnd die CWnd Funktion GetSafeHwnd()
Gruss
EB
-
Danke EarlyBird
Ich habe es so gemacht und es Funktioniert. CDialog main_hwnd;jetz habe ich leider ein anderes problem
Wir kann ich von der GetRepeats() ein wert erhalten und in editbox anzeigen.
ich habe es so gemacht aber klappt nicht.void CDMusicTest2Dlg::OnBnClickedZeigebutt()
{
double dRepeatData;m_Anzeige.Format("%lf",segment->GetRepeats(dRepeatData));
UpdateData(false);}
was mache ich falsch?
hier die erklärung ich kann leider kein englisch..IDirectMusicSegment8::GetRepeats()
The GetRepeats method retrieves the number of times the looping portion of the segment is set to repeat.Syntax
HRESULT GetRepeats( DWORD* pdwRepeats);
Parameters
pdwRepeats
Address of a variable that receives the number of times that the looping portion of the segment is set to repeat.
Return Values
If the method succeeds, the return value is S_OK.
If it fails, the method can return E_POINTER
-
Kann mir bei meinem problem keine helfen?
-
nein
-
Hallo niemand.
Danke für dein antwort also es gibt hoffnung für micht
einer ist ausgeschieden von Tausenden.Bin überzeugt es gibt jemanden der mir helfen kann.
ist bestimmt nicht unmöglich was ich wissen möchteGrüße can
-
wenn du sowas schreibst:
ich habe es so gemacht aber klappt nicht.
kannst du nicht wirklich hilfe erwarten.
-
Ich möchte mich entschuldiegen fals ich was falsches geschrieben habe!
ich dachte so kann ich besser verstanden werden möchte niemanden beleidigen
ich bin Anfänger.ich möchte nur wissen
wie ich den wert von GetRepeats( DWORD* pdwRepeats);Anzeigen kann.
-
Hi,
warum regen sich denn einige sofort so auf?
Gebt doch tipps wie er es besser machen kann
Hier einige Tipps von mir:
- Verwende bitte Codetags bei Quellcode den du postest, das ist einfacher
zu lesen.- Poste die Fehlermeldung mit
Zu deinem Problem:
Ich habe mich bisher noch nicht mit DirectX beschäftigt, aber dein Problem
ist, das GetRepeats einen Zeiger auf ein DWORD benötigt, indem die Funktion
den Wert hineinschreibt. Du must also die Adresse übergeben.void CDMusicTest2Dlg::OnBnClickedZeigebutt() { DWORD dRepeatData; if ( SUCCEEDED(segment->GetRepeats(&dRepeatData)) ) // beachte ^ Adressoperator { m_Anzeige.Format("%d", dRepeatData); UpdateData(FALSE); } }
Ich hoffe das hilft weiter...
Gruss
EBP.S unbedingt Englisch lernen!
-
wooov dankee.. EarlyBird
Es Klappt ich kann es jetz anzeigen
ich verstehe nicht was das problem wahr ich kanns wirklich nicht besser
ich bin musiker und kein programmirer aber möchte als musiker auch ein programm schreiben wenn jemand über Akkorde etwas wissen möchte kann ich seher gerne helfen aber wenns um programmiren geht brauche ich hilfe.Danke nochmals EarlyBird jetz kann ich weiter machen..
Grüße Can
-
es ging mir nur darum das deine frage schlecht gestellt ist.
wenn du sagst "klappt nicht" können wir nicht viel damit anfangen.
das mindeste was man machen kann ist die fehlermeldung zu posten.