读书人

请教下C++的.dll函数里,用C#语言如何写

发布时间: 2012-01-23 21:57:28 作者: rapoo

请问下C++的.dll函数里,用C#语言怎么写?
例如
在WIN32API.TXT文件中

Public Const WM_KEYFIRST = &H100
Public Const WM_KEYDOWN = &H100
Public Const WM_KEYUP = &H101
Public Const WM_CHAR = &H102
Public Const WM_DEADCHAR = &H103
Public Const WM_SYSKEYDOWN = &H104
Public Const WM_SYSKEYUP = &H105
Public Const WM_SYSCHAR = &H106
Public Const WM_SYSDEADCHAR = &H107
Public Const WM_KEYLAST = &H108
Public Const WM_INITDIALOG = &H110
Public Const WM_COMMAND = &H111
Public Const WM_SYSCOMMAND = &H112
Public Const WM_TIMER = &H113
Public Const WM_HSCROLL = &H114
Public Const WM_VSCROLL = &H115
Public Const WM_INITMENU = &H116
Public Const WM_INITMENUPOPUP = &H117
Public Const WM_MENUSELECT = &H11F
Public Const WM_MENUCHAR = &H120
Public Const WM_ENTERIDLE = &H121

Public Const WM_CTLCOLORMSGBOX = &H132
Public Const WM_CTLCOLOREDIT = &H133
Public Const WM_CTLCOLORLISTBOX = &H134
Public Const WM_CTLCOLORBTN = &H135
Public Const WM_CTLCOLORDLG = &H136
Public Const WM_CTLCOLORSCROLLBAR = &H137
Public Const WM_CTLCOLORSTATIC = &H138

Public Const WM_MOUSEFIRST = &H200
Public Const WM_MOUSEMOVE = &H200
Public Const WM_LBUTTONDOWN = &H201
Public Const WM_LBUTTONUP = &H202
Public Const WM_LBUTTONDBLCLK = &H203
Public Const WM_RBUTTONDOWN = &H204
Public Const WM_RBUTTONUP = &H205
Public Const WM_RBUTTONDBLCLK = &H206
Public Const WM_MBUTTONDOWN = &H207
Public Const WM_MBUTTONUP = &H208
Public Const WM_MBUTTONDBLCLK = &H209
Public Const WM_MOUSELAST = &H209

Public Const WM_PARENTNOTIFY = &H210
Public Const WM_ENTERMENULOOP = &H211
Public Const WM_EXITMENULOOP = &H212
Public Const WM_MDICREATE = &H220
Public Const WM_MDIDESTROY = &H221
Public Const WM_MDIACTIVATE = &H222
Public Const WM_MDIRESTORE = &H223
Public Const WM_MDINEXT = &H224
Public Const WM_MDIMAXIMIZE = &H225
Public Const WM_MDITILE = &H226
Public Const WM_MDICASCADE = &H227
Public Const WM_MDIICONARRANGE = &H228
Public Const WM_MDIGETACTIVE = &H229
Public Const WM_MDISETMENU = &H230
Public Const WM_DROPFILES = &H233


Public Const WM_MDIREFRESHMENU = &H234


Public Const WM_CUT = &H300
Public Const WM_COPY = &H301
Public Const WM_PASTE = &H302
Public Const WM_CLEAR = &H303
Public Const WM_UNDO = &H304
Public Const WM_RENDERFORMAT = &H305
Public Const WM_RENDERALLFORMATS = &H306
Public Const WM_DESTROYCLIPBOARD = &H307
Public Const WM_DRAWCLIPBOARD = &H308
Public Const WM_PAINTCLIPBOARD = &H309
Public Const WM_VSCROLLCLIPBOARD = &H30A
Public Const WM_SIZECLIPBOARD = &H30B
Public Const WM_ASKCBFORMATNAME = &H30C
Public Const WM_CHANGECBCHAIN = &H30D
Public Const WM_HSCROLLCLIPBOARD = &H30E
Public Const WM_QUERYNEWPALETTE = &H30F
Public Const WM_PALETTEISCHANGING = &H310
Public Const WM_PALETTECHANGED = &H311
Public Const WM_HOTKEY = &H312

Public Const WM_PENWINFIRST = &H380
Public Const WM_PENWINLAST = &H38F

' NOTE: All Message Numbers below 0x0400 are RESERVED.

' Private Window Messages Start Here:
Public Const WM_USER = &H400

' WM_SYNCTASK Commands
Public Const ST_BEGINSWP = 0
Public Const ST_ENDSWP = 1

