
雕虫小技
williamluo
这个作者很懒,什么都没留下…
展开
-
代码模板的使用
一、代码模板的基本概念所谓“代码模板”,就是已经有一部分代码的源程序文件,在添加新的Class文件或者Form文件至Project时,VS.NET IDE将复制这些模板文件为一个新文件,新文件的文件名就是在Add New Item对话框中输入的文件名。VS.NET IDE还能自动将模板文件中的Class Name更改为新类名。使用代码模板,可以提高一些典型编码工作的工作效率,比如:(1)自动添原创 2004-08-29 17:15:00 · 1310 阅读 · 0 评论 -
不能修改SQL Server Trigger的问题
今天发现一个怪问题:用SQL Server Enterprise Manager查看一个Table的设计,在Table Designer画面中,工具条上修改Trigger的按钮和另外3个按钮都被Disable了。结果发现是因为数据库名称后面有空格引起的。将数据库备份下来再恢复成一个不带尾空的数据库,问题就解决了。很奇怪,可能是SQLEM的Bug。原创 2004-12-16 22:49:00 · 1011 阅读 · 0 评论 -
怎样从ASP.NET程序判断客户端是否安装了.NET Framework
ASP.NET程序有时候需要知道客户端是否安装有.NET Framework。可以用HttpRequest对象的UserAgent属性获得一些线索,例如: Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Put use原创 2004-12-16 08:31:00 · 1741 阅读 · 0 评论 -
VB.NET存取注册表项的几个函数
做了几个增删改注册表项的函数,需要时可以拷贝来用:Imports Microsoft.Win32 provided by mscorlib.dllPublic Class RegistryAccess Public Shared Function GetRegistryKey(ByVal registryRoot As RegistryKey, ByVal keyName A原创 2004-12-15 08:21:00 · 194 阅读 · 0 评论 -
编写VS.NET的Add-in帮助程序调试
在Visual Studio .NET的IDE中利用中断进行程序调试时,一般只有简单的局部变量或表达式可以直接看到结果。如果是一个DataSet之类的对象,在Locals窗口中能够做到的只是一级一级地展开,最后看到一堆零散的属性值,其中大多数属性对排错用处并不大。真正有用的是ADO.NET的查询结果,如果能够将一个DataSet变量中的DataTable用一个 DataGrid完整显示出来,是不是原创 2004-12-05 21:29:00 · 1882 阅读 · 0 评论 -
Why cannot ping a computer in LAN?
如果不能ping一台局域网内的机器,但是该机器其实是可以正常访问网络的,那么请检查该机器是否设置了防火墙保护:(1)Right-click My Network Places, Properties(2)Right-click Local Network Connection, Properties(3) Click the Advanced tab(4) Clear the checkbox o原创 2004-11-21 17:53:00 · 797 阅读 · 0 评论 -
Cannot Start VS.NET IDE: MSXML3.dll
卸载了一些应用程序之后,VS.NET IDE起不来了,提示MSXML3.dll未注册云云。Repair了VS.NET安装之后还是不行。查了MSDN Knowledge Base的Q306905,说是要重新安装VS.NET,而且Repair都不行,一定要卸载再装。不甘心,跑到命令行运行 Regsvr32 c:/windows/system32/msxml3.dll。居然灵了。也许本来根本就不需要Re原创 2004-11-21 22:48:00 · 910 阅读 · 0 评论 -
异步方法的实现
一般情况下,函数都是同步调用的,就是说调用者在调用一个函数时,必须等到被调用函数执行完毕,调用者的后续代码才能继续执行。对于有些函数,可能执行完毕需要很长时间,让调用者等到其执行完毕,可能会让用户觉得程序挂起。因此常常需要提供一种异步方法,允许调用者在调用之后,立即继续执行后续代码。使用.NET Framework提供的Delegate机制,很容易将一个耗时很长的函数改写成一个支持异步调用的方法。原创 2004-11-09 08:07:00 · 2711 阅读 · 0 评论 -
MainForm关闭之后保持程序运行
WinForm程序一般都是从一个Form的static void Main()开始运行,暂且称此Form为MainForm。Main函数的一般写法是: static void Main(){ Application.Run(new Form1());}这样的写法有一个问题:如果需要从Form1中调出另一个Form,必须保持Form1不能关闭,比如在一个Butt原创 2004-11-07 20:28:00 · 1014 阅读 · 0 评论 -
有剩余空间为何不能复制文件?
如果你发现无法将一个超过2GB的大文件复制到一个磁盘分区,请检查该磁盘的分区格式。FAT或者FAT32分区中,单个文件的最大尺寸是2GB,即使剩余空间再多,也无法保存一个大于2GB的文件。解决办法:使用Convert命名将分区格式转换成NTFS。具体步骤:(1)C:/>Chkdsk X: /F这是清理分区中的可能导致分区格式转换失败的dirty data。(2)C:/>Conver原创 2004-11-06 11:01:00 · 1789 阅读 · 0 评论 -
Reference to Null object in the .NET Remoting Deployment?
在使用.NET Remoting机制部署应用程序的时候,可能会看到“Reference to null object”的Run-time错误信息,而在Visual Studio .NET IDE中运行时却没有这种错误出现,此时应检查Remoting Config所用的配置文件,最可能的原因是配置文件中缺少相应的Activated Type内容,其内容应形如,例如: 如果需要配置原创 2004-11-07 21:22:00 · 1076 阅读 · 0 评论 -
将图片保存到一个XML文件
WinForm的资源文件中,将PictureBox的Image属性等非文字内容都转变成文本保存,这是通过序列化(Serialization)实现的,例子: //using System.Runtime.Serialization.Formatters.Soap;Stream stream = new FileStream("E://Image.xml",FileMode.Cre原创 2004-11-07 20:35:00 · 1770 阅读 · 0 评论 -
逐行读取文本文件
如果需要逐行读取一个文本文件,可以使用System.IO.StreamReader对象及其Peek和ReadLine方法,如下例: private void ReadTextFile(string fileName){ // Open and read the text file line by line StreamReader srFile = new Stream原创 2004-11-07 20:33:00 · 1169 阅读 · 0 评论 -
判断文件或文件夹是否存在
使用System.IO.File,要检查一个文件是否存在非常简单: bool exist = System.IO.File.Exists(fileName);如果需要判断目录(文件夹)是否存在,可以使用System.IO.Directory: bool exist = System.IO.Directory.Exists(folderName);原创 2004-11-07 20:31:00 · 1231 阅读 · 0 评论 -
使用Bulk Insert语句将文本文件读入数据库
SQL Server有一个BCP工具用于从文本文件读入数据,写进数据库中,T-SQL中有一个类似的Bulk Insert语句,可以实现同样的功能,下面的函数将一个logFile中的内容读入WEBD表: public void ImportLogFile(string logFile){ OleDbCommand cmd = new OleDbCommand() ; cm原创 2004-11-11 21:34:00 · 1582 阅读 · 0 评论 -
Modal WebForm
有时候需要模态显示一个ASP.NET页面,就是说在关闭该页面之前,不能允许点击其他页面,就像很多Windows程序中的对话框一样。可以使用DHTML的window.ShowModalDialog方法实现这种效果,示例如下:(1)在调用页面中放一个HTML Button <INPUT style="Z-INDEX: 110; LEFT: 262px; WIDTH: 200px;原创 2004-11-07 21:16:00 · 962 阅读 · 0 评论 -
取WebForm上HTML元素的Value
如果在WebForm上贴有HTML Control,如Input,除了Request.Form.Get之外,还可以将HTML Control设置为runat=server,这样,在WebControl的事件代码中就可以访问其输入内容了。例如: 如下表达式可取其输入内容: this.txtTest.Value注意要用.Value而不是.Text属性。原创 2004-08-22 16:05:00 · 1062 阅读 · 0 评论 -
压缩SQL Server数据库
如果发现数据库的日志文件(ldf)膨胀的太厉害,可以采取以下两个步骤:(1)将Recovery model改为Simple(默认为Full)(2)运行DBCC shrinkdatabase命令压缩数据库函数代码: Public Shared Function ShrinkDatabase(ByVal dbConnection As SqlClient.SqlConnectio原创 2004-12-15 08:25:00 · 1040 阅读 · 0 评论