Microsoft Expression Studio 3 破解补丁

by 陈少俊 2010.8.25 10:06
下载文件覆盖安装目录相应文件即可破解。

SLDL_DLL破解.zip (56.74 kb)


请您留言!打分!谢谢。
如有需要请联系我。

Tags: , ,

Asp.Net技术 | web开发

iis6.0 完整安装包 及 安装时缺少文件全

by 陈少俊 2010.8.17 15:49
安装包:点击下载

IIS6.0.rar (10.03 mb)

缺少文件包:点击下载

IIS6全部.rar (10.30 mb)

Tags: , , , , ,

Asp.Net技术 | IT | web开发 | Windows

手把手教你使用VS制作winform安装包

by 陈少俊 2010.7.23 17:20

使用VS 自带的打包工具,制作winform安装项目

开发环境:VS 2008 Access

操作系统:Windows XP

开发语言:C#

项目名称:**管理系统

步骤:

第一步:打开开发环境VS2008,新建项目,选择其他项目类型,再选择"安装项目",输入名称及选择安装路径;

第二步:进入文件系统选项卡,选择应用程序文件夹,在中间的空白区域右键选择"添加文件",添加项目文件(exe,dll);


第三步:添加项目所需文件;这里有两个文件夹需要注意(DataBase和Report),因为DataBase是存储项目数据库,而Report则是存储项目所需的报表文件.rpt,因此呢,在应用程序夹中也需要建同名的文件夹,并且添加所需的文件。效果:

 第四步:为了在开始程序菜单中和桌面应用程序中看到安装程序,这里我们就需要为项目创建快捷方式。右键选择可执行文件(PersonFinance.exe),创建快捷方式,进行重命名"**公司**管理系统",将该快捷方式拖放到 '用户的"程序"菜单' 中。重复该步骤将新建的快捷方式添加到 "用户桌面" 文件夹中

最好在用户菜单中建立一个文件夹,存放安装程序

第五步:设置系统必备,右键选择安装项目,进入属性页中,单击"系统必备"按钮,进入系统必备对话框;勾选"创建用于安装系统必备组件的安装程序",在安装系统必备组件列表中,选择

            1)、Windows Installer 3.1(必选)

            2)、.NET Framework 3.5 (可选)参考最后说明

            3)、Crystal Report Basic for Visual Studio2008(x86,x64) (可选) 项目中用到了水晶报表就需要勾选此项

重要一点:勾选"从与我的应用程序相同的位置下载系统必备组件(D)",其实意思就是说你勾选后,生成安装项目时,在你安装项目的路径下,会有你在系统必备组件列表中勾选的组件.(系统自动完成,这一点还不错,不需要你自己去下载组件)

 

到这里安装包制作差不多完成了一大半 接着来

 

第六步:卸载程序,因为安装包做好之后不能只有安装程序,还要有卸载程序

           首先呢,在"C:\WINDOWS\system32"路径下,找到msiexec.exe 添加到应用程序文件夹中,创建快捷方式,并命名"卸载管理系统"或"Uninstall"

           其次呢,选择安装项目的ProductCode

           

            右键选择卸载程序的快捷方式,进入属性,在Arguments选项中 输入/x 及ProductCode; 例如:/x {6931BD71-5C5E-4DA1-A861-14C7D1A78B97}

            将卸载程序同时存放到用户的开始菜单的文件夹中(在第四步中新建)

第七步:更改安装程序属性,右键选择安装项目属性,可以设置项目作者及名称,其他属性信息可以根据实际情况进行设置.

 

第八步:生成安装项目

           生成时,会出现些警告:应将“msiexec.exe”排除,原因是其源文件“C:\WINDOWS\system32\msiexec.exe”受到“Windows 系统文件保护”。

                                          两个或多个对象具有相同的目标位置(“[targetdir]\model.dll”)
           解决方案:

           第一种:都不处理

           第二种:第一类警告,可以编写卸载程序

                      第二种警告:删除相同的文件

 

安装项目制作完毕.

 

 

安装及运行:

直接运行steup.msi 或是setup.exe 会出现

 

 

在桌面和开始菜单中也会有相应的安装程序、卸载程序

 

 

说明及小结:

1、.net framework 框架是可选的,不一定说你采用的是VS2008开发就必须要使用.net framework 3.5,只要你在程序中没有使用到.net framework 3.5 的特性比如(LINQ),那么你选择框架时,是可以选择2.0的,为什么?因为2.0只有20多MB,而3.5则有200多MB。

更改方式:在安装项目下面有个检测到的依赖项文件,双击里面的Microsoft .net framework,进入了启动条件选择卡,右键选择.net frmaework 在Version中选择你所需的.net framework框架

 

 

 

2、文章中涉及到的名称大家可以根据实际所需进行设置。

 

3、欢迎拍砖。

博客园链接地址:

http://www.cnblogs.com/chankcheng/articles/1774932.html

转载请注明地址,谢谢!

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/WTPMCheng/archive/2010/07/10/5725741.aspx

Tags:

Asp.Net技术 | IT | Windows

Microsoft Expression Studio 无法安装和卸载解决方案

by 陈少俊 2010.1.19 15:50

