public _commandToWpf(string memory_name) { MarshalExt.CreateMarshalMemory(out this); //выделение памяти под структуру SharedMemoryVarVS_REG.rtSharedCommandToWPF = (RTSharedMemory)RTXfuncfionsEXT.OpenSharedMemory(memory_name, ref this); //открытие именованной области памяти в сигменте RTX }
private void timer1_Tick(object sender, System.EventArgs e) { if (0 == m_hDownloader) { return; } if (FTKernelAPI.FTK_Downloader_GetState(m_hDownloader) == FTKernelAPI.DLSTATE.DLSTATE_CHECKING) { textBox4.Text = "Status: checking file..."; } else if (FTKernelAPI.FTK_Downloader_GetState(m_hDownloader) == FTKernelAPI.DLSTATE.DLSTATE_DOWNLOAD) { textBox4.Text = "Status: downloading..."; } else if (FTKernelAPI.FTK_Downloader_GetState(m_hDownloader) == FTKernelAPI.DLSTATE.DLSTATE_FETALERR) { textBox4.Text = "Status: downloading error..."; } else if (FTKernelAPI.FTK_Downloader_GetState(m_hDownloader) == FTKernelAPI.DLSTATE.DLSTATE_TERMINATE) { textBox4.Text = "Status: stopping..."; } int nPos = 0; if (FTKernelAPI.FTK_Downloader_GetState(m_hDownloader) == FTKernelAPI.DLSTATE.DLSTATE_CHECKING) { nPos = ( int )PERCENT((ulong)FTKernelAPI.FTK_Stat_GetCheckPieceCount(m_hDownloader), (ulong)m_nPieceCount); progressBar1.Value = nPos; } if (FTKernelAPI.FTK_Downloader_GetState(m_hDownloader) < FTKernelAPI.DLSTATE.DLSTATE_DOWNLOAD || FTKernelAPI.FTK_Downloader_GetState(m_hDownloader) >= FTKernelAPI.DLSTATE.DLSTATE_FETALERR) { return; } P2PAPI.FTKernelAPI._tagPeerData [] PeersData = new P2PAPI.FTKernelAPI._tagPeerData[10]; int nRetCount = 10; int nSize = Marshal.SizeOf(PeersData[0]); IntPtr pData = MarshalExt.AllocHGlobal(nSize * 10); nRetCount = 10; FTKernelAPI.FTK_Stat_GetPeerData(m_hDownloader, pData, ref nRetCount, 10); BytePtr_to_Peers_Data(pData, PeersData, nRetCount); MarshalExt.FreeHGlobal(pData); //P2PAPI.FTKernelAPI._tagAnnounceData [] AnnouncesData = new P2PAPI.FTKernelAPI._tagAnnounceData[10];// = new P2PAPI.FTKernelAPI._tagAnnounceData[ 20 ]; P2PAPI.FTKernelAPI._tagAnnounceData [] AnnouncesData = new P2PAPI.FTKernelAPI._tagAnnounceData[10]; nSize = Marshal.SizeOf(AnnouncesData[0]); pData = MarshalExt.AllocHGlobal(nSize * 10); nRetCount = 10; FTKernelAPI.FTK_Stat_GetAnnounceData(m_hDownloader, pData, ref nRetCount, 10); BytePtr_to_Announces_Data(pData, AnnouncesData, nRetCount); MarshalExt.FreeHGlobal(pData); ulong ulTotalFileHaveSize = FTKernelAPI.FTK_Stat_GetTotalFileHaveSize(m_hDownloader); nPos = ( int )PERCENT((ulong)ulTotalFileHaveSize, (ulong)m_ulTotalFileSize); progressBar1.Value = nPos; String sValue; sValue = FormatBytes(( ulong )FTKernelAPI.FTK_Stat_GetDownloadRate(m_hDownloader)); label1.Text = "Down Speed: " + sValue + "/s"; sValue = FormatBytes(( ulong )FTKernelAPI.FTK_Stat_GetUploadRate(m_hDownloader)); label2.Text = "Up Speed: " + sValue + "/s"; sValue = FormatBytes(ulTotalFileHaveSize); textBox4.Text += " | Downloaded: " + sValue; if (nPos >= 100) { textBox4.Text = "Status: Downloaded OK..."; } }
public tTimerStruct(string memory_name) { //this = new TVS_RTX(); MarshalExt.CreateMarshalMemory(out this); //выделение памяти под структуру SharedMemoryVarVS_REG.rtSharedGetMemory = (RTSharedMemory)RTXfuncfionsEXT.OpenSharedMemory(memory_name, ref this); //открытие именованной области памяти в сигменте RTX }
public static unsafe string GetVersionString() { return(MarshalExt.FromUTF8(glfwGetVersionString())); }
public static void SetWindowTitle(Window window, string title) { glfwSetWindowTitle(window.Handle, MarshalExt.ToUTF8ByteArray(title)); }
public static Window CreateWindow(int width, int height, string title, Monitor?monitor = null, Window?share = null) { return(glfwCreateWindow(width, height, MarshalExt.ToUTF8ByteArray(title), monitor.HasValue ? monitor.Value.Handle : IntPtr.Zero, share.HasValue ? share.Value.Handle : IntPtr.Zero)); }
public static string GetMonitorName(Monitor monitor) { return(MarshalExt.FromUTF8(glfwGetMonitorName(monitor))); }