我正在使用c#.net开发winform应用程序。我的winform应用程序正在使用以下组件 1)赢得32个dll(使用System.Runtime.InteropServices) 2)计时器(计数3)(System.Timers) 3)Excel Interop
应用程序的内存根本没有下降。由于计时器连续运行所以我无法处理 所以想实现配置模式。
是否有必要将win32 API与Excel interop区分开来。 如有必要,请您建议调用和处理win32 API的最佳方法。 下面列出了应用程序中使用的一些Win32 API。
DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Auto)]
static extern uint RegisterWindowMessage(string lpString);
[DllImport("wininet.dll")]
private extern static bool InternetGetConnectedState(out int netConnection, int val);
[DllImport("Oleacc.dll")]
private static extern int AccessibleObjectFromWindow(IntPtr hwnd, uint dwObjectID, byte[] riid, ref Excel.Window ptr);
[DllImport("WtsApi32.dll")]
private static extern bool WTSRegisterSessionNotification(IntPtr hWnd, [MarshalAs(UnmanagedType.U4)]int dwFlags);
[DllImport("WtsApi32.dll")]
private static extern bool WTSUnRegisterSessionNotification(IntPtr hWnd);
答案 0 :(得分:-1)
函数调用中的hWnd参数都是窗口句柄。作为一般规则,无论何时在Windows API中使用窗口句柄,都需要使用CloseHandle函数显式释放它