Инициализировать COM-объект / Перевести VB-код в C ++ - PullRequest
1 голос
/ 09 марта 2009

Кто-нибудь может перевести следующий код на C ++? Возможно ли это вообще или отсутствует жизненно важная информация?

Dim Laser As Object
Sub EnableLaser
    ‘ Create a laser object if it hasn’t been done yet
    If Laser Is Nothing Then
       Set Laser = CreateObject("NWLaserXControl.NWLaserX")
    End If
    If Laser.Initialize Then
       Laser.RepRate = 10 ‘ set the rep rate to 10Hz
       Laser.LaserEnabled = True ‘ turn on laser power supply, get it ready
    End If
End Sub

1 Ответ

1 голос
/ 09 марта 2009
// if (CoInitialize(0) == S_OK)
{
    CComPtr<INWLaserX> pMyPtr = NULL;

    CLSID clsid = IID_NULL;
    CLSIDFromProgID("NWLaserXControl.NWLaserX");

    if (pMyPtr.CoCreateInstance(clsid) == S_OK)
    {
         pMyPtr->put_RepRate(10);
         pMyPtr->put_LaserEnabled(TRUE);
    }

   // CoUnInitialize();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...