/// <summary> /// 打开图片 /// </summary> /// <param name="datas"></param> /// <param name="mode">1: 数据流 2:本地文件 3:拍照文件</param> public FormCaptureScreen2() { InitializeComponent(); //截取掉下面的控制栏区域和任务栏 this.pictureBox1.Size = new System.Drawing.Size(screenWidth, SystemInformation.WorkingArea.Height - 80); this.Size = new System.Drawing.Size(screenWidth, SystemInformation.WorkingArea.Height - 80); this.Top = 0; this.Location = new Point(0, 0); this.StartPosition = System.Windows.Forms.FormStartPosition.Manual; //this.WindowState = FormWindowState.Maximized; this.TopMost = true; #if DEBUG this.TopMost = false;//Form3 ShowView #endif this.pictureBox1.Visible = false; this.pictureBox1.Visible = true; try { //m_bmp = ScreenCapture.captureScreen(0, 0); Bitmap fullScreen = ScreenCapture.captureScreen(0, 0); m_bmp = this.CaptureImage(fullScreen, 0, 0, screenWidth, SystemInformation.WorkingArea.Height - 80); m_base64 = Util.ImgToBase64String(m_bmp); imgHeight = m_bmp.Height; imgWidth = m_bmp.Width; Log.Info("imgHeight=" + imgHeight + " imgWidth=" + imgWidth); Log.Info("screenHeight=" + screenHeight + " screenWidth=" + screenWidth); //m_bmp = new Bitmap(m_bmp, screenWidth, screenHeight);//不能图片缩放,因为破坏了图片的质量 this.pictureBox1.Image = m_bmp; this.pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage; this.pictureBox1.Width = screenWidth; //this.pictureBox1.Height = screenHeight; this.pictureBox1.Height = SystemInformation.WorkingArea.Height - 80; //doUpload if (true) { string imgName = DateTime.Now.ToString("yyyyMMdd") + "-" + Global.getSchoolID() + "-" + Global.getClassID() + "-" + DateTime.Now.ToString("HHmmss") + ".jpg"; string imgDir = Application.StartupPath + "\\" + DateTime.Now.ToString("yyyyMMdd"); if (!Directory.Exists(imgDir)) { Directory.CreateDirectory(imgDir); } string imgPath = imgDir + "\\" + imgName; m_bmp.Save(imgPath); Common.uploadPicture(imgPath); //Common.uploadCameraEvent(imgName);//相机拍照 } } catch (Exception ex) { Log.Error(ex.Message); } ////(图片宽>屏幕宽 && 图片高>屏幕高) //if ((pictureBox1.Width > Screen.PrimaryScreen.WorkingArea.Width && pictureBox1.Height > Screen.PrimaryScreen.WorkingArea.Height) || // (pictureBox1.Width > Screen.PrimaryScreen.WorkingArea.Width && pictureBox1.Height < Screen.PrimaryScreen.WorkingArea.Height)) //{ // MakeThumbnail(pictureBox1.Width, pictureBox1.Height, "W"); //} ////(图片宽<屏幕宽 && 图片高>屏幕高) 高度压缩 //else if (pictureBox1.Width < Screen.PrimaryScreen.WorkingArea.Width && pictureBox1.Height > Screen.PrimaryScreen.WorkingArea.Height) //{ // MakeThumbnail(pictureBox1.Width, pictureBox1.Height, "H"); //} //else //{ // pictureBox1.SizeMode = PictureBoxSizeMode.AutoSize; // this.pictureBox1.Left = Screen.PrimaryScreen.WorkingArea.Width / 2 - pictureBox1.Width / 2; // this.pictureBox1.Top = Screen.PrimaryScreen.WorkingArea.Height / 2 - pictureBox1.Height / 2; //} }
public static int uploadOfflineData(LessonEvents le) { string _lessonid = "0"; int _classid = le.classid; int _courseid = le.courseid; int _teacherid = le.teacherid; int nRet = 0; foreach (LessonEvent ev in le.eventlist) { string tm = ev.tm; string url = ev.request; if (tm == null) { tm = url.Substring(url.IndexOf("&t=") + 3, 14); } string data = ev.filepath + "&offline=1"; string src = tm + "_" + Global.getSchoolID() + "_" + _classid + "_" + KEY; string sign = GetMD5(src); string keyTemp = sign.Substring(4, 16); if (_lessonid != "0") { data = data.Replace("lessonid=0", "lessonid=" + _lessonid); } if (_lessonid == "0" && ev.type != LessonEventType.ClassOn) { continue; } if (ev.type == LessonEventType.UploadFile && _lessonid != "0") { string ret = HTTPReq.UploadFile(url, ev.filepath); } else { string dataEncrypt = AesEncrypt(data, keyTemp);//跟java的substring不一样 Log.Info("OfflineUpload. url=" + url + ", " + data); string retCrypt = HTTPReq.HttpPost(url, dataEncrypt); string ret = AesDecrypt(retCrypt, keyTemp); if (ev.type == LessonEventType.ClassOn && ret.Length > 0) { JObject jo = (JObject)JsonConvert.DeserializeObject(ret); _lessonid = jo["data"]["lessonid"].ToString(); string _index = jo["data"]["index"].ToString(); string _coursename = jo["data"]["coursename"].ToString(); nRet++; } else { if (ret.Length > 0) { nRet++; } if (ev.type == LessonEventType.ClassOff) { } else { } } } } return(nRet); }
public void loadSchoolConfig() { textBox_schoolid.Text = Global.getSchoolID() + ""; textBox_schoolname.Text = Global.getSchoolname(); }
public Form1() { InitializeComponent(); Log.Info("F1_1 set notifyIcon"); //show in taskbar { this.ShowInTaskbar = false; this.notifyIcon1.Visible = true;//在通知区显示Form的Icon this.WindowState = FormWindowState.Minimized; } //if (Global.isWithCamera()) //{ // this.toolStripMenuItem5.Visible = true; //} //else //{ // this.toolStripMenuItem5.Visible = false; //} FileInfo fi = new FileInfo(Application.StartupPath + "\\如e小助手.exe"); string lasttime = fi.LastWriteTime.ToString("yyyyMMdd HHmmss"); string MMdd = fi.LastWriteTime.ToString("MMdd"); string version = GetAssembly(typeof(System.Reflection.AssemblyVersionAttribute)); string[] szV = version.Split('.'); string version_1 = szV[0] + "." + szV[1] + "." + szV[2] + "." + MMdd; this.Text = "如e小助手 v" + version; this.labelAbout.Text = "关于 如e小助手(v" + version_1 + ")"; //设置自启动 Log.Info("F1_2 set autorun"); SetAutoRun(Global.getAutorun()); //清除历史文件夹 Log.Info("F1_3 remove historyDir"); RemoveHistoryDir(); //获取学校和班级的参数 int schoolid = Global.getSchoolID(); int classid = Global.getClassID(); Log.Info("F1_4 get parameters: schoolid=" + schoolid + ", classid=" + classid); string assistanturl = Global.url_assistant; Log.Info("F1_5 get class"); Classes c = m_db.getClassById(classid); if (c != null) { Global.setClassID(c.id); Global.setClassname(c.name); Global.setGrade(c.grade); } //更新班级的接收机ID Thread th = new Thread(delegate() { Log.Info("F1_6 setPCIP/syncHDId"); Thread.Sleep(3000); setHD_PcIp(); string hdid = Common.getHDID(); if (hdid.Length > 0) { Common.uploadHDBind(); } }); th.Start(); //上传历史数据 Thread thOfflineProcess = new Thread(delegate() { Log.Info("F1_7 syncOfflineData"); OfflineProcessor.UploadHistoryData(); }); thOfflineProcess.Start(); }
public bool restart() { Log.Info("FormHandon.clear"); RESULT = ""; for (int i = 0; i < clickstate.Count; i++) { PictureBox lb = (PictureBox)al[i]; PictureBox text = (PictureBox)alText[i]; LabelStateEventClear(lb, text, i + 1); clickstate[i] = 0; } stuPushCount.Clear(); _callnamsStr = ""; _rewardStr = ""; _criticizeStr = ""; _querytimes = 0; tm_create = DateTime.Now; _xitiId = Global.getSchoolID() + "-" + _classid + "-" + DateTime.Now.ToString("yyyyMMddHHmmss"); //TODO: 截屏上传 if ((EService.myppt != null && EService.myppt.isOpen()) || EService.bShowPicture) { _xitiId = "H_" + _xitiId; Image img = ScreenCapture.captureScreen(0, 0); string imgName = _xitiId + ".jpg"; string imgDir = Application.StartupPath + "\\" + DateTime.Now.ToString("yyyyMMdd"); if (!Directory.Exists(imgDir)) { Directory.CreateDirectory(imgDir); } string imgPath = imgDir + "\\" + imgName; img.Save(imgPath); Common.uploadPicture(imgPath); } Log.Info("FormHandon _xitiId=" + _xitiId + ", SetPanel now..."); pictureBox2.Visible = false; pictureBox3.Visible = false; pictureBox4.Visible = false; StartPosition = FormStartPosition.Manual; SetDesktopLocation(0, screenHeight - this.Height); try { this.TopMost = true; this.Hide(); Global.panelshow = 1; this.BringToFront(); } catch (Exception e) { Log.Error("Handon.clear exception."); return(false); } IntelligentRecommend.InitQuestion(); //Common.ClearHandon(); t = new System.Timers.Timer(100); t.Elapsed += new System.Timers.ElapsedEventHandler(Theout); t.Enabled = true; t.AutoReset = true; return(true); }
private static void Update() { string versionC = Global.getVersion(); string versionS = ""; string url = "http://" + Global.HOST + "/user.do?action=update&schoolid=" + Global.getSchoolID() + "&classid=" + Global.getClassID() + "&version=" + Global.getVersion(); //string json = HTTPReq.doGet(url,1000); string json = HTTPReq.HttpGet(url); if (json.Length == 0) { return; } Log.Info("Update, ret=" + json); try { UpdateInfo resp = JsonOper.DeserializeJsonToObject <UpdateInfo>(json.Replace("(", "").Replace(")", "")); if (resp == null) { return; } foreach (UpdateItem item in resp.updateinfolist) { Log.Info(item.toJson()); if (item.type == 1)// { versionS = item.version; Log.Info("versionC=" + versionC + ", versionS=" + versionS); string[] szVerS = versionS.Split('.'); string[] szVerC = versionC.Split('.'); string zipurl = item.path; bool bUpdate = false; for (int i = 0; i < szVerS.Length; i++) { int nS = Util.toInt(szVerS[i]); int nC = Util.toInt(szVerC[i]); if (nS > nC) { bUpdate = true; break; } else if (nS < nC) { return; } else { continue; } } if (bUpdate) { string update = Application.StartupPath + "\\RueUpdate.exe"; string update2 = Application.StartupPath + "\\RueUpdate2.exe"; Log.Info(update); Log.Info(update2); if (File.Exists(update2)) { Log.Info("copy..."); KillProcess("RueUpdate.exe"); try { File.Delete(update); File.Copy(update2, update, true); Log.Info("delete update2..."); File.Delete(update2); } catch (Exception e) { Log.Info("File.copy(update2,update) and File.Delete exception. " + e.Message); } } else if (File.Exists(update)) { string param = versionS + " " + zipurl; Log.Info("run update.exe now..." + param); Process.Start(update, param); } } } else if (item.type == 2) { Global.setRyktUpdateInfo(item); } } } catch (Exception e) { Log.Error(e.Message); } }
public FormHandon(string numberstr) { Global.panelshow = 1; Log.Info("FormHandon.create, numberstr=" + numberstr); al = new ArrayList(); alText = new ArrayList(); clickstate = new ArrayList(); _classid = Global.getClassID() + ""; _lessonid = Global.getLessonID() + ""; Log.Info("debug. FormHandon._classid=" + _classid + ", _lessonid=" + _lessonid); _xitiId = Global.getSchoolID() + "-" + _classid + "-" + DateTime.Now.ToString("yyyyMMddHHmmss"); //TODO: 截屏上传 if ((EService.myppt != null && EService.myppt.isOpen()) || EService.bShowPicture) { _xitiId = "H_" + _xitiId; Image img = ScreenCapture.captureScreen(0, 0); string imgName = _xitiId + ".jpg"; string imgDir = Application.StartupPath + "\\" + DateTime.Now.ToString("yyyyMMdd"); if (!Directory.Exists(imgDir)) { Directory.CreateDirectory(imgDir); } string imgPath = imgDir + "\\" + imgName; img.Save(imgPath); Common.uploadPicture(imgPath); } InitializeComponent(); Log.Info("FormHandon _xitiId=" + _xitiId + ", SetPanel now..."); int panelH = SetPanel(numberstr); Log.Info("FormHandon _xitiId=" + _xitiId + ", SetPanel over..."); this.Text = "提问[" + _xitiId + "]"; pictureBox2.Visible = false; pictureBox3.Visible = false; pictureBox4.Visible = false; this.Height = panelH; this.Width = screenWidth; StartPosition = FormStartPosition.Manual; SetDesktopLocation(0, screenHeight - this.Height); this.TopMost = true; #if DEBUG this.TopMost = false;//PPTPractise #endif //this.WindowState = FormWindowState.Maximized; this.Hide(); this.Show(); this.BringToFront(); Log.Info("FormHandon Timer_start(Theout) now..."); //Common.ClearHandon(); t = new System.Timers.Timer(200); t.Elapsed += new System.Timers.ElapsedEventHandler(Theout); t.Enabled = true; t.AutoReset = true; IntelligentRecommend.InitQuestion(); }
public Form1() { //Form_xiti1 ff = new Form_xiti1(); //ff.Show(); fController = new FormController(); fController.Display(false); //查看html文件夹是否存在,不存在就解压 string dir = Application.StartupPath + "\\html"; //if (!Directory.Exists(dir)) //{ // Common.UnZip(Application.StartupPath + @"\html.zip", Application.StartupPath + @"\html", ""); //} InitializeComponent(); //启动初始化接收机 answer_card = new AnswerCard(); //answer_card.Message(); string date = DateTime.Now.ToString("yyyyMMdd"); int schoolID = Global.getSchoolID(); Global.g_roommsg = Common.getClassroomCourseTable(schoolID, 101, "20170905"); //show in taskbar { this.ShowInTaskbar = false; this.notifyIcon1.Visible = true;//在通知区显示Form的Icon this.WindowState = FormWindowState.Minimized; } //if (Global.isWithCamera()) //{ // this.toolStripMenuItem5.Visible = true; //} //else //{ // this.toolStripMenuItem5.Visible = false; //} FileInfo fi = new FileInfo(Application.StartupPath + "\\互动课堂.exe"); string lasttime = fi.LastWriteTime.ToString("yyyyMMdd HHmmss"); string MMdd = fi.LastWriteTime.ToString("MMdd"); string version = GetAssembly(typeof(System.Reflection.AssemblyVersionAttribute)); string[] szV = version.Split('.'); string version_1 = szV[0] + "." + szV[1] + "." + szV[2] + "." + MMdd; this.Text = "互动课堂 v" + version; this.labelAbout.Text = "关于 互动课堂(v" + version_1 + ")"; //设置自启动 Log.Info("F1_2 set autorun"); SetAutoRun(Global.getAutorun()); //清除历史文件夹 Log.Info("F1_3 remove historyDir"); RemoveHistoryDir(); //获取学校和班级的参数 int schoolid = Global.getSchoolID(); int classid = Global.getClassID(); Log.Info("F1_4 get parameters: schoolid=" + schoolid + ", classid=" + classid); string assistanturl = Global.url_assistant; Log.Info("F1_5 get class"); Classes c = m_db.getClassById(classid); if (c != null) { Global.setClassID(c.id); Global.setClassname(c.name); Global.setGrade(c.grade); } //更新班级的接收机ID Thread th = new Thread(delegate() { Log.Info("F1_6 setPCIP/syncHDId"); Thread.Sleep(3000); setHD_PcIp(); string hdid = Common.getHDID(); if (hdid.Length > 0) { Common.uploadHDBind(); } }); th.Start(); //上传历史数据 Thread thOfflineProcess = new Thread(delegate() { Log.Info("F1_7 syncOfflineData"); OfflineProcessor.UploadHistoryData(); }); thOfflineProcess.Start(); while (Global.g_TeacherArray == null) { Thread.Sleep(50); } fNotifyToStart = new FormNotifyToStart(); fNotifyToStart.Show(); if (!Directory.Exists(dir)) { Common.UnZip(Application.StartupPath + @"\html.zip", Application.StartupPath + @"\html", ""); } else { System.IO.Directory.Delete(Application.StartupPath + @"\html", true); Common.UnZip(Application.StartupPath + @"\html.zip", Application.StartupPath + @"\html", ""); } }
/// <summary> /// 打开图片 /// </summary> /// <param name="datas"></param> /// <param name="mode">1: 数据流 2:本地文件 3:拍照文件 4: 截屏文件</param> public Form3(string datas, int mode, int firsttime) { InitializeComponent(); this.mode = mode; //this.pictureBox1.Size = new System.Drawing.Size(screenWidth, screenHeight); this.WindowState = FormWindowState.Maximized; this.TopMost = true; #if DEBUG this.TopMost = false;//Form3 ShowView #endif this.pictureBox1.Visible = false; this.pictureBox1.Visible = true; try { Bitmap bmp = null; if (mode == 1) { m_base64 = datas; m_bmp = Base64StringToImage(datas); } else if (mode == 2) { filepath = datas; string filetype = Path.GetExtension(filepath).ToLower(); if (filetype == ".png") { string filepath2 = Path.GetDirectoryName(filepath) + "\\" + Path.GetFileNameWithoutExtension(filepath) + ".jpg"; try { File.Delete(filepath2); System.Drawing.Bitmap b = (Bitmap)Image.FromFile(filepath); b.Save(filepath2, System.Drawing.Imaging.ImageFormat.Jpeg); } catch (Exception e) { Log.Error(e.Message); } filepath = filepath2; } Log.Info("showPicture2 :" + filepath); m_base64 = Util.ImgToBase64String(filepath); m_bmp = (Bitmap)Image.FromFile(filepath); imgHeight = m_bmp.Height; imgWidth = m_bmp.Width; Log.Info("imgHeight=" + imgHeight + " imgWidth=" + imgWidth); Log.Info("screenHeight=" + screenHeight + " screenWidth=" + screenWidth); //m_bmp = new Bitmap(m_bmp, screenWidth, screenHeight);//不能图片缩放,因为破坏了图片的质量 } else if (mode == 3) { filepath = Application.StartupPath + "\\" + datas; string filetype = Path.GetExtension(filepath).ToLower(); if (filetype == ".png") { string filepath2 = Path.GetDirectoryName(filepath) + "\\" + Path.GetFileNameWithoutExtension(filepath) + ".jpg"; System.Drawing.Bitmap b = (Bitmap)Image.FromFile(filepath); b.Save(filepath2, System.Drawing.Imaging.ImageFormat.Jpeg); filepath = filepath2; } Log.Info("showPicture3 :" + filepath); m_base64 = Util.ImgToBase64String(filepath); m_bmp = (Bitmap)Image.FromFile(filepath); } else if (mode == 4) { m_bmp = ScreenCapture.captureScreen(0, 0); m_base64 = Util.ImgToBase64String(m_bmp); } imgHeight = m_bmp.Height; imgWidth = m_bmp.Width; Log.Info("imgHeight=" + imgHeight + " imgWidth=" + imgWidth); Log.Info("screenHeight=" + screenHeight + " screenWidth=" + screenWidth); //m_bmp = new Bitmap(m_bmp, screenWidth, screenHeight);//不能图片缩放,因为破坏了图片的质量 this.pictureBox1.Image = m_bmp; this.pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage; this.pictureBox1.Width = screenWidth; this.pictureBox1.Height = screenHeight; //doUpload if (mode == 1 && firsttime == 1) { string imgName = DateTime.Now.ToString("yyyyMMdd") + "-" + Global.getSchoolID() + "-" + Global.getClassID() + "-" + DateTime.Now.ToString("HHmmss") + ".jpg"; string imgDir = Application.StartupPath + "\\" + DateTime.Now.ToString("yyyyMMdd"); if (!Directory.Exists(imgDir)) { Directory.CreateDirectory(imgDir); } string imgPath = imgDir + "\\" + imgName; m_bmp.Save(imgPath); Common.uploadPicture(imgPath); Common.uploadCameraEvent(imgName);//相机拍照 } } catch (Exception ex) { Log.Error(ex.Message); } ////(图片宽>屏幕宽 && 图片高>屏幕高) //if ((pictureBox1.Width > Screen.PrimaryScreen.WorkingArea.Width && pictureBox1.Height > Screen.PrimaryScreen.WorkingArea.Height) || // (pictureBox1.Width > Screen.PrimaryScreen.WorkingArea.Width && pictureBox1.Height < Screen.PrimaryScreen.WorkingArea.Height)) //{ // MakeThumbnail(pictureBox1.Width, pictureBox1.Height, "W"); //} ////(图片宽<屏幕宽 && 图片高>屏幕高) 高度压缩 //else if (pictureBox1.Width < Screen.PrimaryScreen.WorkingArea.Width && pictureBox1.Height > Screen.PrimaryScreen.WorkingArea.Height) //{ // MakeThumbnail(pictureBox1.Width, pictureBox1.Height, "H"); //} //else //{ // pictureBox1.SizeMode = PictureBoxSizeMode.AutoSize; // this.pictureBox1.Left = Screen.PrimaryScreen.WorkingArea.Width / 2 - pictureBox1.Width / 2; // this.pictureBox1.Top = Screen.PrimaryScreen.WorkingArea.Height / 2 - pictureBox1.Height / 2; //} }
public FormPPTXiTi(string numberstr, int m) { mode = m; al = new ArrayList(); alText = new ArrayList(); clickstate = new ArrayList(); //创建习题ID _xitiId = Global.getSchoolID() + "-" + Global.getClassID() + "-" + DateTime.Now.ToString("yyyyMMddHHmmss"); //TODO: 截屏上传 if (m == 1) { _xitiId = "T_" + _xitiId; Image img = ScreenCapture.captureScreen(0, 0); string imgName = _xitiId + ".jpg"; string imgDir = Application.StartupPath + "\\" + DateTime.Now.ToString("yyyyMMdd"); if (!Directory.Exists(imgDir)) { Directory.CreateDirectory(imgDir); } string imgPath = imgDir + "\\" + imgName; img.Save(imgPath); Common.uploadPicture(imgPath); } InitializeComponent(); int panelH = SetPanel(numberstr); this.Text = "抢答"; if (mode == 1)//PPT 抢答 { this.Height = panelH; this.Width = screenWidth; StartPosition = FormStartPosition.Manual; SetDesktopLocation(0, screenHeight - this.Height); label1.Visible = false; label3.Visible = false; lbltime.Visible = false; } else if (mode == 0) { this.WindowState = FormWindowState.Maximized; pictureBox1.Visible = true; //-------- int posY_timer = (screenHeight - lbltime.Height) / 2;//居中 label1.Location = new Point((screenWidth - label1.Width) / 2, posY_timer - lbltime.Height); lbltime.Location = new Point((screenWidth - lbltime.Width) / 2, posY_timer); label3.Location = new Point((screenWidth + lbltime.Width + label3.Width) / 2, posY_timer + lbltime.Height - label3.Height); //todo tlbl = new System.Timers.Timer(1000); tlbl.Elapsed += new System.Timers.ElapsedEventHandler(lblstart); tlbl.Enabled = true; tlbl.AutoReset = true; } this.TopMost = true; #if DEBUG this.TopMost = false;//PPTXiti,zzz #endif //this.WindowState = FormWindowState.Maximized; this.Hide(); this.Show(); this.BringToFront(); t = new System.Timers.Timer(200); t.Elapsed += new System.Timers.ElapsedEventHandler(Theout); t.Enabled = true; t.AutoReset = true; pictureBox2.Visible = false; pictureBox3.Visible = false; pictureBox4.Visible = false; //pictureBox3.Location = new System.Drawing.Point(screenWidth - 60, 0); //pictureBox4.Location = new System.Drawing.Point(screenWidth - 30, 0); }
public string getInfor() { string data = Global.getSchoolID() + "," + Global.getTeacherID() + "," + Global.getClassID() + "," + Global.getCourseID() + "," + Global.getLessonID(); return(data); }