void CaptureWindowThread() { while (true) { //if (bytelist.Count == 0) //{ // autosleeptime -= 2; //} //else //{ // autosleeptime += 2; //} //用于控制每间隔n毫秒执行一次截图 if (CaptureTime.AddMilliseconds(Milliseconds) <= DateTime.Now) { CaptureTime = DateTime.Now; var gsc = new GdiScreenCapture(); Image img1 = gsc.CaptureWindowSBS(desktopwidth, desktopheight); var bimage = gsc.PhotoImageInsert(img1); bytelist.Add(bimage); img1.Dispose(); img1 = null; Thread.Sleep(autosleeptime); } //else //{ // Thread.Sleep(autosleeptime); //} } }
void Start() { //UnityEngine.UI.Image PlaneImage = GetComponent<UnityEngine.UI.Image>(); m = gameObject.GetComponent <Renderer>().material; Screen.fullScreen = false; //桌面赋值 sc = new GdiScreenCapture(); Image desktopImage = sc.CaptureWindowUV(0, 0); desktopwidth = desktopImage.Width; desktopheight = desktopImage.Height; orgindesktopwidth = desktopImage.Width; orgindesktopheight = desktopImage.Height; desktopImage.Dispose(); desktopImage = null; Debug.Log("Start"); //新建线程 ct1 = new Thread(CaptureWindowThread); ct1.Start(); ct2 = new Thread(CaptureWindowThread); ct2.Start(); ct3 = new Thread(CaptureWindowThread); ct3.Start(); }
void Start() { gameObject.AddComponent <MeshFilter>(); mesh = CreateArcSurface(g_threshold); this.GetComponent <MeshFilter>().mesh = mesh; m = gameObject.GetComponent <Renderer>().material; m.shader = Shader.Find("Sprites/Default"); Screen.fullScreen = false; //桌面赋值 sc = new GdiScreenCapture(); Image desktopImage = sc.CaptureWindowUV(0, 0); desktopwidth = desktopImage.Width; desktopheight = desktopImage.Height; desktopImage.Dispose(); desktopImage = null; //新建线程 ct1 = new Thread(CaptureWindowThread); ct1.Start(); //ct2 = new Thread(CaptureWindowThread); //ct2.Start(); //ct3 = new Thread(CaptureWindowThread); //ct3.Start(); }
void CaptureWindowThread() { while (true) { var gsc = new GdiScreenCapture(); Image img1 = gsc.CaptureWindowSBS(desktopwidth, desktopheight); var bimage = gsc.PhotoImageInsert(img1); bytelist.Add(bimage); img1.Dispose(); img1 = null; Thread.Sleep(20); } }