Exemplo n.º 1
0
        public static bool Enter(string login, string pass)
        {
            IntPtr hLoginWnd;

            hLoginWnd = WinowsFind.FindWindow("#32770", "Идентификация пользователя");

            if (hLoginWnd == IntPtr.Zero)
            {
                hLoginWnd = WinowsFind.FindWindow("#32770", "User identification");
            }

            if (hLoginWnd == IntPtr.Zero)
            {
                return(false);
            }

            if (hLoginWnd != IntPtr.Zero)
            {
                IntPtr nBtnOk = FindWindowByIndex(hLoginWnd, 1, "Button");
                IntPtr hLogin = FindWindowByIndex(hLoginWnd, 1, "Edit");
                IntPtr nPassw = FindWindowByIndex(hLoginWnd, 2, "Edit");

                setWindowText(hLogin, login);
                setWindowText(nPassw, pass);
                WinowsFind.SetFocus(nBtnOk);
                WinowsFind.PostMessage(nBtnOk, BM_CLICK, new IntPtr(0), new IntPtr(0));
            }

            return(true);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Отправить текст в окно с данными пользователя
        /// </summary>
        /// <param name="hWnd"></param>
        /// <param name="text"></param>
        private static void setWindowText(IntPtr hWnd, string text)
        {
            try
            {
                WinowsFind.SetFocus(hWnd);
                WinowsFind.SendMessage(hWnd, WM_SETTEXT, IntPtr.Zero, null);

                foreach (char c in text)
                {
                    Thread.Sleep(50);
                    IntPtr val = new IntPtr((Int32)c);
                    WinowsFind.PostMessage(hWnd, WM_CHAR, val, new IntPtr(0));
                }
            }
            catch (Exception)
            {
                throw;
            }
        }