<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: How to receive messages from windows using JSL of JMP software? in Discussions</title>
    <link>https://community.jmp.com/t5/Discussions/How-to-receive-messages-from-windows-using-JSL-of-JMP-software/m-p/824891#M100473</link>
    <description>&lt;P&gt;Need more info. What are you trying to do? Is this about the windows OS API? Is this about a particular program?&lt;/P&gt;
&lt;P&gt;edit: Is this about email?&lt;/P&gt;</description>
    <pubDate>Mon, 23 Dec 2024 14:07:12 GMT</pubDate>
    <dc:creator>Craige_Hales</dc:creator>
    <dc:date>2024-12-23T14:07:12Z</dc:date>
    <item>
      <title>How to receive messages from windows using JSL of JMP software?</title>
      <link>https://community.jmp.com/t5/Discussions/How-to-receive-messages-from-windows-using-JSL-of-JMP-software/m-p/824881#M100472</link>
      <description>&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;My operating system is 64-bit Windows 10.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;Thanks Experts!&lt;/P&gt;</description>
      <pubDate>Mon, 23 Dec 2024 13:32:43 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/How-to-receive-messages-from-windows-using-JSL-of-JMP-software/m-p/824881#M100472</guid>
      <dc:creator>GeneratingKappa</dc:creator>
      <dc:date>2024-12-23T13:32:43Z</dc:date>
    </item>
    <item>
      <title>Re: How to receive messages from windows using JSL of JMP software?</title>
      <link>https://community.jmp.com/t5/Discussions/How-to-receive-messages-from-windows-using-JSL-of-JMP-software/m-p/824891#M100473</link>
      <description>&lt;P&gt;Need more info. What are you trying to do? Is this about the windows OS API? Is this about a particular program?&lt;/P&gt;
&lt;P&gt;edit: Is this about email?&lt;/P&gt;</description>
      <pubDate>Mon, 23 Dec 2024 14:07:12 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/How-to-receive-messages-from-windows-using-JSL-of-JMP-software/m-p/824891#M100473</guid>
      <dc:creator>Craige_Hales</dc:creator>
      <dc:date>2024-12-23T14:07:12Z</dc:date>
    </item>
    <item>
      <title>Re: How to receive messages from windows using JSL of JMP software?</title>
      <link>https://community.jmp.com/t5/Discussions/How-to-receive-messages-from-windows-using-JSL-of-JMP-software/m-p/824893#M100475</link>
      <description>&lt;P&gt;Thanks Experts!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It is a data transfer client software.&lt;BR /&gt;It implements API data transmission through DLL.&lt;BR /&gt;It provides data interface specifications.&lt;BR /&gt;It is based on C#&lt;BR /&gt;I don't know how to change it to a JSL implementation.&lt;/P&gt;</description>
      <pubDate>Mon, 23 Dec 2024 14:33:13 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/How-to-receive-messages-from-windows-using-JSL-of-JMP-software/m-p/824893#M100475</guid>
      <dc:creator>GeneratingKappa</dc:creator>
      <dc:date>2024-12-23T14:33:13Z</dc:date>
    </item>
    <item>
      <title>Re: How to receive messages from windows using JSL of JMP software?</title>
      <link>https://community.jmp.com/t5/Discussions/How-to-receive-messages-from-windows-using-JSL-of-JMP-software/m-p/824894#M100476</link>
      <description>&lt;P class=""&gt;&lt;SPAN class=""&gt;It has more regulations.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;I've excerpted some of it.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;This is my first experience with this kind of content.&lt;/SPAN&gt;&lt;SPAN class=""&gt;So I don't know how to deal with it.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN class=""&gt;Thanks for the expert's help.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;const
// Work mode type definition
RCV_WORK_SENDMSG = 4 // Message work mode


// Message subtypes
News_Sha_Ex = 2 // The firsttype message
News_Szn_Ex = 4 // The secondtype message

