我如何将COleDispatchDriver方法从C ++转换为c# [英] HOW can I convert COleDispatchDriver methods from C++ to c#
本文介绍了我如何将COleDispatchDriver方法从C ++转换为c#的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何在C#中转换以下代码
代码
PCommServer.h
How can I convert following code in C#
Code
PCommServer.h
class CIPmacDevice : public COleDispatchDriver
{
public:
CIPmacDevice() {} // Calls COleDispatchDriver default constructor
CIPmacDevice(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
CIPmacDevice(const CIPmacDevice& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
// Attributes
public:
// Operations
public:
void Open(long dwDevice, BOOL* pbSuccess);
void SelectDevice(long hWindow, long* pDeviceNumber, BOOL* pbSuccess);
}
PCommServer.cpp
#include "stdafx.h"
#include "pCommServer.h"
void CIPmacDevice::Open(long dwDevice, BOOL* pbSuccess)
{
static BYTE parms[] =
VTS_I4 VTS_PBOOL;
InvokeHelper(0x1, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
dwDevice, pbSuccess);
}
void CIPmacDevice::SelectDevice(long hWindow, long* pDeviceNumber, BOOL* pbSuccess)
{
static BYTE parms[] =
VTS_I4 VTS_PI4 VTS_PBOOL;
InvokeHelper(0x1a, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
hWindow, pDeviceNumber, pbSuccess);
}
DO I NEED TO IMPORT any DLL to do this.
Or Is there any other way to use COleDisplaydispatcher class in C#
i.e any eqivalent method for it
Can anyone provide step by step instructions to do it
推荐答案
您无需转换它。
您可以在项目中使用C ++ dll。请参阅:
从C#调用非托管DLL,干净地杀死进程 [ ^ ]
从C#代码调用本机C ++ DLL [ ^ ]
C#中的动态调用C ++ DLL函数 [ ^ ]
You don't need to convert it.
You can use C++ dll in your project. Please, see:
Call Unmanaged DLLs from C#, Killing Processes Cleanly[^]
Call Native C++ DLL from C# Code[^]
Dynamic Invoke C++ DLL function in C#[^]
这篇关于我如何将COleDispatchDriver方法从C ++转换为c#的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文