您是否遇到过无法安装和卸载Microsoft Expression Studio 相关程序的问题呢?

其实很简单 运行安装程序是如果报 字符太长或太短 的错误请将 您的系统语言改为 英语(美国) 再执行相关 安装或卸载操作。

之后再改回来就OK了。试试吧,一定成功。

记得 评论哦。O(∩_∩)O~

在URL重写后,form标记中的Action值也用虚拟地址

by 陈少俊 2009.12.11 22:07

首先建立/App_Browsers/Form.broswer文件,其内容为:

<browsers>
    <browser refID="Default">
        <controlAdapters>
            <adapter controlType="System.Web.UI.HtmlControls.HtmlForm"
                        adapterType="FormRewriterControlAdapter" />
        </controlAdapters>
    </browser>

</browsers>
再建立FormRewriterControlAdapter类:

    public class FormRewriterControlAdapter : System.Web.UI.Adapters.ControlAdapter
    {
        protected override void Render(HtmlTextWriter writer)
        {

            if (writer is System.Web.UI.Html32TextWriter)
            {
                writer = new FormFixerHtml32TextWriter(writer.InnerWriter);
            }
            else
            {
                writer = new FormFixerHtmlTextWriter(writer.InnerWriter);
            }

            base.Render(writer);
        }
    }

    #region FormFixerHtml32TextWriter
    internal class FormFixerHtml32TextWriter : System.Web.UI.Html32TextWriter
    {
        private string _url; // 假的URL

        internal FormFixerHtml32TextWriter(TextWriter writer)
            : base(writer)
        {
            _url = HttpContext.Current.Request.RawUrl;
        }

        public override void WriteAttribute(string name, string value, bool encode)
        {
            // 如果当前输出的属性为form标记的action属性,则将其值替换为重写后的虚假URL
            if (_url != null && string.Compare(name, "action", true) == 0)
            {
                value = _url;
            }
            base.WriteAttribute(name, value, encode);
        }
    }
    #endregion

    #region FormFixerHtmlTextWriter
    internal class FormFixerHtmlTextWriter : System.Web.UI.HtmlTextWriter
    {
        private string _url;
        internal FormFixerHtmlTextWriter(TextWriter writer)
            : base(writer)
        {
            _url = HttpContext.Current.Request.RawUrl;
        }

        public override void WriteAttribute(string name, string value, bool encode)
        {
            if (_url != null && string.Compare(name, "action", true) == 0)
            {
                value = _url;
            }

            base.WriteAttribute(name, value, encode);
        }
    }
    #endregion

用Js代码代替点击按钮操作来Post数据到服务器端

by 陈少俊 2009.12.11 22:06

JS:
__doPostBack('btnSearch','');

HTML:
<input type="button" id="btnSearch" runat="server" style="visibility:hidden; position: absolute;" onserverclick="btnSearch_Click" />   

如果加入Ajax功能:
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
                <ContentTemplate>
            //HTML代码......
        </ContentTemplate>
                <Triggers>
                    <asp:AsyncPostBackTrigger ControlID="btnSearch" EventName="ServerClick" />
                </Triggers>
            </asp:UpdatePanel>

可以处理Ajax提示效果:
<script language="javascript" type="text/javascript">
        <!--
            var prm = Sys.WebForms.PageRequestManager.getInstance();
            prm.add_initializeRequest(InitializeRequest);
            prm.add_endRequest(EndRequest);
            var postBackElement;
            function InitializeRequest(sender, args) {
                postBackElement = args.get_postBackElement();
            }
            function EndRequest(sender, args) {
                if( postBackElement.id == "btnSearch")
                {                  
                    $("divWait").style.visibility = "hidden";
                    $("btnSave").disabled = "";
                    $("btnHidden").disabled = "";                                                       
                }
            }
        // -->
        </script>

关于system.drawing.imaging类的说明和范例

by 陈少俊 2009.12.11 21:48

代码段1
=========================
System.Drawing.Image image =
System.Drawing.Image.FromFile(originalFilename);
System.Drawing.Size size = GetImageSize(image.Width, image.Height,
information.MaximumDimension);
System.Drawing.Image bitmap = new System.Drawing.Bitmap(size.Width,
size.Height);
System.Drawing.Graphics graphics =
System.Drawing.Graphics.FromImage(bitmap);
graphics.IntERPolationMode =
System.Drawing.Drawing2D.InterpolationMode.High;
graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
graphics.Clear(information.BackgroundColor);
graphics.DrawImage(image, new System.Drawing.Rectangle(0, 0, bitmap.Width,
bitmap.Height), new System.Drawing.Rectangle(0, 0, image.Width,
image.Height), System.Drawing.GraphicsUnit.Pixel);
graphics.Dispose();

代码段2
============================
//原始图片名称
string originalFilename = "c:\\222.jpg";
//生成的高质量图片名称
string strGoodFile = "c:\\222-small-good.jpg";
//生成的低质量图片名称
string strBadFile = "c:\\222-small-bad.jpg";
//缩小的倍数
int iScale = 3;

