/********************************************************************************************* * Copyright 2004 - Volian Enterprises, Inc. All rights reserved. * Volian Enterprises - Proprietary Information - DO NOT COPY OR DISTRIBUTE * ------------------------------------------------------------------------------ * $Workfile: VEMessage.cs $ $Revision: 1 $ * $Author: Kathy $ $Date: 7/27/04 8:24a $ * * $History: VEMessage.cs $ * * ***************** Version 1 ***************** * User: Kathy Date: 7/27/04 Time: 8:24a * Created in $/LibSource/VEMessage *********************************************************************************************/ using System; using System.Collections.Specialized; using System.Runtime.InteropServices; using System.Windows.Forms; namespace VEMessageNS { // messages for communication between this app & vfw. public enum MessageOps { WM_USER = 0x0400, MSG_COMMAND_TERMINATE = WM_USER + 200 + 4, POSQUERY = WM_USER+0x015, //21, POSUPDATE = WM_USER+0x016, //22, GETANSWER = WM_USER+0x017, //23, RQSTATTACH = WM_USER+0x018, //24, RQSTFILEOFFSET = WM_USER+0x19, //25, RQSTFILEMODE = WM_USER+0x01a, //26, RQSTFILEOWNER = WM_USER+0x01b, //27, RQSTFILESEEK = WM_USER+0x01c, //28, RQSTFILECLOSE = WM_USER+0x01d, //29, RQSTFILEOPEN = WM_USER+0x01e, //30, RQSTFILEREAD = WM_USER+0x01f, //31, RQSTFILEWRITE = WM_USER+0x020, //32, RQSTPROCESSRECORD = WM_USER+0x021, //33, GETPROCESSREC = WM_USER+0x022, //34, SETLOCKBYUSER = WM_USER+0x023, // 35 }; public class Win32 { [DllImport("wow32.dll")] public static extern Int16 WOWHandle16(IntPtr x, int xx); } public class VEMessage { public HybridDictionary dicMessage; static int m_Handle_16bit; static IntPtr m_Handle_vfw; public VEMessage() { dicMessage = new HybridDictionary(); dicMessage.Add(0x415,MessageOps.POSQUERY); dicMessage.Add(0x416,MessageOps.POSUPDATE); dicMessage.Add(0x417,MessageOps.GETANSWER); dicMessage.Add(0x418,MessageOps.RQSTATTACH); dicMessage.Add(0x419,MessageOps.RQSTFILEOFFSET); dicMessage.Add(0x41a,MessageOps.RQSTFILEMODE); dicMessage.Add(0x41b,MessageOps.RQSTFILEOWNER); dicMessage.Add(0x41c,MessageOps.RQSTFILESEEK); dicMessage.Add(0x41d,MessageOps.RQSTFILECLOSE); dicMessage.Add(0x41e,MessageOps.RQSTFILEOPEN); dicMessage.Add(0x41f,MessageOps.RQSTFILEREAD); dicMessage.Add(0x420,MessageOps.RQSTFILEWRITE); dicMessage.Add(0x421,MessageOps.RQSTPROCESSRECORD); dicMessage.Add(0x422,MessageOps.GETPROCESSREC); dicMessage.Add(0x423,MessageOps.SETLOCKBYUSER); } public bool Exists(int msg) { return(dicMessage.Contains(msg)); } public static int Handle_16bit { set { m_Handle_16bit=value; } get { return m_Handle_16bit; } } public static IntPtr Handle_Vfw { set { m_Handle_vfw=value; } get { return m_Handle_vfw; } } public int GetMessageOp(int m) { return ((int) dicMessage[m]); } public void SetReceiveHandle(Message m) { Handle_Vfw = m.WParam; } } }