- 博客(95)
- 收藏
- 关注
原创 2010-02-20 一些杂的知识
(一)开发Web程序需要引用Microsoft.mshtmlusing mshtml;但在部署的服务器上没有安装过任何版本的OFFICE解决方法:找到引用的Dll,复制到Web程序的BIN目录.(二)开发Winform程序需要使用到HttpUtility.UrlEncode,解决方法:引用Microsoft.Web(三)DataSet dataSet = new DataSet()
2010-02-22 13:05:00
538
原创 对TransactionScope()事务的问题的补充
TransactionScope()事务的问题 using (TransactionScope ts = new TransactionScope()){ using (SqlConnection conn = new SqlConnection(@"XXX")) { conn.Open(); SqlCommand sqlCommand = new SqlCommand
2010-02-22 13:04:00
548
原创 2010-01-21杂的知识
//解决IE8,ReportViewer没有横向滚动条的问题if (!IsPostBack){ string userAgent = Request.ServerVariables.Get("HTTP_USER_AGENT"); if (userAgent.Contains("MSIE 7.0") || userAgent.Contains("MSIE 8.0")) ReportVie
2010-01-21 14:36:00
385
原创 SQLSERVER数据库还原实战
1)新建数据库RESTORE2)在该数据库上选择:任务->还原->数据库3)在还原数据库-RESTORE的对话框中 目标数据库是RESTORE 指定用于还原的备份集的源和位置->源设备->选择最后一个完全的备份BAK文件 勾中还原CheckBox4)选择左上角的选项 在还原选项中,勾中覆盖现有数据库 修改还原为的文件名,比如:F:/RESTORE.MDF,F:/REST
2010-01-21 14:34:00
599
原创 报表增加新的字段
数据源改变 修正rdlc 方法 :1. 修改 .xsd中所有的需要调整的sql,系统会自动添加新增加的字段内容.这里有个知识点,.xsd文件中的字段都是有长度限制,如果数据库对应的字段长度增加了,报表就会出错,除非更改.xsd对应的字段长度.2. 将.rdlc 文件以xml 格式打开,可清晰看到类似GridView结构的数据, 将新增的字段手动添加到Fields>
2009-12-18 14:17:00
792
原创 固定GridView的列
CSS中写到:.GirdView_ColG{ position: relative; left: expression_r_r(this.offsetParent.scrollLeft - 1);}CS中写到: //"Class"注意大小写 IE6.0以下版本不兼容"class" e.Row.Cells[0].Attributes.Add("Class", "Gird
2009-12-18 14:16:00
476
原创 去掉非法汉字
从DBF传来的数据有时候会有半个汉字,导致用AJAX显示网页不正常,做了个函数检查最后一个字节是否是非法的汉字. public static string CheckMisshapenGBCC(string InputString) { InputString = InputString.Trim(); byte[] b = System.Text.Enc
2009-12-18 14:15:00
799
原创 WinForm程序Config配置文件的一点知识
App.config中的数据库连接字符串,是在Settings.settings同步过来的。后者在设计时支持数据集DataSet的设计,但运行时不能更改,可以更改App.config的连接字符串,但无法加密、解密。造成的结果是数据库连接字符串,要么固定不变,要么以明文显示,极不安全。 Settings.settings中的设置和App.config中的设置会相互更新,彼此同步
2009-12-15 08:45:00
886
原创 银行家四舍五入法
银行家四舍五入法规则:四舍六入五考虑;五后非零可进一;五后皆零视奇偶,五前为偶(包括零)应舍去,奇进偶舍。 for (decimal i = 0; i { decimal x = i+0.405M; //double不适用 //银行家四舍五入法 textBox1.Text+= (x + " Math.Round->" + Math.Round(x,
2009-12-11 09:47:00
2371
原创 金蝶KIS财务软件的重大安全问题
金蝶KIS财务软件安装完成后会在SQLSERVER上生成一个和SA同样权限的帐号KISAdmin,由于种种原因这个帐号的密码已经泄露,在BAIDU可以轻易查到.因为客户程序使用这个帐号和SQLSERVER连接,又没有提供可以修改它的功能.据金蝶服务人员说除非重新编译,这也就导致这个SQL帐号的密码无法修改. 而一旦这个SQLSERVER连接到INTERNET碰到黑客或者内网中有捣
2009-11-24 16:48:00
1400
原创 事务的试验
redo: try { using (TransactionScope ts = new TransactionScope()) { using (SqlConnection conn = new SqlConnection(...))
2009-11-18 16:43:00
413
原创 with(tablockx)的测试
with(tablockx)和普通的SELECTwith(tablockx)先执行,普通的SELECT将等待前者完成.普通的SELECT先执行, with(tablockx)也将等待前者结束才执行,如果前者长时间不结束,with(tablockx)将失败。 with(tablockx)和带事务的SELECT或者with(tablockx) 不管
2009-11-09 11:47:00
4564
原创 2009-11-6一点杂乱的知识
打开Active Directory 用户和计算机为每一台机器配置策略(域名)xzl.local右键->新建组织单位,名称为C_XZL03在Computers选中XZL03右键->移动到->C_XZL03C_XZL03右键->属性->组策略-〉添加->全部->选中C_STOPU 推策略脚本,服务器会有自己的共享目录放置脚本给客户端读取,不需要人为开个共享目录域控刚起来,可能某
2009-11-06 14:50:00
375
原创 SqlDbType.VarChar的问题
ShangPinBianHao字段是 nchar 10,sqlCommand = new SqlCommand(@"SELECT GUID, ShangPinBianHao, ShangPinMingCheng FROM stock_ShangPinXinXi WHERE (ShangPinBianHao LIKE @ShangPinBianHao + N%)", conn);这是使用C
2009-11-02 14:39:00
3260
原创 三种事务的比较
using (TransactionScope ts = new TransactionScope()){ using (SqlConnection conn = new SqlConnection(@"Data Source=10.108.*.*;Initial Catalog=DATABASENAME;User ID=***;Password=***")) {
2009-11-02 13:56:00
479
原创 触发器心得
触发器中的INSERT事件中,被触发的表中已经包含了要插入的数据了,INSERTED表中也包含相同的数据;触发器中的DELETE事件中,被触发的表中已经没有了要删除的数据了,数据只存在于DELETED表中;INSERT事件中,DELETED是空表;DELETE事件中,INSERTED是空表;UPDATE事件就是执行一个DELETE在执行一个INSERT,两个表都是有内容的。 又:
2009-10-30 16:04:00
596
原创 Web.config权限的一点心得
? 代表匿名用户* 代表所有用户 不管allow、deny写的次序如何,先执行allow规则,再执行deny规则,最后执行默认的allow users="*"/>比如:表示拒绝匿名用户,最后执行默认的允许其他用户。 又比如:允许角色为"__业务员信息维护"的用户,再拒绝所有用户(前者的访问权限已经通过了),最后执行默认的已经没有什么意义了。 更深
2009-10-27 09:02:00
574
原创 WinServer2003 SP2 PlugPlayManager 257 警告事件
描述:将目标设备更改通知发送到"C:/Windows/Explorer.EXE"的窗口时超时. 原因:进行了磁盘管理,删除了某些逻辑磁盘,又生成了新的逻辑磁盘. 解决方法:系统重新启动,问题解决
2009-10-24 15:31:00
4352
1
原创 对SQL2005各种备份的一点理解
完全备份,提交所有事务日志并且截断它。差异备份,备份从上一次完全备份后的所有更改,而非上一次差异备份。提交所有事务日志并且截断它。日志备份,上一次完全或差异备份,或者事务日志备份后的修改,日志会被截断。 我目前所用的备份:周六晨完全备份,周日晨清理工作,周一至周五晨差异备份,周一至周五每隔一小时事务日志备份。
2009-10-18 20:09:00
418
原创 为没有加入域的机器配置ISA规则
机器A没有加入到服务器域中,通过ISA2006访问外网。设置一条规则:所有用户允许访问,将机器A要访问的外网域名地址纳入其中。一旦有超出该规则的域名和地址,机器A上的IE浏览器还是会跳出令人讨厌的用户名密码输入框的。 这是我在为安装在XP HOME版上的金税软件配置网上报税程序遇到的问题,而如果ISA2006中其他规则中的用户没有牵涉到域用户,也就不会跳出那个用户名密码对话框。
2009-10-18 20:08:00
516
原创 金山毒霸中小企业网络版5.0使用中遇到的若干问题
1)长时间无法升级,到控制中心手工升级依然失败,查看日志是诸如“下载主索引文件失败”之类的信息。解决方法:停止控制中心,过1、2分钟重新启动,重新升级,问题解决。 2)某如在控制中心突然看到服务器端离线,在服务器端界面上看到注册失败,授权已满。虽然升级工作不受到影响,但感觉十分古怪。解决方法:停止控制中心,找到avnetdb.db文件,删之,重新启动控制中心,问题解决。 3)增加一
2009-09-30 10:13:00
453
原创 为了在WEB页面中完成全键盘操作
和C/S一样,我需要在商品编号输入框中输入若干数字,按下回车后,跳出一个网页对话框,里面是和商品编号有关的GridView,选中后关闭网页对话框,将信息带回原来的页面。 //这段代码用来定义弹出对话框if (!Page.IsClientScriptBlockRegistered("clientScript")) { String strScript
2009-09-11 14:52:00
819
原创 ISA2006解决SSL隧道端口范围的方法
有些工作用到网站使用的SSL并非443,而是很古怪的。这个时候如果IE走的是WEB代理的话,需要配置ISA服务器,因为ISA默认走443。网上有介绍,貌似很繁琐,而且不是用ISA自己的配置,而是第三方小工具,所以我放弃了。 我专门为这个些网站配置了允许所有出站协议的规则。在使用的时候,去掉IE代理服务器的选项,让它直接走安装好的ISA防火墙客户端,问题就解决了。
2009-09-09 13:18:00
1165
1
原创 安全心得(2009-09-09)
1)输入框必须限制长度,够用就行,最好用正则表达式限制内容;2)禁止输入标记,ASP.NET默认设置是禁止的;3)上传文件要严格限制类型和文件后缀,最好读取文件的头字节来判断;4)数据库帐号不要和服务器密码相同,最好是有限权限;5)不应该把系统提供的错误信息直接暴露给用户,包括没有捕捉的页面错误和捕捉到的ex.Message; A.最保守的错误显示机制:在客户端只能看到发生错误提示修改Cust
2009-09-09 12:42:00
405
原创 ISA防火墙客户端和SQLSERVER客户端的问题
有外来程序安装基于.NET FRAMEWORK 3.5的应用程序在内网的PC上,需要通过ISA防火墙客户端经过服务器上的ISA2006 SP1访问外网的SQLSERVER2005数据库。 按照以往经验,需要配置一条SQLSERVER2005服务器所在的IP地址的出站规则,并且并不需要设置一条基于域名的规则。 该应用程序通过域名访问目标数据库一切正常。
2009-09-03 13:31:00
662
原创 一些心得
DataSet转XML: DataSet dataSet = new DataSet();SqlConnection sqlConn = null;sqlConn = new SqlConnection("Data Source=10.108.0.1;Initial Catalog=EPSS;User ID=***;Password=***");sqlConn.Open();SqlDa
2009-08-26 10:40:00
280
原创 SQL2005 CLR触发器实战
CLR触发器[Microsoft.SqlServer.Server.SqlTrigger(Name = "Trigger1", Target = "ERP_STOCKYaoHuoDingDan", Event = "FOR INSERT")] public static void DingDanIDSameGongYingShangGUIDMustSame() {
2009-08-06 13:42:00
668
原创 最近编程的一些心得
JAVASCPRIT写的确认对话框不管是否是在AJAX状态下,都和验证控件有冲突。 因为数据库某个字段有半个汉字,在AJAX下的GRIDVIEW报Sys.WebForms.PageRequestManagerParserErrorException错误,只能去掉AJAX,倒也显示正常。 最好的设计是在一个方法里打开SqlConn.Open()和Close(),不要指望系
2009-05-06 10:29:00
432
原创 HTML注入
默认地,ASP.NET 1.1和2.0请求验证会对送至服务器的数据检测是否含有HTML标记元素和保留字符.这可以防止用户向程序中输入脚本.请求验证会对照一个有潜在威胁的字符串列表进行匹配,如果发现异常它会抛出一个HttpRequestValidationException类型的异常.你可以在你的web.config文件中的元素中加入validateRequest="false" 或在单独的页面的@
2009-04-02 12:43:00
1633
1
原创 编写服务要注意的
)运行服务的时候,说服务启动又马上结束之类的信息,表示程序运行有失败的地方。2)通常服务中会用到eventlog控件,且不要图方便,把它的Source属性写成和服务一样的名字,因为服务的名字已经和Windows自带的日志绑定,一个名字是不能和不同的日志绑定的。
2009-03-18 12:24:00
353
原创 WebRequest登录ASP.NET页面
CookieContainer cookieContainer = new CookieContainer(); // 设置打开页面的参数 string URI = "http://xxx/logon.aspx"; HttpWebRequest request = WebRequest.Create(URI) as HttpW
2009-03-05 15:34:00
1737
原创 抄来的一点SELECT知识
有个复杂的查询出现了除0错误,而我以为自己在WHERE子句中已经作了判断,这次教训是: SQL Select语句完整的执行顺序:1、from子句组装来自不同数据源的数据;2、where子句基于指定的条件对记录行进行筛选;3、group by子句将数据划分为多个分组;4、使用聚集函数进行计算;5、使用having子句筛选分组;6、计算所有的表达式;7、使用order by对结果集进行排序
2009-03-05 15:28:00
333
原创 库存减少销售增加的事务例子
(1)Private Sub Do(ByVal SL As Integer)Dim oConn As New ADODB.ConnectionDim oRs As New ADODB.RecordsetDim oRs2 As New ADODB.RecordsetOn Error GoTo ErrorHandleroConn.ConnectionTimeout = 15oConn.Open
2009-02-26 12:32:00
510
原创 ADO锁定整张表
Dim oConn As New ADODB.ConnectionDim oRs As New ADODB.Recordset oConn.ConnectionTimeout = 15 oConn.Open "Provider=SQLOLEDB.1;Password=***;Persist Security Info=True;User ID=***;Initial Catalog
2009-02-23 15:36:00
707
原创 导出到EXCEL的问题
Response.ContentType = "application/ms-Excel";Response.Charset = "UTF-8";Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");Response.AddHeader("Content-Disposition", "inline;
2009-02-23 15:22:00
321
原创 DBF表用ADO访问的一个问题
oRs.CursorLocation = adUseClientoRs.Open "SELECT * FROM ZCYZK.DBF", oConn, adOpenForwardOnly, adLockReadOnly返回E_FAIL错误必须oRs.Open "SELECT BH,PM,KCS FROM ZCYZK.DBF", oConn, adOpenForwardOnly, adLock
2009-02-23 15:20:00
799
原创 CLR存储过程取回表内容
CLR存储过程public partial class StoredProcedures{ [Microsoft.SqlServer.Server.SqlProcedure] public static void StoredProcedure1() { // 在此处放置代码 SqlConnection sqlConnection = new S
2009-02-01 10:22:00
401
原创 自定义错误页面
在Web.config中: customErrors mode ="On" 服务器和客户端都显示自定义错误页面customErrors mode ="RemoteOnly" 服务器使用标准的错误页面,客户端显示自定义错误页面 在Global.asax中: protected void Application_Error(object sender,
2009-01-24 10:07:00
440
原创 使用Windows自定义消息结束应用程序
BackCopy.exe的关闭有一系列条件,我想用另外一个程序结束它,但不想使用结束进程的方式。于是写:protected override void WndProc(ref System.Windows.Forms.Message m){ const int WM_QUERYENDSESSION = 0x0011; const int WM_CLOSEPROGRAM = 0x80
2009-01-22 09:59:00
489
原创 参数化查询
DataSet dataSet = new DataSet(); //select="SELECT * FROM XXXX WHERE BH=@BH AND KSRQ=@KSRQ AND JSRQ=@JSRQ" sqlCommand = new SqlCommand(select, conn); sqlC
2009-01-21 14:18:00
436
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人