//从文件取得图片对象
System.Drawing.Image image = System.Drawing.Image.FromFile(originalFilename);
//取得图片大小
System.Drawing.Size size = new Size(image.Width / iScale , image.Height / iScale);
//新建一个bmp图片
System.Drawing.Image bitmap = new System.Drawing.Bitmap(size.Width,size.Height);
//新建一个画板
System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap);
//设置高质量插值法
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;
//设置高质量,低速度呈现平滑程度
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
//清空一下画布
g.Clear(Color.Blue);
//在指定位置画图
g.DrawImage(image, new System.Drawing.Rectangle(0, 0, bitmap.Width, bitmap.Height),
new System.Drawing.Rectangle(0, 0, image.Width,image.Height),
System.Drawing.GraphicsUnit.Pixel);
//保存高清晰度的缩略图
bitmap.Save(strGoodFile, System.Drawing.Imaging.ImageFormat.Jpeg);
//取得原图像的普通缩略图
System.Drawing.Image img = image.GetThumbnailImage(image.Width / iScale, image.Height / iScale, null, IntPtr.Zero);
//保存普通缩略图
img.Save(strBadFile, System.Drawing.Imaging.ImageFormat.Jpeg);

g.Dispose();
MessageBox.Show("生成完毕");

俺自己写的一段原图+缩略图代码
===============================
using System;
using System.Collections;
using System.ComponentModel;
using System.Configuration;
using System.Data;
using System.Drawing;
using System.Drawing.Imaging;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

namespace BSCRM.Shangpin
{
/// <summary>
/// Shangpin_IMG 的摘要说明。
/// </summary>
public class Shangpin_IMG : System.Web.UI.Page
{
  string ImagePath = ConfigurationSettings.AppSettings["ImagePath"]+"\\";
  bool error;
  string src;
  int height,width;
  private void Page_Load(object sender, System.EventArgs e)
  {
   // 在此处放置用户代码以初始化页面
   height=width=0;

   if(Request["h"]!=null&&Request["h"].ToString().Trim()!="")
   {
    height=int.Parse(Request["h"].ToString().Trim());
   }
   if(Request["w"]!=null&&Request["h"].ToString().Trim()!="")
   {
    width=int.Parse(Request["w"].ToString().Trim());
   }

   if(Request["src"]!=null)
   {
    src = ImagePath+Request["src"].ToString();
    try
    {
     System.Drawing.Image img = System.Drawing.Image.FromFile(src);

     if(height>0||width>0)
     {
      if(height==0) height=img.Height;
      if(width==0) width=img.Width;
      System.Drawing.Image img2 = img.GetThumbnailImage(width,height,null,IntPtr.Zero);
      img2.Save(Response.OutputStream,img.RawFormat);
      img2.Dispose();
     }
     else
     {
         img.Save(Response.OutputStream,img.RawFormat);
     }

     img.Dispose();
    }
    catch
    {
     error = true;
    }
   }
   else
   {
    error = true;
   }

   if(error)
   {
    Response.StatusCode = 404;
    Response.Write("<html><head><title>Object Not Found</title></head><body><h1>HTTP/1.1 404 Object Not Found</h1></body></html>");
   }
  }

  #region Web 窗体设计器生成的代码
  override protected void OnInit(EventArgs e)
  {
   //
   // CODEGEN: 该调用是 ASP.net Web 窗体设计器所必需的。
   //
   InitializeComponent();
   base.OnInit(e);
  }
  /// <summary>
  /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  /// 此方法的内容。
  /// </summary>
  private void InitializeComponent()
  {  
   this.Load += new System.EventHandler(this.Page_Load);
  }
  #endregion
}
}

Tags:

Asp.Net技术 | web开发

服务不可用

by 陈少俊 2009.12.11 21:46

1.首先開啟「命令窗口」,並切換目錄到 cd C:\Windows\Microsoft.Net\Framework\
2.在命令行執行 "net stop w3svc" 終止 w3svc 服務
3.切換到下层目錄 cd C:\Windows\Microsoft.Net\Framework\v2.0.50727\
4.執行 "aspnet_regiis.exe -ua" 卸载 .Net
5.重新安裝 .Net 到 IIS 中  执行 "aspnet_regiis.exe -i"
6.切換目錄到 cd C:\Windows\Microsoft.Net\Framework\
7.重新启動 w3svc   执行 "net start w3svc".

Tags:

web开发 | Asp.Net技术

访问IIS元数据库失败的解决

by 陈少俊 2009.12.11 21:45

依次点击“开始”-“运行”。

2、在“运行”栏内输入

“C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i ”(不含引号),然后点“确定”按钮。

3、出现的cmd窗口中显示“开始安装ASP.NET XXX”等内容,等待这个窗口自动关闭。
------------------------------------

装了VS2005再装IIS,结果出了些小问题

访问IIS元数据库失败

思考可能是次序出了问题,解决

1、打开CMD,进入 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727

2、输入 aspnet_regiis.exe -i

稍等片刻,注册成功就解决问题了。

接着还会出现“未能创建 Mutex”的问题

解决方法:

1、先关闭你的VS2005。

2、打开 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary

ASP.NET Files 找到你刚才调试的程序的名字的目录删除它。

3、关闭IIS服务器,重开一次。