' WM_NCHITTEST and MOUSEHOOKSTRUCT Mouse Position Codes
Public Const HTERROR = (-2)
Public Const HTTRANSPARENT = (-1)
Public Const HTNOWHERE = 0
Public Const HTCLIENT = 1
Public Const HTCAPTION = 2
Public Const HTSYSMENU = 3
Public Const HTGROWBOX = 4
Public Const HTSIZE = HTGROWBOX
Public Const HTMENU = 5
Public Const HTHSCROLL = 6
Public Const HTVSCROLL = 7
Public Const HTMINBUTTON = 8
Public Const HTMAXBUTTON = 9
Public Const HTLEFT = 10
Public Const HTRIGHT = 11
Public Const HTTOP = 12
Public Const HTTOPLEFT = 13
Public Const HTTOPRIGHT = 14
Public Const HTBOTTOM = 15
Public Const HTBOTTOMLEFT = 16
Public Const HTBOTTOMRIGHT = 17
Public Const HTBORDER = 18
Public Const HTREDUCE = HTMINBUTTON
Public Const HTZOOM = HTMAXBUTTON
Public Const HTSIZEFIRST = HTLEFT
Public Const HTSIZELAST = HTBOTTOMRIGHT

' SendMessageTimeout values
Public Const SMTO_NORMAL = &H0
Public Const SMTO_BLOCK = &H1


Public Const SMTO_ABORTIFHUNG = &H2

' WM_MOUSEACTIVATE Return Codes
Public Const MA_ACTIVATE = 1
Public Const MA_ACTIVATEANDEAT = 2
Public Const MA_NOACTIVATE = 3
Public Const MA_NOACTIVATEANDEAT = 4

怎样用C#语言写?

[解决办法]
直接定义成int或者uint的变量就可以了,
public const uint MA_NOACTIVATEANDEAT = 4;
ext.
[解决办法]
晕,一楼给你举的例子
你确问什么意思?
难道要给你全部翻译过来?
你照着例子自己写吧
[解决办法]
//看在只是替换两下的份上给你转一下

public const int WM_KEYFIRST = 0x100;
public const int WM_KEYDOWN = 0x100;
public const int WM_KEYUP = 0x101;
public const int WM_CHAR = 0x102;
public const int WM_DEADCHAR = 0x103;
public const int WM_SYSKEYDOWN = 0x104;
public const int WM_SYSKEYUP = 0x105;
public const int WM_SYSCHAR = 0x106;
public const int WM_SYSDEADCHAR = 0x107;
public const int WM_KEYLAST = 0x108;
public const int WM_INITDIALOG = 0x110;
public const int WM_COMMAND = 0x111;
public const int WM_SYSCOMMAND = 0x112;
public const int WM_TIMER = 0x113;
public const int WM_HSCROLL = 0x114;
public const int WM_VSCROLL = 0x115;
public const int WM_INITMENU = 0x116;
public const int WM_INITMENUPOPUP = 0x117;
public const int WM_MENUSELECT = 0x11F;
public const int WM_MENUCHAR = 0x120;
public const int WM_ENTERIDLE = 0x121;

public const int WM_CTLCOLORMSGBOX = 0x132;
public const int WM_CTLCOLOREDIT = 0x133;
public const int WM_CTLCOLORLISTBOX = 0x134;
public const int WM_CTLCOLORBTN = 0x135;
public const int WM_CTLCOLORDLG = 0x136;
public const int WM_CTLCOLORSCROLLBAR = 0x137;
public const int WM_CTLCOLORSTATIC = 0x138;

public const int WM_MOUSEFIRST = 0x200;
public const int WM_MOUSEMOVE = 0x200;
public const int WM_LBUTTONDOWN = 0x201;
public const int WM_LBUTTONUP = 0x202;
public const int WM_LBUTTONDBLCLK = 0x203;
public const int WM_RBUTTONDOWN = 0x204;
public const int WM_RBUTTONUP = 0x205;
public const int WM_RBUTTONDBLCLK = 0x206;
public const int WM_MBUTTONDOWN = 0x207;
public const int WM_MBUTTONUP = 0x208;
public const int WM_MBUTTONDBLCLK = 0x209;
public const int WM_MOUSELAST = 0x209;

