Announcement

Collapse
No announcement yet.

Visual C++DLL soll auf Visual basic Form Grafik zeichnen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Visual C++DLL soll auf Visual basic Form Grafik zeichnen

    Ich will von einem VC++ DLL aus auf eine aufrufende VB-Form Grafik zeichnen (MS Visual Studio 6.0) :
    - das Oobjekt "Form" besitzt schon in VB die (windowsspezifische) eigenschaft hDC, die als long weitergegeben werden kann.
    - C++ empfängt das, akzeptiert auch als DC, denn es zeichnet (angeblich) die Ellipse und meldet zurueck "die ellipse sei fehlerlos gezeichnet"...
    - und es erscheint doch nichts auf der VB-form:

    C++ seitig:
    --------------
    extern "C" int PASCAL EXPORT MyEllipse (int* F, HDC hDC)
    {
    AFX_MANAGE_STATE(AfxGetStaticModuleState());
    if(Ellipse(hDC, F[0], F[1], F[2], F[3])!=0)
    return -1; // falls fehlerlos gezeichnet, dann -1 zurueckgeben,
    else
    return GetLastError(); // falls fehler, fehlercode (> 0) zurueckgeben.
    }

    VB-seitig:
    -----------
    Private Declare Function MyEllipse Lib "MyMFC.dll" _
    (ByRef F0 As Integer, ByVal hDC As Long) As Integer

    Private Sub Form_Load()
    Dim F(3) As Integer
    F(0) = 500
    F(1) = 500
    F(2) = 1000
    F(3) = 1000
    n = MyEllipse(F(0), me.hDC) ' Auf der Form erscheint jedoch NICHTS !
    MsgBox (n) ' Trotzdem meldet es -1, dh. "Ellipse mit erfolg gezeichnet!"
    End Sub

    kann mir jemand helfen???
    tulgan

  • #2
    Prüfe mal deine übergebenen Werte
    Christian

    Comment

    Working...
    X