COM-Objekt als Parameter übergeben

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • COM-Objekt als Parameter übergeben

    Hallo,

    ich rufe eine Methode eines COM-Objektes auf. Diese Methode erwartet u.a. ein ADODB.Recordset.

    Public Function SearchInDirectory(sqlQuery As Variant, searchScope As Variant, oRS As ADODB.Recordset) As Long

    Es spielt aber keine Rolle, was ich an den Parameter übergebe. Die Methode wird ohne Fehlermeldung abgearbeitet. Der Rückgabewert ist auch korrekt, nur "oRS" ist danach nicht gefüllt.

    Hier ein Auszug aus dem Code:
    PHP-Code:
    $modex = new COM"modex.mdata" ) or die("Modex not found");
    $recset = new COM"ADODB.Recordset" ) or die("ADO not found");
    $AnzahlTreffer $modex->SearchInDirectory($sql2$recset);
    if (!
    $recset->EOF
    Bei der hier letzten Zeile erhallt ich immer die Fehlermeldung:

    Warning: (null)(): Invoke() failed: Exception aufgetreten. Source: ADODB.Recordset Description: Der Vorgang ist für ein geschlossenes Objekt nicht zugelassen. in c:\krm\erfassen\SearchBearbeiter.php on line 72
    Ich habe $recset auch schon als Referenz übergeben (& $recset), was aber am Ergebnis nichts ändert.

    Ich kann das COM-Object sowohl mit Delphi als auch mit VB ansprechen, nur PHP will nicht.

    Sieht jemand, ob ich einen prinzipiellen Fehler mache oder kann PHP so etwas generell nicht? (Im Internet habe ich kein einziges Beispiel gefunden, bei dem ein COM-Objekt als Parameter übergeben wird)


    aloa Richard

    Windows NT SP6
    PHP/4.3.2
Lädt...
X