// Data
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi, Pack = 1)]
public struct RCV_REPORT_STRUCTExV3
{
    public UInt16 m_cbSize; // Structure size
    public Int32 m_time; // Transaction time
    public Single m_fHigh; // Maximum
    public Single m_fLow; // Minimum
    public Single m_fNewPrice; // Latest
    public Single m_fVolume; // Production volume
    public Single m_fAmount; // Production value
    [MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)]
    public Single[] m_fputPrice; // Entry storage price 1,2,3
    [MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)]
    public Single[] m_fputVolume; // Entry storage volume 1,2,3
    [MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)]
    public Single[] m_ftransPrice; // Transfer application price 1,2,3
    [MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)]
    public Single[] m_ftransVolume; // Transfer application volume 1,2,3
    public Single m_fputPrice4; // Entry storage price 4
    public Single m_fputVolume4; // Entry storage volume 4
    public Single m_ftransPrice4; // Transfer application price 4
    public Single m_ftransVolume4; // Transfer application volume 4
    public Single m_fputPrice5; // Entry storage price 5
    public Single m_fputVolume5; // Entry storage volume 5
    public Single m_ftransPrice5; // Transfer application price 5
    public Single m_ftransVolume5; // Transfer application volume 5
};


}


// Data notification message
// Direct data reference notification message
// wParam = RCV_WPARAM;
// lParam points to the RCV_DATA structure;
// Return 1 if processed, 0 if unprocessed or unable to process
// Note 1:
// The number of records represents the number of data packets of market data and supplementary data (including Header). For file type data, = 1
// Note 2:
// If m_bDISK = FALSE, m_pData is the data buffer pointer
// ******** Data sharing, do not modify data **********
// m_bDISK = TRUE, m_pData is the file storage name of the file. Generally, only large files such as upgrade software use the storage method
// [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi, Pack = 1)]
public struct RCV_DATA
{
    public int m_wDataType; // File type
    public int m_nPacketNum; // Number of records, see Note 1
    public RCV_FILE_HEADEx m_File; // File interface
    public int m_bDISK; // Whether the file is stored
    public IntPtr m_pData;
};
// Tick data ///////////////////////////////////
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi, Pack = 1)] 
public struct RCV_FENBI_STRUCTEx
{
    public int m_lTime; // hhmmss Example: 93056 indicates 9:
    public Single m_fHigh; // Maximum
    public Single m_fLow; // Minimum 
    public Single m_fNewPrice; // Latest 
    public Single m_fVolume; // Production volume
    public Single m_fAmount; // Production value
    public int m_lStroke; // Reserved
    [MarshalAs(UnmanagedType.ByValArray, SizeConst = 5)]
    public Single[] m_fputPrice; // Entry storage price 1,2,3,4,5
    [MarshalAs(UnmanagedType.ByValArray, SizeConst = 5)]
    public Single[] m_fputVolume; // Entry storage volume 1,2,3,4,5
    [MarshalAs(UnmanagedType.ByValArray, SizeConst = 5)]
    public Single[] m_ftransPrice; // Transfer application price 1,2,3,4,5
    [MarshalAs(UnmanagedType.ByValArray, SizeConst = 5)]
    public Single[] m_ftransVolume; // Transfer application volume 1,2,3,4,5
};
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi, Pack = 1)] 
public struct RCV_FENBI
{
    public UInt16 m_wMarket; // Customer market type
    [MarshalAs(UnmanagedType.ByValArray, SizeConst = 10)]
    public char[] m_szLabel; // Customer code, ending with '\0'
    public Int32 m_lDate; // Date of tick data FORMAT:
    public Single m_fLastClose; // Yesterday's closing price
    public Single m_fOpen; // Today's opening price
    public UInt16 m_nCount; // Data quantity of m_Data, number of ticks
    public IntPtr m_Data; // Length is m_nCount
};


