BLOG zzy.my

合抱之木, 生于毫末; 九层之台, 起于累土; 千里之行, 始于足下。

IIS Express ArgumentOutOfRangeException

重装了VS,调试网站,IIS Express 打开时遇到如下错误。

“/”应用程序中的服务器错误。


指定的参数已超出有效值的范围。
参数名: site

说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 
异常详细信息: System.ArgumentOutOfRangeException:指定的参数已超出有效值的范围。
参数名: site

源错误: 

[更多...]

域用户自助修改AD属性Web应用 - ADCustomWeb

AD 用户属性自定义修改 Web 网站

Web 应用程序 最新版本: v 0.9.7

ADConfigSet   最新版本: v 1.1.0.702

 

这是一个 Web 应用,一个网站。主要功能是,在建有微软活动目录(AD)的环境
中建立一个Web网站,可以让用户在网站中修改管理员定义的 AD属性值,如 姓名、
电话、地址、照片、个人域密码 等。

用户可以访问网站修改自己的AD属性,比如修改了自己照片,如果企业部署了
Exchange、Lync,那么用户登录 Outlook2010/Lync 将会同步自己的照片。

 

本程序个人开发、测试。 可免费下载使用,版权所有 zzy.my
程序已经打包,三步完成部署,部署仅需 2 分钟

 

部署完成后用户登录界面 概览 (点击查看大图)

点击可查看大图

 

[更多...]

SendMessage 定义的常量

收集于网络

#region 基本消息
public const int WM_NULL = 0x0000;
public const int WM_CREATE = 0x0001;
public const int WM_DESTROY = 0x0002;
public const int WM_MOVE = 0x0003;
public const int WM_SIZE = 0x0005;
public const int WM_ACTIVATE = 0x0006;
public const int WM_SETFOCUS = 0x0007;
...
...
...

 

[更多...]

C#.net TextBox 同步滚动 实现行号

    一般的,我们做一个带行号的编辑控件,通常都使用RichTextBox,个人觉得至少有一点是RichTextBox有VScroll事件,方便重绘行号。 网络上常见的做法都是 RichTextBox + Panel 来实现。 事实上在我做这类控件时,也是用这种方法,毕竟成熟的例子很多,在网上搜索。

     其实也属于突发奇想吧,为 TextBox 实现带行号功能。在网上查了查,发现例子很少,通常都是考虑两个TextBox。好不容易找到一个,发现它实现的方法太不讲究...  为了让左边的TextBox显示行号,居然用循环内容行数来写行号... 

 

[更多...]

Session禁用和单个启用

Session禁用和单个启用.

关闭 Session 应使用

<system.web>
<pages enableSessionState=”false” />
</system.web>

这样整个站点的页面默认是不打开Session的。
在你需要的页面的 使用如下 Page 设置
<%@ Page EnableSessionState=”True”%>

或者在你需要打开Session的目录下,设置一个 web.config
<configuration>
<system.web>
<pages enableSessionState=”true” />
</system.web>
</configuration>

 

[更多...]

ASP.NET 项目编译的 App_Code.dll改名

1. 在App_Code下面新建一个文件夹,如MyProject。 然后将App_Code下的.cs文件移动到MyProject中.

2. 修改 web.config 配置
在compilation节点下,添加:

<codeSubDirectories>
  <add directoryName="MyProject"/>
</codeSubDirectories>

发布网站后即可。

3. 将项目上传到网站后可删除web.config 中 2 的配置

 

[更多...]

ASP.NET 使用JavaScript获取FileUpload 文件大小

后台代码中,虽然可以通过FileContent.Length来获取大小,不过这种方法应尽量避免使用。

服务器端代码会在服务器端运行,所以用该方法验证会发现很慢。因为页面首先会把文件上传到服务器临时空间,由服务器再获取文件大小。所以效率很低,严重占用带宽。方法不可取。尤其网速不好的情况下,客户上传了半天,才弹出个文件太大的提示,不崩溃才怪。

因此,首选js代码。

下面是正文:

首先在页面添加一个FileUpLoad控件。(再次以idfudPolicy为例

然后添加一个上传Button。示例界面如图。

 

[更多...]

Assembly generation failed -- 程序集生成失败 -- 引用的程序集没有强名称

什么叫强命名程序集?
我们知道,以前在Windows下开发程序时常会遭遇著名的“DLL Hell”问题,即动态链接库的向后兼容问题。微软在.Net产生前曾尝试使用COM组件的方式来解决DLL Hell问题,即使用Guid来唯一的标识每一个COM组件。但是,实际上使用COM组件(包括版本升级)也是一件颇为麻烦的事:为了运行COM组件就必 须在组册表中对其进行注册,重新编译有可能破坏Guid从而导致原来引用此COM组件的程序不能正确运行,等等。

在.Net中,微软引入了一种新的解决方案:强命名程序集(Strong Name),以及与之配套的全局程序集缓存(GAC)来解决这个问题。

我们知道,.Net使用Name、Version、Culture、PublicToken四个属性来唯一标识一个程序集,而不同产品前三个属性 (Name、Version和Culture)完全相同的情况是有可能发生的,如此一来,这唯一标识程序集可重任就落到PublicToken的头上了。 强命名的程序集正是使用RSA来保证PublicToken的唯一性,因为在理论上,非对称算法RSA生成的公钥/私钥对不会重复。.Net正是通过在编 译项目时将指定的公钥/私钥对写入程序集来保证其唯一性。

 

[更多...]

在可以调用 OLE 之前 错误

错误内容:在可以调用 OLE 之前,必须将当前线程设置为单线程单元(STA)模式。请确保您的 Main 函数带有 STAThreadAttribute 标记
引起原因:多线程异步调用或者创建新窗体时,出现该错误

解决方法:

1、修改main函数 ,前面添加[STAThread]标示(貌似IDE默认)
[STAThread]
static void Main()

 

[更多...]