4、用IE浏览一下你的程序,问题解决。

Tags: , ,

web开发 | Asp.Net技术

SQL Server 2005 不允许远程连接解决方法

by 陈少俊 2009.12.11 21:41

做课程设计时,很多学生都遇到这个问题。把解决方法写在这儿,供参考。

刚刚安装的数据库系统,按照默认安装的话,很可能在进行远程连接时报错,通常是错误:"在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接) "搜MSDN,上面有一片机器翻译的文章,是在让人难以明白,现在总结如下:明白了SQL Server是个网络数据库就可迎刃而解了,简单的分为下面的集中情况。

1. 数据库引擎没有启动。

有两种启动方式:

(1)开始->程序->Microsoft SQL Server 2005->SQL Server 2005外围应用配置器,在打开的界面单击"服务的连接的外围应用配置器",在打开的界面中找到Database Engine,单击"服务",在右侧查看是否已启动,如果没有启动可单击"启动",并确保"启动类型"为自动,不要为手动,否则下次开机时又要手动启动;

(2)可打开:开始->程序->Microsoft SQL Server 2005->配置工具->SQL Server Configuration Manager,选中SQL Server 2005服务中SQL Server(MSSQLSERVER) ,并单击工具栏中的"启动服务"按钮把服务状态改为启动;

使用上面两种方式时,有时候在启动的时候可能会出现错误,不能启动,这时就要查看"SQL Server 2005配置管理器"中的SQL Server 2005网络配置->MSSQLSERVER协议中的VIA是否已启用,如果已启用,则把它禁止.然后再执行上述一种方式操作就可以了.

2. 是否已经允许远程连接。

这个部分可以简单的分为4个方面,分别是在 SQL Server上启用远程连接、启用SQL Server 浏览服务、在Windows 防火墙中为SQL Server 2005 创建例外和在Windows 防火墙中为“SQLBrowser”创建例外。下面是几个具体的操作方式,摘自MSDN,个人觉得文章的黑体部分应当特别的一起我们的注意。

在SQLServer 实例上启用远程连接
1.指向“开始->程序->Microsoft SQL Server 2005->配置工具->SQL Server 外围应用配置器”
2.在“SQL Server 2005 外围应用配置器”页, 单击“服务和连接的外围应用配置器”
3.然后单击展开“数据库引擎”, 选中“远程连接”,在右边选中“本地连接和远程连接”,
再选择要使用的协议,( 这个地方应当启用TCP/IP 和命名管道服务!)单击“应用”,您会看到下消息:
“直到重新启动数据库引擎服务后,对连接设置所做的更改才会生效。”,单击“确定”按钮返回
4.展开“数据库引擎”, 选中“服务”,在右边单击“停止”,等到 MSSQLSERVER 服务停止,
然后单击“启动”,重新启动MSSQLSERVER 服务。

启用 SQLServer 浏览器服务
1.指向“开始->程序->Microsoft SQL Server 2005->配置工具->SQL Server 外围应用配置器”
2.在“SQL Server 2005 外围应用配置器”页, 单击“服务和连接的外围应用配置器”
3.然后单击展开“SQL Server Browser”, 选中“服务”,在右边“启动类型”选择“自动”,
再单击“启动”,单击“确定”按钮返回

在Windows 防火墙中为“SQL Server 2005”创建例外
1.在 Windows 防火墙设置界面中,选择“ 例外” 选项卡,然后单击“添加程序”
2.在“添加程序窗口”中单击“浏览”
3.然后找到“C:\ProgramFiles\Microsoft Files\Microsoft SQL Server\ MSSQL.1 \MSSQL\Binn\sqlservr.exe”,
单击“确定”返回
注意 : 路径可能会根据 SQL Server 2005 安装不同而不同。 MSSQL.1 是占位符,对应数据库实例ID。
4.对每个需要打开远程访问的SQL Server 2005 实例,重复步骤 1 至 3。

在Windows 防火墙中为“SQLBrowser”创建例外
1.在 Windows 防火墙设置界面中,选择“ 例外” 选项卡,然后单击“添加程序”
2.在“添加程序窗口”中单击“浏览”
3.然后找到“C:\ProgramFiles\Microsoft Files\Microsoft SQL Server\90\Shared\sqlbrowser.exe”,
单击“确定”返回
注意 : 路径可能会根据 SQL Server 2005 安装不同而不同。

在使用.NET开发进行时,会遇到使用连接字符串连接SQL Server 2005数据库使用机器名称和localhost都能连接,但是使用IP地址却不能连接的问题,解决的办法是在SQL Server实例上启用本地和远程连接,并且在选择协议的时候使用TCP/IP和命名管道服务即可解决。

Tags: , ,

web开发 | Asp.Net技术

C#中show()与showdialog()的区别问题

by 陈少俊 2009.12.11 21:30

