コード例 #1
0
        private int GetLengthTextByHandle(IntPtr hWnd)
        {
            const int WM_GETTEXTLENGTH = 0x000E;
            IntPtr    hndl             = Marshal.AllocHGlobal(200);
            int       numText          = (int)DllImportMethods.SendMessage(hWnd, WM_GETTEXTLENGTH, (IntPtr)2000, hndl);

            return(numText);
        }
コード例 #2
0
        private string GetImportMemoText(IntPtr hControlBox)
        {
            uint WM_GETTEXT = 0x000D;
            int  len        = GetLengthTextByHandle(hControlBox);

            if (len <= 0)
            {
                return(null);
            }
            StringBuilder sb = new StringBuilder(len + 1);

            DllImportMethods.SendMessageForGetText(hControlBox, WM_GETTEXT, len + 1, sb);
            return(sb.ToString());
        }
コード例 #3
0
        private IntPtr GetHandleTMemo()
        {
            var importForm = DllImportMethods.FindWindow("TFormImport", "ЗАПИСЬ В БАЗУ ASUSS");

            if (importForm.ToString() == "0")
            {
                importForm = DllImportMethods.FindWindow("TFormImport", "ЗАПИСЬ В БАЗУ ");
            }
            var memoHandle = DllImportMethods.FindWindowEx(importForm, new IntPtr(0), "TMemo", null);

            if (memoHandle.ToString() == "0")
            {
                SetStatus("Не найдено окно Импорта");
            }
            return(memoHandle);
        }
コード例 #4
0
        /// <summary>
        /// Закрываем всякого рода окна и не нужные сообщения Импорта
        /// </summary>
        public void CheckAndCloseErrorWindowImport()
        {
            // ловим заголовок сообщения об ошибке Импорта
            IntPtr messageErrorForm = DllImportMethods.FindWindow("TMessageForm", "Import");

            if (messageErrorForm != IntPtr.Zero)
            {
                SetStatus("Закрыли сообщение " + messageErrorForm);
                CloseWindow(messageErrorForm);
            }

            //ловим заголовок диалога об ошибке
            IntPtr dialogErrorForm = DllImportMethods.FindWindow("#32770", "Import");

            if (dialogErrorForm != IntPtr.Zero)
            {
                SetStatus("Закрыли диалог об ошибке " + dialogErrorForm);
                CloseWindow(dialogErrorForm);
            }
        }
コード例 #5
0
        /// <summary>
        /// Закрытие окна по Handle
        /// </summary>
        /// <param name="handle">Handle закрываемого окна</param>
        private void CloseWindow(IntPtr handle)
        {
            const uint WM_CLOSE = 0x10;

            DllImportMethods.SendMessage(handle, WM_CLOSE, IntPtr.Zero, IntPtr.Zero);
        }