// Message processing program DEMO
protected override void WndProc(ref System.Windows.Forms.Message m)
{
    // Detect message type 
    switch (m.WParam.ToInt32())
    { 
        case RCV_REPORT: // Shared data reference mode, customer market
        {
            RCV_DATA pHeader = PRCV_DATA(m.lParam);
            for (i = 0; i &amp;lt; pHeader.m_nPacketNum - 1; i++)
            {
                // Data processing
            }
        }

        case RCV_FENBIDATA: { 
            // Interface-supplemented tick data, which refers to the tick data of the day
            break;
        }
        RCV_MKTTBLDATA :{
            // Received code table data
            break;
        }
        RCV_FINANCEDATA :{
            // Received financial data
            break;
        }
    }
}
//////////////////////////////////////////////////////////////////////////////////
// APIs
//////////////////////////////////////////////////////////////////////////////////
// Registration function
// Customer initialization
// Entry parameters:
// hWnd Window handle for processing messages
// Msg User-defined message
// nWorkMode Interface work mode, see work mode type definition
// Return parameters:
// 1 Success 
// -1 Failure
// Note:
// After registration, the driver will send messages to the processing window; if not registered, data can also be obtained through query
// If the customer receiving is not started, start the customer receiving program
public delegate int Stock_Init(IntPtr nHwnd, int nMsg, int nWorkMode);
// Exit, stop sending messages
// Entry parameters:
// hWnd Window handle for processing messages, the same as the calling entry parameter of Stock_Init
// Return parameters:
// 1 Success 
// -1 Failure
public delegate int Stock_Quit(IntPtr nHwnd);
// Activate the receiving program for setting
// Entry parameters:
// bSetup TRUE Show window for setting
// FALSE Hide window
// Return parameters:
// 1 Success
// -1 Failure
public delegate int SetupReceiver(bool bShowWindow);
// Get customer driver information
// Entry parameters:
// nInfo Index
// pBuf Buffer
// Exit parameters:
// nInfo == RI_IDSTRING, return the length of the characteristic string, pBuf is the characteristic string
// Such as: "TongShi_StockDrv_1.00"
// nInfo == RI_IDCODE, return the information card ID number, pBuf is the ID number in string form
// Such as: 0x78001234 "78001234"
// nInfo == RI_VERSION, return the version number of the information card, pBuf is the version in string
// Such as: 1.00 "1.00" 
// nInfo == RI_V2SUPPORT, return whether the Shenzhen SJS library structure is supported, pBuf is invalid
public delegate int GetStockDrvInfo(int nInfo,IntPtr pBuf);
public delegate int ReInitStockInfo(); // Reserved function, not currently used&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Mon, 23 Dec 2024 14:37:00 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/How-to-receive-messages-from-windows-using-JSL-of-JMP-software/m-p/824894#M100476</guid>
      <dc:creator>GeneratingKappa</dc:creator>
      <dc:date>2024-12-23T14:37:00Z</dc:date>
    </item>
    <item>
      <title>Re: How to receive messages from windows using JSL of JMP software?</title>
      <link>https://community.jmp.com/t5/Discussions/How-to-receive-messages-from-windows-using-JSL-of-JMP-software/m-p/825060#M100487</link>
      <description>&lt;P&gt;The JMP C# &lt;EM&gt;automation&lt;/EM&gt; examples might help. I think &lt;EM&gt;automation&lt;/EM&gt; might be the keyword you are looking for.&lt;/P&gt;</description>
      <pubDate>Tue, 24 Dec 2024 04:48:55 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/How-to-receive-messages-from-windows-using-JSL-of-JMP-software/m-p/825060#M100487</guid>
      <dc:creator>Craige_Hales</dc:creator>
      <dc:date>2024-12-24T04:48:55Z</dc:date>
    </item>
    <item>
      <title>Re: How to receive messages from windows using JSL of JMP software?</title>
      <link>https://community.jmp.com/t5/Discussions/How-to-receive-messages-from-windows-using-JSL-of-JMP-software/m-p/825073#M100489</link>
      <description>&lt;P&gt;Thanks Experts!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;https://community.jmp.com/t5/Discussions/Create-JMP-datatable-from-C-DataTable-variable/m-p/49392&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;A href="https://community.jmp.com/t5/Discussions/Create-JMP-datatable-from-C-DataTable-variable/m-p/49392" target="_self"&gt;https://community.jmp.com/t5/Discussions/Create-JMP-datatable-from-C-DataTable-variable/m-p/49392&lt;/A&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 24 Dec 2024 07:05:10 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/How-to-receive-messages-from-windows-using-JSL-of-JMP-software/m-p/825073#M100489</guid>
      <dc:creator>GeneratingKappa</dc:creator>
      <dc:date>2024-12-24T07:05:10Z</dc:date>
    </item>
    <item>
      <title>Re: How to receive messages from windows using JSL of JMP software?</title>
      <link>https://community.jmp.com/t5/Discussions/How-to-receive-messages-from-windows-using-JSL-of-JMP-software/m-p/825074#M100490</link>
      <description>&lt;P&gt;Read these posts.But the subject is too difficult for me.No similar examples are found.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Thanks Experts!&lt;/P&gt;</description>
      <pubDate>Tue, 24 Dec 2024 07:13:30 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/How-to-receive-messages-from-windows-using-JSL-of-JMP-software/m-p/825074#M100490</guid>
      <dc:creator>GeneratingKappa</dc:creator>
      <dc:date>2024-12-24T07:13:30Z</dc:date>
    </item>
  </channel>
</rss>

