모니터에 특정 pixel에 색상을 확인하고 설정해 놓은 색이 나오면 색을 인식하여 클릭 이벤트가 동작하는 예제입니다. 알아야 하는 내용 1. 특정 pixel 에 좌표를 알아야 한다. 2. 특정 pixel 의 색상을 알아야 한다. 3. 마우스 click event 가 발생해야 한다. 4. 주기적으로 특정 좌표의 색을 확인할수 있어야 한다. 위의 기능을 하나씩 확인해 보도록 하겠습니다. 설치해야 하는 package 는 Pillow pyautogui 2가지 입니다. https://pyautogui.readthedocs.io/en/latest/ https://pillow.readthedocs.io/en/stable/installation.html 실행 소스는 아래와 같다. import pyautogui # 현재 스크린의 사이즈를 확인한다. screenWidth , screenHeight = pyautogui . size () print ( screenWidth , screenHeight ) # 현재 스크린을 저장한다. im = pyautogui . screenshot () # 특정 영을만 저장할수도 있다. #im = pyautogui.screenshot(region=(0,0, 300, 400)) # 현재 마우스의 좌표를 구한다. cmpos = pyautogui . position () # 현재 좌표의 RGB 값을 구한다. rgb = im . getpixel ( cmpos ) # 무슨 색인지 출력한다. print ( rgb ) # 마...
어제 윈도우 업데이트를 하였다. 그냥 늘 하던 거라. 그냥 업데이트 하였다. 그 결과 vscode 에서 wsl 환경으로 세팅한 개발환겨이 열리지 않는다. 이게 세팅하고 운영하기 편해서 그냥 사용했는데 이런 문제가 발생할줄 몰랐다. vscode 의 문제인지 아니면 내컴만 문제인지 모르겠다. docker 를 이용해서 구성하는 방법도 있지만 이게 더 간단한 방법이고 ( 나에게는) 쉬워서 사용했는데 솔루션을 변경할 필요가 있는것 같다. 아~~~ 아마도 업데이트로 인하여 VS code server 를 다시 설치해야 하는 이슈가 발생한 것 같다. 당연히 vscode 프로그램에서는 그냥 timeout issue 가 발생할 수 있을 것으로 예상된다. 왜 평상시 같은 경우 서버에서 code server 를 받는 일이 많지 않지만 윈도우 업데이트의 영향을 받을 경우 모든 WSL 환경의 vscode project 는 무조건 code server 를 다운로드 받아서 다시 설치해야 하는 이슈가 있기 때문에 해당 서버가 맛탱이가 갈거라 예상된다. 돈주는 회원부터 사탕을 드릴거고 무료사용자들은 돈주고 사용하는 회원처리한 후 줄서서 다운로드 받아야 정상적으로 vscode 가 동작할 것이라 예상된다. 위에 있는 내용은 terminal 에서 wsl 접근하여 프로젝트에 code . 을 실행한 화면이다. 5% 에서 그냥 멈춘다. code . 이 뭔지 알고 싶으면 아래 링크를 들어가 보시면 된다. https://docs.microsoft.com/ko-kr/windows/wsl/tutorials/wsl-vscode
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using uPLibrary.Networking.M2Mqtt; using uPLibrary.Networking.M2Mqtt.Messages; namespace MQTTTest { public partial class Form1 : Form { MqttClient client; public Form1() { InitializeComponent(); //client = new MqttClient("broker.hivemq.com"); client = new MqttClient("192.168.0.83"); byte code = client.Connect(Guid.NewGuid().ToString()); client.ProtocolVersion = MqttProtocolVersion.Version_3_1; ...
댓글
댓글 쓰기