C#中show()与showdialog()的区别问题   要实现的功能是“点击主FORM上的BUTTON弹出子FORM,编辑子FORM里的TEXT文本框,点击子FORM里的BUTTON,将TEXT里的值传给主FORM并关闭子FORM”!

  FORM1,主FORM的CODE:

    public partial class Form1 : Form
     {
        public static string num;
        public Form1()
        {
            InitializeComponent();         
        }
        private void button1_Click(object sender, EventArgs e)
        {
            Form2 form = new Form2();
            form.ShowDialog();
            this.label1.Text = num;      
        }
     }

   FORM2,子FORM的CODE:

       public Form2()
        {
            InitializeComponent();        
        }
        private void button1_Click(object sender, EventArgs e)
        {
            Form1.num = textBox1.Text;
            this.Close();      
        }

这样就能将 子FORM TEXT里的值传给 主FORM里的 LABEL显示出來;

Tags: ,

Asp.Net技术

C#略缩图和水印

by 陈少俊 2009.12.11 21:27

public static void MakeThumbnail(string originalImagePath, string thumbnailPath, int width, int height, string mode,string imgtype)
   {
   System.Drawing.Image originalImage = System.Drawing.Image.FromFile(originalImagePath);
   int towidth = width;
   int toheight = height;
   int x = 0;
   int y = 0;
   int ow = originalImage.Width;
   int oh = originalImage.Height;
   switch (mode)
   {
   case "HW"://指定高宽缩放(可能变形)
   break;
   case "W"://指定宽,高按比例
   toheight = originalImage.Height * width / originalImage.Width;
   break;
   case "H"://指定高,宽按比例
   towidth = originalImage.Width * height / originalImage.Height;
   break;
   case "Cut"://指定高宽裁减(不变形)
   if ((double)originalImage.Width / (double)originalImage.Height > (double)towidth / (double)toheight)
   {
   oh = originalImage.Height;
   ow = originalImage.Height * towidth / toheight;
   y = 0;
   x = (originalImage.Width - ow) / 2;
   }
   else
   {
   ow = originalImage.Width;
   oh = originalImage.Width * height / towidth;
   x = 0;
   y = (originalImage.Height - oh) / 2;
   }
   break;
   default:
   break;
   }
   //新建一个bmp图片
   System.Drawing.Image bitmap = new System.Drawing.Bitmap(towidth, toheight);
   //新建一个画板
   System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap);
   //设置高质量插值法
   g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;
   //设置高质量,低速度呈现平滑程度
   g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
   //清空画布并以透明背景色填充
   g.Clear(System.Drawing.Color.Transparent);
   //在指定位置并且按指定大小绘制原图片的指定部分
   g.DrawImage(originalImage, new System.Drawing.Rectangle(0, 0, towidth, toheight),
   new System.Drawing.Rectangle(x, y, ow, oh),
   System.Drawing.GraphicsUnit.Pixel);
   try
   {
   //以jpg格式保存缩略图
       if (imgtype.ToLower() == ".jpg")
       {
           bitmap.Save(thumbnailPath, System.Drawing.Imaging.ImageFormat.Jpeg);
       }
   //以gif格式保存缩略图
       //if (imgtype.ToLower() == ".gif")
       //{
       //    bitmap.Save(thumbnailPath, System.Drawing.Imaging.ImageFormat.Gif);
       //}
   //以BMP格式保存缩略图
       if (imgtype.ToLower() == ".bmp")
       {
           bitmap.Save(thumbnailPath, System.Drawing.Imaging.ImageFormat.Bmp);
       }
   }
   catch (System.Exception e)
   {
    throw e;
   }
   finally
   {
       originalImage.Dispose();
       bitmap.Dispose();
       g.Dispose();
   }
   }
    /**/
    /// <summary>
    /// 在图片上增加文字水印
    /// </summary>
    /// <param name="Path">原服务器图片路径</param>
    /// <param name="Path_sy">生成的带文字水印的图片路径</param>
    protected void AddShuiYinWord(string Path, string Path_sy,string imgtype)
    {
        string addText = "Powerproduct .Net";
        System.Drawing.Image image = System.Drawing.Image.FromFile(Path);
        System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(image);
        g.DrawImage(image, 0, 0, image.Width, image.Height);
        System.Drawing.Font f = new System.Drawing.Font("黑体", 16);
        System.Drawing.Brush b = new System.Drawing.SolidBrush(System.Drawing.Color.LightGray);

        g.DrawString(addText, f, b, 15, 15);
        g.Dispose();
        if (imgtype.ToLower() == ".jpg")
        {
            image.Save(Path_sy, System.Drawing.Imaging.ImageFormat.Jpeg);
        }
        //if (imgtype.ToLower() == ".gif")
        //{
        //    image.Save(Path_sy, System.Drawing.Imaging.ImageFormat.Gif);
        //}
        if (imgtype.ToLower() == ".bmp")
        {
            image.Save(Path_sy, System.Drawing.Imaging.ImageFormat.Bmp);
        }
        image.Dispose();
    }

//调用函数