public const int WM_PARENTNOTIFY = 0x210;
public const int WM_ENTERMENULOOP = 0x211;
public const int WM_EXITMENULOOP = 0x212;
public const int WM_MDICREATE = 0x220;
public const int WM_MDIDESTROY = 0x221;
public const int WM_MDIACTIVATE = 0x222;
public const int WM_MDIRESTORE = 0x223;
public const int WM_MDINEXT = 0x224;
public const int WM_MDIMAXIMIZE = 0x225;
public const int WM_MDITILE = 0x226;
public const int WM_MDICASCADE = 0x227;
public const int WM_MDIICONARRANGE = 0x228;
public const int WM_MDIGETACTIVE = 0x229;
public const int WM_MDISETMENU = 0x230;
public const int WM_DROPFILES = 0x233;
public const int WM_MDIREFRESHMENU = 0x234;

public const int WM_CUT = 0x300;
public const int WM_COPY = 0x301;
public const int WM_PASTE = 0x302;
public const int WM_CLEAR = 0x303;
public const int WM_UNDO = 0x304;
public const int WM_RENDERFORMAT = 0x305;
public const int WM_RENDERALLFORMATS = 0x306;
public const int WM_DESTROYCLIPBOARD = 0x307;
public const int WM_DRAWCLIPBOARD = 0x308;
public const int WM_PAINTCLIPBOARD = 0x309;
public const int WM_VSCROLLCLIPBOARD = 0x30A;


public const int WM_SIZECLIPBOARD = 0x30B;
public const int WM_ASKCBFORMATNAME = 0x30C;
public const int WM_CHANGECBCHAIN = 0x30D;
public const int WM_HSCROLLCLIPBOARD = 0x30E;
public const int WM_QUERYNEWPALETTE = 0x30F;
public const int WM_PALETTEISCHANGING = 0x310;
public const int WM_PALETTECHANGED = 0x311;
public const int WM_HOTKEY = 0x312;


public const int WM_PENWINFIRST = 0x380;
public const int WM_PENWINLAST = 0x38F;
// NOTE: All Message Numbers below 0x0400 are RESERVED.;

// Private Window Messages Start Here:;
public const int WM_USER = 0x400;

// WM_SYNCTASK Commands;
public const int ST_BEGINSWP = 0;
public const int ST_ENDSWP = 1;

// WM_NCHITTEST and MOUSEHOOKSTRUCT Mouse Position Codes;
public const int HTERROR = (-2);
public const int HTTRANSPARENT = (-1);
public const int HTNOWHERE = 0;
public const int HTCLIENT = 1;
public const int HTCAPTION = 2;
public const int HTSYSMENU = 3;
public const int HTGROWBOX = 4;
public const int HTSIZE = HTGROWBOX;
public const int HTMENU = 5;
public const int HTHSCROLL = 6;
public const int HTVSCROLL = 7;
public const int HTMINBUTTON = 8;
public const int HTMAXBUTTON = 9;
public const int HTLEFT = 10;
public const int HTRIGHT = 11;
public const int HTTOP = 12;
public const int HTTOPLEFT = 13;
public const int HTTOPRIGHT = 14;
public const int HTBOTTOM = 15;
public const int HTBOTTOMLEFT = 16;
public const int HTBOTTOMRIGHT = 17;
public const int HTBORDER = 18;
public const int HTREDUCE = HTMINBUTTON;
public const int HTZOOM = HTMAXBUTTON;
public const int HTSIZEFIRST = HTLEFT;
public const int HTSIZELAST = HTBOTTOMRIGHT;

// SendMessageTimeout values;
public const int SMTO_NORMAL = 0x0;
public const int SMTO_BLOCK = 0x1;
public const int SMTO_ABORTIFHUNG = 0x2;

// WM_MOUSEACTIVATE Return Codes;
public const int MA_ACTIVATE = 1;
public const int MA_ACTIVATEANDEAT = 2;
public const int MA_NOACTIVATE = 3;
public const int MA_NOACTIVATEANDEAT = 4;
[解决办法]
路过。。向前辈学习 。。顶起
[解决办法]
// WM_MOUSEACTIVATE Return Codes;
public const int MA_ACTIVATE = 1;
public const int MA_ACTIVATEANDEAT = 2;
public const int MA_NOACTIVATE = 3;
public const int MA_NOACTIVATEANDEAT = 4;

WM_MOUSEACTIVATE 这个消息的返回值
不明白就查MSDN

MA_ACTIVATE Activate CWnd object.

MA_NOACTIVATE Do not activate CWnd object.

MA_ACTIVATEANDEAT Activate CWnd object and discard the mouse event.

MA_NOACTIVATEANDEAT Do not activate CWnd object and discard the mouse event.

读书人网 >C#

热点推荐