public static byte[] HandlerFile(string file) { // 在此处放置用户代码以初始化页面 MsgObj = new DBstep.iMsgServer2000(); MsgObj.MsgVariant(System.Web.HttpContext.Current.Request.BinaryRead(System.Web.HttpContext.Current.Request.ContentLength)); if (MsgObj.GetMsgByName("DBSTEP").Equals("DBSTEP")) //如果是合法的信息包 { mOption = MsgObj.GetMsgByName("OPTION"); //取得操作信息 mUserName = MsgObj.GetMsgByName("USERNAME"); //取得操作用户名称 if (mOption.Equals("LOADFILE")) //下面的代码为打开服务器数据库里的文件 { mRecordID = MsgObj.GetMsgByName("RECORDID"); //取得文档编号 mFileType = MsgObj.GetMsgByName("FILETYPE"); //取得文档类型 MsgObj.MsgTextClear(); //清除文本信息 if (MsgObj.MsgFileLoad(file)) //调入文档 { //MsgObj.MsgFileBody(mFileBody); //将文件信息打包,mFileBody为从数据库中读取,类型byte[] MsgObj.SetMsgByName("STATUS", "打开全文批注成功!"); //设置状态信息 MsgObj.MsgError(""); //清除错误信息 } else { MsgObj.MsgError("打开全文批注失败!"); //设置错误信息 } } else if (mOption.Equals("SAVEFILE")) //下面的代码为保存文件在服务器的数据库里 { mRecordID = MsgObj.GetMsgByName("RECORDID"); //取得文档编号 mFileType = MsgObj.GetMsgByName("FILETYPE"); //取得文档类型 //mMyDefine1=MsgObj.GetMsgByName("MyDefine1"); //取得客户端传递变量值 MyDefine1="自定义变量值1" //mFileBody=MsgObj.MsgFileBody(); //取得文档内容 mFileBody可以保存到数据库中,类型byte[] MsgObj.MsgTextClear(); //清除文本信息 if (MsgObj.MsgFileSave(file)) //保存文档内容 { MsgObj.SetMsgByName("STATUS", "保存全文批注成功!"); //设置状态信息 MsgObj.MsgError(""); //清除错误信息 } else { MsgObj.MsgError("保存全文批注失败!"); //设置错误信息 } MsgObj.MsgFileClear(); } } else { MsgObj.MsgError("客户端发送数据包错误!"); MsgObj.MsgTextClear(); MsgObj.MsgFileClear(); } return(MsgObj.MsgVariant()); }
public void LoadSighture(HttpContext context) { try { MsgObj = new DBstep.iMsgServer2000(); mFilePath = Utility.RootPath; //Server.MapPath("."); MsgObj.MsgVariant(context.Request.BinaryRead(context.Request.ContentLength)); //读取客户端发送来的数据包 if (MsgObj.GetMsgByName("DBSTEP").Equals("DBSTEP")) //检测客户端传递的数据包格式 { mOption = MsgObj.GetMsgByName("OPTION"); //取得操作类型 if (mOption.Equals("SIGNATRUELIST")) //下面的代码为创建印章列表 { MsgObj.MsgTextClear(); //清除SetMsgByName设置的值 if (SignatureList()) //调入印章列表 { MsgObj.SetMsgByName("SIGNATRUELIST", mMarkList); //设置印章列表字符串 MsgObj.MsgError(""); //清除错误信息 } else { MsgObj.MsgError("创建印章列表失败!"); //设置错误信息 } } if (mOption.Equals("SIGNATRUEIMAGE")) //下面的代码为调入印章图案 { mMarkName = MsgObj.GetMsgByName("IMAGENAME"); //取得印章名称 mUserName = MsgObj.GetMsgByName("USERNAME"); //取得用户名 mPassword = MsgObj.GetMsgByName("PASSWORD"); //取得印章密码 mFileType = ".jpg"; //默认为.jpg类型 MsgObj.MsgTextClear(); //清除SetMsgByName设置的值 if (SignatureImage(mMarkName, mPassword)) //调入印章 { MsgObj.SetMsgByName("IMAGETYPE", mFileType); //设置图片类型 MsgObj.MsgFileBody(mFileBody); //将签章数据信息打包 MsgObj.SetMsgByName("STATUS", "打开成功!"); //设置状态信息 MsgObj.MsgError(""); //清除错误信息 } else { MsgObj.MsgError("签名或密码错误!"); //设置错误信息 } } if (mOption.Equals("SAVESIGNATURE")) //下面的代码为保存印章数据 { mRecordID = MsgObj.GetMsgByName("RECORDID"); //取得文档编号 mFieldName = MsgObj.GetMsgByName("FIELDNAME"); //取得签章字段名称 mFieldValue = MsgObj.GetMsgByName("FIELDVALUE"); //取得签章数据内容 mUserName = MsgObj.GetMsgByName("USERNAME"); //取得用户名称 if (mUserName != "") { //mDateTime = MsgObj.GetMsgByName("DATETIME"); //取得签章日期时间 //mHostName = Request.UserHostAddress; //取得客户端IP MsgObj.MsgTextClear(); //在数据库中查找是否生成过,若生成过则删除 if (mRecordID == "" || mRecordID == null) { MsgObj.MsgError("业务未生成,请重新生成"); //return; } string[] array = mFieldName.Split('/'); tableName = array[0]; columnsName = array[1]; string msg = SaveSighture(tableName, columnsName, mUserName); if (msg != "") { MsgObj.MsgError(msg); MsgObj.SetMsgByName("STATUS", "保存失败"); //设置状态信息 } } } if (mOption.Equals("LOADSIGNATURE")) //下面的代码为调入签章数据 { mRecordID = MsgObj.GetMsgByName("RECORDID"); //取得文档编号 mFieldName = MsgObj.GetMsgByName("FIELDNAME"); //取得签章字段名称 mUserName = MsgObj.GetMsgByName("USERNAME"); //取得用户名称 MsgObj.MsgTextClear(); //清除SetMsgByName设置的值 if (LoadSignature()) //调入签章数据信息 { MsgObj.SetMsgByName("FIELDVALUE", mFieldValue); //设置签章数据 MsgObj.SetMsgByName("STATUS", "调入成功!"); //设置状态信息 MsgObj.MsgError(""); //清除错误信息 } else { MsgObj.MsgError("调入标签失败!"); //设置错误信息 } } if (mOption.Equals("SAVEHISTORY")) //下面的代码为保存印章历史信息 { mRecordID = MsgObj.GetMsgByName("RECORDID"); //取得文档编号 mFieldName = MsgObj.GetMsgByName("FIELDNAME"); //取得签章字段名称 mMarkName = MsgObj.GetMsgByName("MARKNAME"); //取得签章名称 mUserName = MsgObj.GetMsgByName("USERNAME"); //取得用户名称 mDateTime = MsgObj.GetMsgByName("DATETIME"); //取得签章日期时间 mHostName = context.Request.UserHostAddress; //取得客户端IP mMarkGuid = MsgObj.GetMsgByName("MARKGUID"); //取得序列号 MsgObj.MsgTextClear(); if (SaveHistory()) //保存印章历史信息 { MsgObj.SetMsgByName("MARKNAME", mMarkName); //将签章名称列表打包 MsgObj.SetMsgByName("USERNAME", mUserName); //将用户名列表打包 MsgObj.SetMsgByName("DATETIME", mDateTime); //将签章日期列表打包 MsgObj.SetMsgByName("HOSTNAME", mHostName); //将客户端IP列表打包 MsgObj.SetMsgByName("MARKGUID", mMarkGuid); //将序列号列表打包 MsgObj.SetMsgByName("STATUS", "保存印章日志成功!");//设置状态信息 MsgObj.MsgError(""); //清除错误信息 } else { MsgObj.MsgError("保存印章日志失败!"); //设置错误信息 } } if (mOption.Equals("SHOWHISTORY")) //下面的代码为打开签章历史信息 { mRecordID = MsgObj.GetMsgByName("RECORDID"); //取得文档编号 mFieldName = MsgObj.GetMsgByName("FIELDNAME"); //取得签章字段名称 mUserName = MsgObj.GetMsgByName("USERNAME"); //取得用户名 MsgObj.MsgTextClear(); //清除SetMsgByName设置的值 if (ShowHistory()) //调入印章历史信息 { MsgObj.SetMsgByName("MARKNAME", mMarkName); //将签章名称列表打包 MsgObj.SetMsgByName("USERNAME", mUserName); //将用户名列表打包 MsgObj.SetMsgByName("DATETIME", mDateTime); //将签章日期列表打包 MsgObj.SetMsgByName("HOSTNAME", mHostName); //将客户端IP列表打包 MsgObj.SetMsgByName("MARKGUID", mMarkGuid); //将序列号列表打包 MsgObj.SetMsgByName("STATUS", "调入印章日志成功"); //设置状态信息 MsgObj.MsgError(""); //清除错误信息 } else { MsgObj.SetMsgByName("STATUS", "调入印章日志失败"); //设置状态信息 MsgObj.MsgError("调入印章日志失败"); //设置错误信息 } } if (mOption.Equals("SENDMESSAGE")) { mCommand = MsgObj.GetMsgByName("COMMAND"); mInfo = MsgObj.GetMsgByName("TESTINFO"); MsgObj.MsgTextClear(); MsgObj.MsgFileClear(); if (mCommand.Equals("SELFINFO")) { mInfo = "服务器端收到客户端传来的信息:“" + mInfo + "”\r\n"; //组合返回给客户端的信息 mInfo = mInfo + "服务器端发回当前服务器时间:" + DateTime.Now; MsgObj.SetMsgByName("RETURNINFO", mInfo); //将返回的信息设置到信息包中 } } } else { MsgObj.MsgError("客户端发送数据包错误!"); MsgObj.MsgTextClear(); MsgObj.MsgFileClear(); } context.Response.BinaryWrite(MsgObj.MsgVariant()); } catch (Exception ex) { ComBase.Logger(ex); throw (new Exception("获取数据失败!", ex)); } }
protected void Page_Load(object sender, System.EventArgs e) { // 在此处放置用户代码以初始化页面 MsgObj = new DBstep.iMsgServer2000(); mFilePath = Server.MapPath("."); MsgObj.MsgVariant(Request.BinaryRead(Request.ContentLength)); if (MsgObj.GetMsgByName("DBSTEP").Equals("DBSTEP")) //如果是合法的信息包 { mOption = MsgObj.GetMsgByName("OPTION"); //取得操作信息 mUserName = MsgObj.GetMsgByName("USERNAME"); //取得操作用户名称 if (mOption.Equals("LOADFILE")) //下面的代码为打开服务器数据库里的文件 { mRecordID = MsgObj.GetMsgByName("RECORDID"); //取得文档编号 mFileType = MsgObj.GetMsgByName("FILETYPE"); //取得文档类型 MsgObj.MsgTextClear(); //清除文本信息 mFilePath = mFilePath + "/Document/" + mRecordID + mFileType; //全文批注文件的完整路径 if (MsgObj.MsgFileLoad(mFilePath)) //调入文档 { //MsgObj.MsgFileBody(mFileBody); //将文件信息打包,mFileBody为从数据库中读取,类型byte[] MsgObj.SetMsgByName("STATUS", "打开全文批注成功!"); //设置状态信息 MsgObj.MsgError(""); //清除错误信息 } else { MsgObj.MsgError("打开全文批注失败!"); //设置错误信息 } } else if (mOption.Equals("SAVEFILE")) //下面的代码为保存文件在服务器的数据库里 { mRecordID = MsgObj.GetMsgByName("RECORDID"); //取得文档编号 mFileType = MsgObj.GetMsgByName("FILETYPE"); //取得文档类型 //mMyDefine1=MsgObj.GetMsgByName("MyDefine1"); //取得客户端传递变量值 MyDefine1="自定义变量值1" //mFileBody=MsgObj.MsgFileBody(); //取得文档内容 mFileBody可以保存到数据库中,类型byte[] MsgObj.MsgTextClear(); //清除文本信息 mFilePath = mFilePath + "/Document/" + mRecordID + mFileType; //全文批注文件的完整路径 if (MsgObj.MsgFileSave(mFilePath)) //保存文档内容 { MsgObj.SetMsgByName("STATUS", "保存全文批注成功!"); //设置状态信息 MsgObj.MsgError(""); //清除错误信息 } else { MsgObj.MsgError("保存全文批注失败!"); //设置错误信息 } MsgObj.MsgFileClear(); } } else { MsgObj.MsgError("客户端发送数据包错误!"); MsgObj.MsgTextClear(); MsgObj.MsgFileClear(); } byte[] arr = MsgObj.MsgVariant(); MsgObj = null; Response.BinaryWrite(arr); }
protected void Page_Load(object sender, System.EventArgs e) { singleProjectID = DNTRequest.GetQueryString("singleProjectID"); pdfFileName = DNTRequest.GetQueryString("pdfFileName"); // 在此处放置用户代码以初始化页面 MsgObj = new DBstep.iMsgServer2000(); //mFilePath = Path.Combine(mFilePath, "Document"); MsgObj.MsgVariant(Request.BinaryRead(Request.ContentLength)); if (MsgObj.GetMsgByName("DBSTEP").Equals("DBSTEP")) //如果是合法的信息包 { mOption = MsgObj.GetMsgByName("OPTION"); mRecordID = MsgObj.GetMsgByName("RECORDID"); //取得文档编号 mFilePath = GetFilePath(mRecordID); //取得操作信息 //string tmpFileName = Path.GetFileNameWithoutExtension(mFileName) + ".tmp"; if (mOption.Equals("LOADFILE")) //下面的代码为打开服务器数据库里的文件 { mRecordID = MsgObj.GetMsgByName("RECORDID"); //取得文档编号 //mFilePath = GetFilePath(mRecordID, out mFileName); if (System.IO.File.Exists(mFilePath)) { //tmpFileName = Guid.NewGuid().ToString() + Path.GetExtension(mFileName); //if (!System.IO.File.Exists(mFilePath + "\\" + tmpFileName)) // System.IO.File.Copy(mFilePath + "\\" + mFileName, mFilePath + "\\" + tmpFileName); //清除文本信息 MsgObj.MsgTextClear(); //清除文本信息 if (MsgObj.MsgFileLoad(mFilePath)) //读取临时文件 { MsgObj.SetMsgByName("STATUS", "打开成功!."); //设置状态信息 MsgObj.MsgError(string.Empty); MsgObj.MsgTextClear(); //清除错误信息 } else { MsgObj.MsgError("打开失败!"); //设置错误信息 } } else { MsgObj.MsgError("打开失败!"); //设置错误信息 } } else if (mOption.Equals("SAVEFILE")) //下面的代码为保存文件在服务器的数据库里 { MsgObj.MsgTextClear(); //清除文本信息 if (MsgObj.MsgFileSave(mFilePath)) //保存文档内容到文件夹中 { MsgObj.SetMsgByName("STATUS", "保存成功!"); //设置状态信息 MsgObj.MsgError(""); //清除错误信息 MsgObj.MsgFileClear(); } else { //MsgObj.MsgError("保存失败!"); //设置错误信息 MsgObj.MsgError("Error:packet message"); MsgObj.MsgTextClear(); MsgObj.MsgFileClear(); } } } else { MsgObj.MsgError("Error:packet message"); MsgObj.MsgTextClear(); MsgObj.MsgFileClear(); } MsgObj.Send(Response); //Response.BinaryWrite(MsgObj.MsgVariant()); }