//图片上传函数
    protected string uploadpic(FileUpload filename)
    {
        if (filename.HasFile)
        {
            string pictype = filename.PostedFile.ContentType;
            if (pictype == "image/bmp" || pictype == "image/pjpeg")
            {
                string yy = DateTime.Now.Year.ToString();
                string mm = DateTime.Now.Month.ToString();
                if (mm.Length < 2)
                {
                    mm = "0" + mm;
                }
                string dd = DateTime.Now.Day.ToString();
                if (dd.Length < 2)
                {
                    dd = "0" + dd;
                }
                string foldpath = "../product/prod_img/"+yy+mm+dd;
                //检测此文件夹是否存在
                if (!Directory.Exists(Server.MapPath(foldpath)))
                {
                    Directory.CreateDirectory(Server.MapPath(foldpath));
                }
                //返回随机数
                Random rpic = new Random();
                int rpicnum = rpic.Next(1,10);
                string picname = yy+mm+dd + DateTime.Now.ToLongTimeString().Replace(":", "") + rpicnum.ToString() ;
                string Cpicname = filename.PostedFile.FileName; // 客户端文件路径
                FileInfo file = new FileInfo(Cpicname);
                string upfilename = file.Name;
                string upfiletype = upfilename.Substring(upfilename.LastIndexOf("."));
                string fileName = picname + upfiletype; // 文件名称
                string fileName_s = "s_" + picname + upfiletype; // 缩略图文件名称
                string fileName_sy = "sy_" + picname + upfiletype; // 水印图文件名称(文字)
                string webFilePath = Server.MapPath(foldpath + "/" + fileName); // 服务器端文件路径
                string webFilePath_s = Server.MapPath(foldpath + "/" + fileName_s); // 服务器端缩略图路径
                string webFilePath_sy = Server.MapPath(foldpath + "/" + fileName_sy); // 服务器端带水印图路径(文字)
                if (!File.Exists(webFilePath))

Tags: ,

Asp.Net技术 | web开发

C#操作数据库

by 陈少俊 2009.12.11 21:26

string strConnection = "Provider=Microsoft.Jet.OleDb.4.0;";
strConnection += "Data Source=";
strConnection += MapPath("database/XX.mdb");
OleDbConnection objConnection = new OleDbConnection(strConnection);

你在这里不用写相对或是绝对路径.
只要放在那个DAT的文件里就行了.

webconfig 配置:
<connectionStrings>
<add name="conn" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\XX.mdb;"/>
</connectionStrings>
使用:
OleDbConnection conn = new OleDbConnection(ConfigurationManager.ConnectionStrings["conn"].ConnectionString);

复制数据库到你的DEBUG文件夹下 然后找路径

1.Data Source= system.io.dictionary.getcruentdictionary()+"database\\XX.mdb";

2.Data Source=@"\database\\XX.mdb";

3.Data Source=application.startpath+@"\database\\XX.mdb";

using System.Data.OleDb
public string myConnstring="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+HttpContext.Current.Server.MapPath("data.mdb"); //data.mdb是你的数据库名称
OleDbConnection MyConnection;
MyConnection = new OleDbConnection(myConnstring);
strInsert=""; //strinsert是你的sql语句
OleDbCommand MyCommand = new OleDbCommand(strInsert,MyConnection);
MyConnection.Open();
MyCommand.ExecuteNonQuery();
MyConnection.Close();

usingSystem;
usingSystem.IO;
usingSystem.Collections;
usingSystem.Data;
usingSystem.Data.OleDb;
namespaceExam_Manage.DAL
...{
/**////<summary>
///试题数据访问基础类
///</summary>
publicabstractclassDbSQL
...{
publicDbSQL()
...{
}
protectedstaticstringconnectionString=@"provider=microsoft.jet.oledb.4.0;" "DataSource=" Directory.GetCurrentDirectory() @"mdbdb.mdb";

执行简单SQL语句#region执行简单SQL语句

/**////<summary>
///执行SQL语句,返回影响的记录数
///</summary>
///<paramname="SQLString">SQL语句</param>
///<returns>影响的记录数</returns>
publicstaticintExecuteSql(stringSQLString)
...{
using(OleDbConnectionconnection=newOleDbConnection(connectionString))
...{
using(OleDbCommandcmd=newOleDbCommand(SQLString,connection))
...{
try
...{
connection.Open();
introws=cmd.ExecuteNonQuery();
returnrows;
}
catch(System.Data.OleDb.OleDbExceptionE)
...{
connection.Close();
thrownewException(E.Message);
}
}
}
}

/**////<summary>
///执行多条SQL语句,实现数据库事务。
///</summary>
///<paramname="SQLStringList">多条SQL语句</param>
publicstaticvoidExecuteSqlTran(ArrayListSQLStringList)
...{
using(OleDbConnectionconn=newOleDbConnection(connectionString))
...{
conn.Open();
OleDbCommandcmd=newOleDbCommand();
cmd.Connection=conn;

OleDbTransactiontx=conn.BeginTransaction();
cmd.Transaction=tx;
try
...{
for(intn=0;n<SQLStringList.Count;n )
...{
stringstrsql=SQLStringList[n].ToString();
if(strsql.Trim().Length>1)
...{
cmd.CommandText=strsql;
cmd.ExecuteNonQuery();
}
}
tx.Commit();
}
catch(System.Data.OleDb.OleDbExceptionE)
...{
tx.Rollback();
thrownewException(E.Message);
}
}
}
/**////<summary>
///执行带一个存储过程参数的的SQL语句。
///</summary>
///<paramname="SQLString">SQL语句</param>
///<paramname="content">参数内容,比如一个字段是格式复杂的文章,有非凡符号,可以通过这个方式添加</param>
///<returns>影响的记录数</returns>
publicstaticintExecuteSql(stringSQLString,stringcontent)
...{
using(OleDbConnectionconnection=newOleDbConnection(connectionString))
...{
OleDbCommandcmd=newOleDbCommand(SQLString,connection);
System.Data.OleDb.OleDbParametermyParameter=newSystem.Data.OleDb.OleDbParameter("@content",OleDbType.VarChar);
myParameter.Value=content;
cmd.Parameters.Add(myParameter);
try
...{
connection.Open();
introws=cmd.ExecuteNonQuery();
returnrows;
}
catch(System.Data.OleDb.OleDbExceptionE)
...{
thrownewException(E.Message);
}
finally
...{
cmd.Dispose();
connection.Close();
}
}
}

/**////<summary>
///执行一条计算查询结果语句,返回查询结果(object)。
///</summary>
///<paramname="SQLString">计算查询结果语句</param>
///<returns>查询结果(object)</returns>
publicstaticobjectGetSingle(stringSQLString)
...{
using(OleDbConnectionconnection=newOleDbConnection(connectionString))
...{
using(OleDbCommandcmd=newOleDbCommand(SQLString,connection))
...{
try
...{
connection.Open();
objectobj=cmd.ExecuteScalar();
if((Object.Equals(obj,null))||(Object.Equals(obj,System.DBNull.Value)))
...{
returnnull;
}
else
...{
returnobj;
}
}
catch(System.Data.OleDb.OleDbExceptione)
...{
connection.Close();
thrownewException(e.Message);
}
}
}
}
/**////<summary>
///执行查询语句,返回SqlDataReader
///</summary>
///<paramname="strSQL">查询语句</param>
///<returns>SqlDataReader</returns>
publicstaticOleDbDataReaderExecuteReader(stringstrSQL)
...{
OleDbConnectionconnection=newOleDbConnection(connectionString);
OleDbCommandcmd=newOleDbCommand(strSQL,connection);
try
...{
connection.Open();
OleDbDataReadermyReader=cmd.ExecuteReader();
returnmyReader;
}
catch(System.Data.OleDb.OleDbExceptione)
...{
thrownewException(e.Message);
}

}
/**////<summary>
///执行查询语句,返回DataSet
///</summary>
///<paramname="SQLString">查询语句</param>
///<returns>DataSet</returns>
publicstaticDataSetQuery(stringSQLString)
...{
using(OleDbConnectionconnection=newOleDbConnection(connectionString))
...{
DataSetds=newDataSet();
try
...{
connection.Open();
OleDbDataAdaptercommand=newOleDbDataAdapter(SQLString,connection);
command.Fill(ds,"ds");
}
catch(System.Data.OleDb.OleDbExceptionex)
...{
thrownewException(ex.Message);
}
returnds;
}
}

#endregion

执行带参数的SQL语句#region执行带参数的SQL语句

/**////<summary>
///执行SQL语句,返回影响的记录数
///</summary>
///<paramname="SQLString">SQL语句</param>
///<returns>影响的记录数</returns>
publicstaticintExecuteSql(stringSQLString,paramsOleDbParameter[]cmdParms)
...{
using(OleDbConnectionconnection=newOleDbConnection(connectionString))
...{
using(OleDbCommandcmd=newOleDbCommand())
...{
try
...{
PrepareCommand(cmd,connection,null,SQLString,cmdParms);
introws=cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
returnrows;
}
catch(System.Data.OleDb.OleDbExceptionE)
...{
thrownewException(E.Message);
}
}
}
}

/**////<summary>
///执行一条计算查询结果语句,返回查询结果(object)。
///</summary>
///<paramname="SQLString">计算查询结果语句</param>
///<returns>查询结果(object)</returns>
publicstaticobjectGetSingle(stringSQLString,paramsOleDbParameter[]cmdParms)
...{
using(OleDbConnectionconnection=newOleDbConnection(connectionString))
...{
using(OleDbCommandcmd=newOleDbCommand())
...{
try
...{
PrepareCommand(cmd,connection,null,SQLString,cmdParms);
objectobj=cmd.ExecuteScalar();
cmd.Parameters.Clear();
if((Object.Equals(obj,null))||(Object.Equals(obj,System.DBNull.Value)))
...{
returnnull;
}
else
...{
returnobj;
}
}
catch(System.Data.OleDb.OleDbExceptione)
...{
thrownewException(e.Message);
}
}
}
}

/**////<summary>
///执行查询语句,返回SqlDataReader
///</summary>
///<paramname="strSQL">查询语句</param>
///<returns>SqlDataReader</returns>
publicstaticOleDbDataReaderExecuteReader(stringSQLString,paramsOleDbParameter[]cmdParms)
...{
OleDbConnectionconnection=newOleDbConnection(connectionString);
OleDbCommandcmd=newOleDbCommand();
try
...{
PrepareCommand(cmd,connection,null,SQLString,cmdParms);
OleDbDataReadermyReader=cmd.ExecuteReader();
cmd.Parameters.Clear();
returnmyReader;
}
catch(System.Data.OleDb.OleDbExceptione)
...{
thrownewException(e.Message);
}

}

/**////<summary>
///执行查询语句,返回DataSet
///</summary>
///<paramname="SQLString">查询语句</param>
///<returns>DataSet</returns>
publicstaticDataSetQuery(stringSQLString,paramsOleDbParameter[]cmdParms)
...{
using(OleDbConnectionconnection=newOleDbConnection(connectionString))
...{
OleDbCommandcmd=newOleDbCommand();
PrepareCommand(cmd,connection,null,SQLString,cmdParms);
using(OleDbDataAdapterda=newOleDbDataAdapter(cmd))
...{
DataSetds=newDataSet();
try
...{
da.Fill(ds,"ds");
cmd.Parameters.Clear();
}
catch(System.Data.OleDb.OleDbExceptionex)
...{
thrownewException(ex.Message);
}
returnds;
}
}
}

privatestaticvoidPrepareCommand(OleDbCommandcmd,OleDbConnectionconn,OleDbTransactiontrans,stringcmdText,OleDbParameter[]cmdParms)
...{
if(conn.State!=ConnectionState.Open)
conn.Open();
cmd.Connection=conn;
cmd.CommandText=cmdText;
if(trans!=null)
cmd.Transaction=trans;
cmd.CommandType=CommandType.Text;//cmdType;
if(cmdParms!=null)
...{
foreach(OleDbParameterparmincmdParms)
cmd.Parameters.Add(parm);
}
}

#endregion

}

}

连接数据库 Access Sql 并检测连接
Access
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>
<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
OleDbConnection conn = new OleDbConnection();
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("Northwind.mdb");
conn.Open();
message.Text = conn.State.ToString();
conn.Close();
}
</script>
<html http://www.w3.org/1999/xhtml">http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>连接到Access数据库</title>
</head>
<body>
<form id="form1" runat="server">
<asp:Label ID="message" runat="server"></asp:Label>
//连接成功,会显示Open
</form>
</body>
Sql 与Acess类似,需更改部分如下:
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "Data Source=sql.ourhost.cn;server=sql.ourhost.cn;database=zhu;User Id=zhu;password=zhuyinhong";
conn.Open();

Tags: , ,

Asp.Net技术 | web开发

C#获取与修改HTML DOM元素信息

by 陈少俊 2009.12.11 21:24

用C#和JavaScript交互首先要解决C#读取HTML DOM元素的问题。在System.Windows.Browser命名空间下,有一个HtmlDocument、HtmlPage、HtmlElement等类,可以用来读取HTML DOM元素。其读取方法和JavaScript如出一辙。 

引用内容: //初始化一个document HtmlDocument document = HtmlPage.Document;

//获取一个DOM节点 dom = document.GetElementByID("yourDomId");

//string 获取到HTML DOM元素结点之后,我们就可以获取DOM元素的值了,

例如innerHTML或者innerText或者Value等值了。

例如:引用内容: string s = dom.GetAttribute("value"); 

另外,我们也可以通过C#提供的一些方法来动态改变HTML DOM元素的样式或者值。

例如:引用内容: dom.SetAttribute("innerText", "This is Text"); dom.SetStyleAttribute("left", 40 + "px"); dom.SetStyleAttribute("top", 35 + "px");

Tags: , ,

Asp.Net技术 | web开发 | 计算机

C#读写xml文档

by 陈少俊 2009.12.11 21:24

using(StreamWriter sw = File.CreateText("文件的绝对或相对路径"))
{
    sw.WriteLine(textBox1.Text);
    sw.WriteLine(textBox2.Text);
}

软件启动时执行:
using(StreamReader sr = File.OpenText("文件的绝对或相对路径"))  //这个与前面的一致
{
    string username = sr.ReadLine();
    string password = sr.ReadLine();
}

Tags:

Asp.Net技术 | web开发



关于博主

博主——陈少俊

   曾经的我们并不相识,但是网络让我们联系了起来,人生本来就是这样,有许多的必然和偶然,我不能做太多,只 是分享我自己拥有的,看到的,听到的。我致力于网站开发,系统建设,推广自己,谢谢大家的关心和爱护。
现就职于汽车时尚传媒有限公司网络部,中国汽车时尚网:http://www.86che.com/
汽车时尚网分类说明:汽车时尚网分类中所有新闻来源于中国汽车时尚网
汽车时尚报分类说明:汽车时尚报分类中所有新闻均为汽车时尚报出刊报纸中所有内容。
汽车时尚报电子版从《汽车时尚报》第493期开始正式免费上线,具体新闻内容请查阅【汽车时尚报】分类。
联系电话:13551107754,(028)68116678


Calendar

<<  September 2010  >>
MonTueWedThuFriSatSun
303112345
6789101112
13141516171819
20212223242526
27282930123
45678910

在日历中查看文章

最近的评论

Comment RSS

声明

本博所有网友评论不代表本博立场,版权归其作者所有。

© Copyright 2009  All Rights Piao Blog
蜀ICP备09038546号

其他工具软件及应用

by 百度 2010.7.27 11:12 更新
软件类

交友招商类