Yuanming님의 프로필我的音乐历程사진블로그리스트 도구 도움말

我的音乐历程

Favourate Music Report

Lee Yuanming

직업
지역
관심 분야
음악가: 

欢迎欢迎

Welcome to my space, my friends.

  ACG music,除了音乐还是音乐。因为有了音乐,人生才变得如此美好。欢迎同好多多留言哦!
8월 4일

cnBeta.COM_Windows Vista 新闻主题_ WinSAT - Vista中的又一彩蛋

WinSAT是什么? 想必大家都用过Windows Vista中的“Windows体验索引”(现在我都觉得这个名字怪怪的),就是Vista系统中用于硬件评分的那个东东。WinSAT是Windows System Assessment Tool的简称,并作为一个基本工具存在于Vista系统当中。此东东主要用于评估Vista系统性能。

怎样来用WinSAT?

其实WinSAT不仅只是个命令行程序,她是Windows Vista为我们开放的一个标准接口。我们可以通过调用她(Win32_WinSAT类)来实现自己的应用。

例如,我就写了一个类似于Windows体验索引的脚本:

未标题-1

点我下载脚本

WinSAT彩蛋

WinSAT可谓Vista中的一个彩蛋,我们通过管理员权限打开cmd命令提示符来执行如入命令便可以看到惊人的特效:

winsat aurora

1

winsat d3d -texshader -totalobj 15

2

winsat d3d -objs C(20) -texshader -totalobj 50

3

winsat d3d -totalobj 20 -objs C(20) -totaltex 10 -texpobj C(1) -alushader -noalpha -v -time 10

4

winsat d3d -totalobj 20 -objs C(20) -totaltex 10 -texpobj C(10) -alushader -v -time 10

5

cnBeta.COM_Windows Vista 新闻主题_ WinSAT - Vista中的又一彩蛋

7월 6일

The hybrid sleep feature and the hibernation feature in Windows Vista may become unavailable after you use the Disk Cleanup Tool

SYMPTOMS

After you use the Disk Cleanup Tool in Windows Vista, you may experience the following symptoms:

•You cannot see the Hibernate option in Power Options.

•When you use the sleep feature, the computer does not recover its settings if power is lost.

Back to the top

CAUSE

This problem occurs when the Disk Cleanup Tool disables the hibernation file. The hibernation file must be enabled to access the hybrid sleep feature and the hibernation feature in Windows Vista.
When the hibernation file is disabled, and the hybrid sleep feature is enabled, a backup of open programs and open files will not be saved to the disk when you use the sleep feature in Windows Vista. Additionally, if the computer loses power while the Windows is in sleep mode, open programs and open files will not be recovered, and any unsaved work will be lost.

Back to the top

RESOLUTION

To resolve this problem in Windows Vista, run the powercfg -h on command at a command prompt to enable the hibernate feature and the hybrid sleep feature. To run this command, follow these steps:

1.Click Start Start button , click All Programs, and then click Accessories.

2.Right-click Command Prompt, and then click Run as administrator. User Account Control permission If you are prompted for an administrator password or for confirmation, type the password, or click Continue.

3.Type powercfg -h on, and then press ENTER.

Back to the top


APPLIES TO

•Windows Vista Enterprise 64-bit Edition

•Windows Vista Home Basic 64-bit Edition

•Windows Vista Home Premium 64-bit Edition

•Windows Vista Ultimate 64-bit Edition

•Windows Vista Business

•Windows Vista Business 64-bit Edition

•Windows Vista Enterprise

•Windows Vista Home Basic

•Windows Vista Home Basic Beta

•Windows Vista Home Premium

•Windows Vista Starter

•Windows Vista Ultimate

Back to the top

Keywords:

kbexpertisebeginner kbtshoot kbprb KB928897

The hybrid sleep feature and the hibernation feature in Windows Vista may become unavailable after you use the Disk Cleanup Tool

6월 24일

获取SqlServer2005表结构(字段,主键,外键,递增,描述) - 楚旋 - 博客园

1.获取表的基本字段属性

--获取SqlServer中表结构
SELECT syscolumns.name,systypes.name,syscolumns.isnullable,
syscolumns.length
FROM syscolumns, systypes
WHERE syscolumns.xusertype = systypes.xusertype
AND syscolumns.id = object_id('你的表名')

运行效果

2.如果还想要获取字段的描述信息则

--获取SqlServer中表结构 主键,及描述
declare @table_name as varchar(max)
set @table_name = '你的表名'
select sys.columns.name, sys.types.name, sys.columns.max_length, sys.columns.is_nullable,
  (select count(*) from sys.identity_columns where sys.identity_columns.object_id = sys.columns.object_id and sys.columns.column_id = sys.identity_columns.column_id) as is_identity ,
  (select value from sys.extended_properties where sys.extended_properties.major_id = sys.columns.object_id and sys.extended_properties.minor_id = sys.columns.column_id) as description
from sys.columns, sys.tables, sys.types where sys.columns.object_id = sys.tables.object_id and sys.columns.system_type_id=sys.types.system_type_id and sys.tables.name=@table_name order by sys.columns.column_id

运行效果

3.单独查询表的递增字段

--单独查询表递增字段
select [name] from syscolumns where
id=object_id(N'你的表名') and COLUMNPROPERTY(id,name,'IsIdentity')=1

运行效果

4.获取表的主外键

--获取表主外键约束
exec sp_helpconstraint   '你的表名' ;

运行效果

获取SqlServer2005表结构(字段,主键,外键,递增,描述) - 楚旋 - 博客园

5월 7일

CSS的十八般技巧 w3cn.org

 

一.使用css缩写

使用缩写可以帮助减少你CSS文件的大小,更加容易阅读。css缩写的主要规则请参看《常用css缩写语法总结》,这里就不展开描述。

二.明确定义单位,除非值为0

忘记定义尺寸的单位是CSS新手普遍的错误。在HTML中你可以只写width="100",但是在CSS中,你必须给一个准确的单位,比如:width:100px width:100em。只有两个例外情况可以不定义单位:行高和0值。除此以外,其他值都必须紧跟单位,注意,不要在数值和单位之间加空格。

三.区分大小写

当在XHTML中使用CSS,CSS里定义的元素名称是区分大小写的。为了避免这种错误,我建议所有的定义名称都采用小写。

class和id的值在HTML和XHTML中也是区分大小写的,如果你一定要大小写混合写,请仔细确认你在CSS的定义和XHTML里的标签是一致的。

四.取消class和id前的元素限定

当你写给一个元素定义class或者id,你可以省略前面的元素限定,因为ID在一个页面里是唯一的,而clas s可以在页面中多次使用。你限定某个元素毫无意义。例如:

div#content { /* declarations */ }
fieldset.details { /* declarations */ }

可以写成

#content { /* declarations */ }
.details { /* declarations */ }

这样可以节省一些字节。

五.默认值

通常padding的默认值为0,background-color的默认值是transparent。但是在不同的浏览器默认值可能不同。如果怕有冲突,可以在样式表一开始就先定义所有元素的margin和padding值都为0,象这样:

* {
margin:0;
padding:0;
}

六.不需要重复定义可继承的值

CSS中,子元素自动继承父元素的属性值,象颜色、字体等,已经在父元素中定义过的,在子元素中可以直接继承,不需要重复定义。但是要注意,浏览器可能用一些默认值覆盖你的定义。

七.最近优先原则

如果对同一个元素的定义有多种,以最接近(最小一级)的定义为最优先,例如有这么一段代码

Update: Lorem ipsum dolor set

在CSS文件中,你已经定义了元素p,又定义了一个class"update"

p {
margin:1em 0;
font-size:1em;
color:#333;
}
.update {
font-weight:bold;
color:#600;
}

这两个定义中,class="update"将被使用,因为class比p更近。你可以查阅W3C的《 Calculating a selector’s specificity》 了解更多。

八.多重class定义

一个标签可以同时定义多个class。例如:我们先定义两个样式,第一个样式背景为#666;第二个样式有10 px的边框。

.one{width:200px;background:#666;}
.two{border:10px solid #F00;}

在页面代码中,我们可以这样调用

<div class="one two"></div>

这样最终的显示效果是这个div既有#666的背景,也有10px的边框。是的,这样做是可以的,你可以尝试一下。

九.使用子选择器(descendant selectors)

CSS初学者不知道使用子选择器是影响他们效率的原因之一。子选择器可以帮助你节约大量的class定义。我们来看下面这段代码:

<div id="subnav">
<ul>
<li class="subnavitem"> <a href="#" class="subnavitem">Item 1</a></li>>
<li class="subnavitemselected"> <a href="#" class="subnavitemselected"> Item 1</a> </li>
<li class="subnavitem"> <a href="#" class="subnavitem"> Item 1</a> </li>
</ul>
</div>

这段代码的CSS定义是:

div#subnav ul { /* Some styling */ }
div#subnav ul li.subnavitem { /* Some styling */ }
div#subnav ul li.subnavitem a.subnavitem { /* Some styling */ }
div#subnav ul li.subnavitemselected { /* Some styling */ }
div#subnav ul li.subnavitemselected a.subnavitemselected { /* Some styling */ }

你可以用下面的方法替代上面的代码

<ul id="subnav">
<li> <a href="#"> Item 1</a> </li>
<li class="sel"> <a href="#"> Item 1</a> </li>
<li> <a href="#"> Item 1</a> </li>
</ul>

样式定义是:

#subnav { /* Some styling */ }
#subnav li { /* Some styling */ }
#subnav a { /* Some styling */ }
#subnav .sel { /* Some styling */ }
#subnav .sel a { /* Some styling */ }

用子选择器可以使你的代码和CSS更加简洁、更加容易阅读。

十.不需要给背景图片路径加引号

为了节省字节,我建议不要给背景图片路径加引号,因为引号不是必须的。例如:

background:url("images/***.gif") #333;

可以写为

background:url(images/***.gif) #333;

如果你加了引号,反而会引起一些浏览器的错误。

十一.组选择器(Group selectors)

当一些元素类型、class或者id都有共同的一些属性,你就可以使用组选择器来避免多次的重复定义。这可以节省不少字节。

例如:定义所有标题的字体、颜色和margin,你可以这样写:

h1,h2,h3,h4,h5,h6 {
font-family:"Lucida Grande",Lucida,Arial,Helvetica,sans-serif;
color:#333;
margin:1em 0;
}

如果在使用时,有个别元素需要定义独立样式,你可以再加上新的定义,可以覆盖老的定义,例如:

h1 { font-size:2em; }
h2 { font-size:1.6em; }

十二.用正确的顺序指定链接的样式

当你用CSS来定义链接的多个状态样式时,要注意它们书写的顺序,正确的顺序是::link :visited :hover :active。抽取第一个字母是"LVHA",你可以记忆成"LoVe HAte"(喜欢讨厌)。为什么这么定义,可以参考Eric Meyer的《Link Specificity》。

如果你的用户需要用键盘来控制,需要知道当前链接的焦点,你还可以定义:focus属性。:focus属性的效果也取决与你书写的位置,如果你希望聚焦元素显示:hover效果,你就把:focus写在:hover前面;如果你希望聚焦效果替代:hover效果,你就把:focus放在:hover后面。

十三.清除浮动

一个非常常见的CSS问题,定位使用浮动的时候,下面的层被浮动的层所覆盖,或者层里嵌套的子层超出了外层的范围。

通常的解决办法是在浮动层后面添加一个额外元素,例如一个div或者一个br,并且定义它的样式为clear: both。这个办法有一点牵强,幸运的是还有一个好办法可以解决,参看这篇文章《How To Clear Floats Without Structural Markup》(注:本站将尽快翻译此文)。

上面2种方法可以很好解决浮动超出的问题,但是如果当你真的需要对层或者层里的对象进行clear的时候怎么办?一种简单的方法就是用overflow属性,这个方法最初的发表在《Simple Clearing of Floats》,又在《Clearance》和《Super simple clearing floats》中被广泛讨论。

上面那一种clear方法更适合你,要看具体的情况,这里不再展开论述。另外关于float的应用,一些优秀的文章已经说得很清楚,推荐你阅读:《Floatutorial》、《Containing Floats》和《Float Layouts

十四.横向居中(centering)

这是一个简单的技巧,但是值得再说一遍,因为我看见太多的新手问题都是问这个:CSS如何横向居中?你需要定义元素的宽,并且定义横向的margin,如果你的布局包含在一个层(容器)中,就象这样:

你可以这样定义使它横向居中:

#wrap {
width:760px; /* 修改为你的层的宽度 */
margin:0 auto;
}

但是IE5/Win不能正确显示这个定义,我们采用一个非常有用的技巧来解决:用text-align属性。就象这样:

body {
text-align:center;
}
#wrap {
width:760px; /* 修改为你的层的宽度 */
margin:0 auto;
text-align:left;
}

第一个body的text-align:center; 规则定义IE5/Win中body的所有元素居中(其他浏览器只是将文字居中) ,第二个text-align:left;是将#warp中的文字居左。

十五.导入(Import)和隐藏CSS

因为老版本浏览器不支持CSS,一个通常的做法是使用@import技巧来把CSS隐藏起来。例如:

@import url("main.css");

然而,这个方法对IE4不起作用,这让我很是头疼了一阵子。后来我用这样的写法:

@import "main.css";

这样就可以在IE4中也隐藏CSS了,呵呵,还节省了5个字节呢。想了解@import语法的详细说明,可以看这里《centricle’s css filter chart

十六.针对IE的优化

有些时候,你需要对IE浏览器的bug定义一些特别的规则,这里有太多的CSS技巧(hacks),我只使用其中的两种方法,不管微软在即将发布的IE7 beta版里是否更好的支持CSS,这两种方法都是最安全的。

  • 1.注释的方法
    • (a)在IE中隐藏一个CSS定义,你可以使用子选择器(child selector):
      html>body p {
      /* 定义内容 */
      }
    • (b)下面这个写法只有IE浏览器可以理解(对其他浏览器都隐藏)
      * html p {
      /* declarations */
      }
    • (c)还有些时候,你希望IE/Win有效而IE/Mac隐藏,你可以使用"反斜线"技巧:
      /* \*/
      * html p {
      declarations
      }
      /* */
  • 2.条件注释(conditional comments)的方法

    另外一种方法,我认为比CSS Hacks更加经得起考验就是采用微软的私有属性条件注释(conditional comments)。用这个方法你可以给IE单独定义一些样式,而不影响主样式表的定义。就象这样:

    <!--[if IE]>
    <link rel="stylesheet" type="text/css" href="ie.css" />
    <![endif]-->

十七.调试技巧:层有多大?

当调试CSS发生错误,你就要象排版工人,逐行分析CSS代码。我通常在出问题的层上定义一个背景颜色,这样就能很明显看到层占据多大空间。有些人建议用border,一般情况也是可以的,但问题是,有时候border 会增加元素的尺寸,border-top和boeder-bottom会破坏纵向margin的值,所以使用background更加安全些。

另外一个经常出问题的属性是outline。outline看起来象boeder,但不会影响元素的尺寸或者位置。只有少数浏览器支持outline属性,我所知道的只有Safari、OmniWeb、和Opera。

十八.CSS代码书写样式

在写CSS代码的时候,对于缩进、断行、空格,每个人有每个人的书写习惯。在经过不断实践后,我决定采用下面这样的书写样式:

selector1,
selector2 {
property:value;
}

当使用联合定义时,我通常将每个选择器单独写一行,这样方便在CSS文件中找到它们。在最后一个选择器和大括号{之间加一个空格,每个定义也单独写一行,分号直接在属性值后,不要加空格。

CSS的十八般技巧 w3cn.org

SQL Server 2005中设置Reporting Services发布web报表的匿名访问 - 志坚苍狼 - 博客园

一位朋友提出个问题:集成到SQL Server 2005中的Reporting Services已经将报表模板发布到IIS服务器,客户端通过浏览器访问时,默认会弹出Windows集成身份验证的对话框。如果在IIS配置里面把允许匿名(IUSR_**)访问的选项勾选,客户端再次访问的时候,会提示IUSR_** 访问权限不足。

    对于这个问题,除了要设置IIS允许匿名访问外,还需要设置Reporting Services站点的访问权限和SQL Server中数据源的用户访问权限。

    下面我将把需要做的步骤列出来,大家注意前提是使用Visual Studio .NET 2005 已经正确的发布了Reporting Services制作的报表模板到IIS服务器。

第一步:在运行IIS的Web服务器的本地访问http://localhost/reports ,这是Reporting Services的管理站点,在Properties(属性)页面下添加一个只有Browser(浏览者)权限的新Role(角色)。注意新角色的用户名称即IUSR_** (匿名用户)。

1、 点击“New Role Assignment”(分配新角色)

2、 弹出的IE窗口中,Group or user name(组或用户名) 文本框输入IUSR_** (匿名用户)。

3、 勾选Browser(浏览者)权限,点OK按钮确定。

4、 返回到http://localhost/reports 页面中会新出现添加的Role(角色)。


第二步:除了要设置Reporting Services的IIS站点能允许IUSR_**(匿名用户)访问外,首先需要设置SQL Server 2005 中相应的数据库能允许IUSR_**(匿名用户)有只读的访问权限。

在运行SQL Servier 2005 的数据库服务器中,打开Microsoft SQL Server Management Studio。在Object Explorer(对象浏览器)中找到Security(安全)目录下的Logins(登录),在Logins(登录)图标上面单击右键快捷菜单上,选择New Login…(新登录),弹出的对话框中设置。

1、 右键菜单选择New Login…(新登录)。

2、 在Windows authentication 中的Login Name(登录名)文本框,输入IUSR_**(匿名用户)。

3、 在Defaults(默认)的Database(数据库)下拉列表框找到Reporting Services制作的报表模板的数据源数据库。

4、 在Select a page(选择一个页面)列表中点击“Database Access”(数据库访问)。

第三步:在Data Access页面中,在Databases accessible by this login(数据库默认登录)选择Reporting Services制作的报表模板的数据源数据库。

1、 选择数据库

2、 OK确定

第四步:还是在Microsoft SQL Server Management Studio中,找到Reporting Services的数据源数据库,在“Security”(安全)下的“Users”(用户)下,找到刚才添加的IUSR_**(匿名用户)。设置他对该数据库的访问权限。

1、 在IUSR_**(匿名用户)上右键菜单选Properties(属性)。

2、 弹出的对话框中选择Permissions(许可)。

3、 点击“Add Objects…”(增加对象)。

4、 再次弹出的对话框中选择“Add objects of types”。

还是第四步:弹出的对话框中选Databases(数据库的)。

1、 Select Object Types(选择对象类型)对话框选择“Databases”(数据库的)。

2、 OK确定。

还是第四步:选择IUSR_**(匿名用户)对该数据库许可的操作。

1、 在Permissions for *** 列表中,找到Select,勾选。(注:你会看到Connect后面是默认勾选的,因为前面设置的默认登录到数据库就是该数据库)

2、 OK确定。

第五步:打开IIS管理器,设置ReportServer虚拟目录为匿名访问。

1、 打开IIS管理器,在ReportServer虚拟目录上单击邮件选择“Properties”(属性)。

2、 在“目录安全性”页面,找到“身份验证和访问控制”,点击“编辑...”。

3、 在弹出的“身份验证方法”对话框,勾选“启用匿名访问”。

4、 在“用户访问需经过身份验证”的位置,默认是选中“集成Windows身份验证”。在这儿可以不用修改它。如果去掉了“集成Windows身份验证”前面的勾选,则本机(IIS服务器所在机器)对Reporting Services Web站点的访问也成了匿名访问。

5、 OK确定。

第六步:再通过其他的客户端机器访问Reporting Services Web站点,则不再出现Windows用户登录窗口。对Reporting Services Web站点的访问已经更改为匿名用户的访问。

但是注意,有个问题会同时出现。我们再次访问http://localhost/reports 时发现,将不能对Reporting Services的权限分配。打开http://localhost/reports 能够看到的是只有Contents(内容)一个分类页面的选项,“Properties”(属性)选项则不会出现了。这该是Reporting Services产品刻意设计的,因为所有的用户都可以匿名访问Web站点了,权限如果放开了随便改肯定不行。

再一想,http://localhost/reports 和 http://localhost/reportserver 这两个虚拟目录对应的物理目录是不同的。一个http://localhost/reports 对应的是C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportManager ;而http://localhost/reportserver 对应的是C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer。刚才对\reportserver的匿名访问权限的修改又怎么影响到\reports 了呢??

如果再需要修改\reports的“Properties”(属性),唯一能做的就是重新打开IIS的管理器,去掉\reportserver中的“匿名访问”选项,再来修改。修改后,再将\reportserver改为“匿名访问”。

SQL Server 2005中设置Reporting Services发布web报表的匿名访问 - 志坚苍狼 - 博客园

On a computer that has Microsoft Data Access Components 2.8 installed, an application receives an incorrect value for the identity column from a SQL Server 2005 database

SYMPTOMS

Consider the following scenario. You create a table that has an identity column in a Microsoft SQL Server 2005 database. You configure a merge replication on the table. An application uses Microsoft ActiveX Data Objects (ADO) to insert a row in the table. Then, the application retrieves the inserted row. However, an incorrect value is returned for the identity column.
This problem occurs when the computer that runs the application has one of the following installed:


Windows Server 2003


Windows XP


Microsoft Data Access Components 2.8 (MDAC 2.8)

This problem does not occur in a Microsoft SQL Server 2000 database.

Back to the top

CAUSE

The replication process creates insert triggers in the table. When data is inserted in the table, the insert triggers use the @@IDENTITY variable instead of the SCOPE_IDENTITY function. Therefore, the @@IDENTITY variable may return an identity value that is not in the current table.

Back to the top

RESOLUTION

Hotfix information
Windows XP
A supported hotfix is now available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next Windows XP service pack that contains this hotfix.
To resolve this problem, submit a request to Microsoft Online Customer Services to obtain the hotfix. To submit an online request to obtain the hotfix, visit the following Microsoft Web site:

http://go.microsoft.com/?linkid=6294451 (http://go.microsoft.com/?linkid=6294451)

Note If additional issues occur or any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. To create a separate service request, visit the following Microsoft Web site:

http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)

Prerequisites
To apply this hotfix, you must have Windows XP Service Pack 2 installed on the computer. For more information, click the following article number to view the article in the Microsoft Knowledge Base:

322389 (http://support.microsoft.com/kb/322389/) How to obtain the latest Windows XP service pack

Restart requirement
You must restart the computer after you apply this hotfix.
Hotfix replacement information
This hotfix does not replace any other hotfixes.
File information
The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.

File name
File version
File size
Date
Time
Platform

Msadce.dll
2.81.1131.0
331,776
23-Aug-2007
10:09
x86

Windows Server 2003
A supported hotfix is now available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next Windows Server 2003 service pack that contains this hotfix.
To resolve this problem, submit a request to Microsoft Online Customer Services to obtain the hotfix. To submit an online request to obtain the hotfix, visit the following Microsoft Web site:

http://go.microsoft.com/?linkid=6294451 (http://go.microsoft.com/?linkid=6294451)

Note If additional issues occur or any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. To create a separate service request, visit the following Microsoft Web site:

http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)

Prerequisites
To apply this hotfix, you must have Windows Server 2003 Service Pack 1 or Windows Server 2003 Service Pack 2 installed on the computer. For more information, click the following article number to view the article in the Microsoft Knowledge Base:

889100 (http://support.microsoft.com/kb/889100/) How to obtain the latest service pack for Windows Server 2003

Restart requirement
You must restart the computer after you apply this hotfix.
Hotfix replacement information
This hotfix does not replace any other hotfixes.
File information
The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.
Windows Server 2003 with Service Pack 1, x86-based versions

File name
File version
File size
Date
Time
Platform

Msadce.dll
2.82.2996.0
356,352
23-Aug-2007
02:19
x86

Windows Server 2003 with Service Pack 2, x86-based versions

File name
File version
File size
Date
Time
Platform

Msadce.dll
2.82.4137.0
356,352
23-Aug-2007
02:10
x86

Windows Server 2003 with Service Pack 1, Itanium-based versions

File name
File version
File size
Date
Time
Platform
SP requirement
Service branch

Msadce.dll
2.82.2996.0
1,212,416
22-Aug-2007
13:30
IA-64
SP1
Not Applicable

Wmsadce.dll
2.82.2996.0
356,352
22-Aug-2007
13:30
x86
SP1
WOW

Windows Server 2003 with Service Pack 2, Itanium-based versions

File name
File version
File size
Date
Time
Platform
SP requirement
Service branch

Msadce.dll
2.82.4137.0
1,212,416
22-Aug-2007
13:37
IA-64
SP2
Not Applicable

Wmsadce.dll
2.82.4137.0
356,352
22-Aug-2007
13:37
x86
SP2
WOW

Windows Server 2003, x64-based versions

File name
File version
File size
Date
Time
Platform
SP requirement
Service branch

Msadce.dll
2.82.2996.0
622,592
22-Aug-2007
13:30
x64
SP1
Not Applicable

Wmsadce.dll
2.82.2996.0
356,352
22-Aug-2007
13:30
x86
SP1
WOW

Windows Server 2003 with Service Pack 2, x64-based versions

File name
File version
File size
Date
Time
Platform
SP requirement
Service branch

Msadce.dll
2.82.4137.0
622,592
22-Aug-2007
13:37
x64
SP2
Not Applicable

Wmsadce.dll
2.82.4137.0
356,352
22-Aug-2007
13:37
x86
SP2
WOW

Microsoft Data Access Components 2.8
A supported hotfix is now available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next MDAC 2.8 service pack that contains this hotfix.
To resolve this problem, submit a request to Microsoft Online Customer Services to obtain the hotfix. To submit an online request to obtain the hotfix, visit the following Microsoft Web site:

http://go.microsoft.com/?linkid=6294451 (http://go.microsoft.com/?linkid=6294451)

Note If additional issues occur or any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. To create a separate service request, visit the following Microsoft Web site:

http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)

Prerequisites
To apply this hotfix, you must have MDAC 2.8 Service Pack 1 installed on the computer.
Restart requirement
You must restart the computer after you apply this hotfix.
Hotfix replacement information
This hotfix does not replace any other hotfixes.
File information
The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.

File name
File version
File size
Date
Time
Platform

Msadce.dll
2.81.1131.0
319,488
17-Aug-2007
09:58
x86

Msadco.dll
2.81.1131.0
143,360
17-Aug-2007
09:58
x86

Msado15.dll
2.81.1131.0
524,288
17-Aug-2007
09:58
x86

Msadomd.dll
2.81.1131.0
180,224
17-Aug-2007
09:58
x86

Msadox.dll
2.81.1131.0
200,704
17-Aug-2007
09:58
x86

Msdasql.dll
2.81.1131.0
307,200
17-Aug-2007
09:58
x86

Msjro.dll
2.81.1131.0
102,400
17-Aug-2007
09:58
x86

Odbcbcp.dll
2000.85.1131.0
24,576
17-Aug-2007
09:58
x86

Oledb32.dll
2.81.1131.0
471,040
17-Aug-2007
09:58
x86

Sqloledb.dll
2000.85.1131.0
520,192
17-Aug-2007
09:58
x86

Sqlsrv32.dll
2000.85.1131.0
438,272
17-Aug-2007
09:58
x86

Back to the top

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

Back to the top

MORE INFORMATION

The SCOPE_IDENTITY function and the @@IDENTITY variable return the last identity values that are generated in any table in the current session. However, the SCOPE_IDENTITY function returns values that are inserted only within the current scope. The @@IDENTITY variable does not limit the insertion to a specific scope.
For example, assume that the database contains a Table1 and a Table2. Both tables have identity columns. An insert trigger is defined in Table1. When a row is inserted in Table1, the trigger inserts a copy of the row in Table2. This scenario involves the following two scopes:


Insertion in Table1


Insertion in Table2 by the trigger

In this scenario, the @@IDENTITY variable and the SCOPE_IDENTITY function return different values when a row is inserted in Table1. The @@IDENTITY variable returns the last identity column value that is inserted across any scopes in the current session. In this case, the @@IDENTITY variable returns the identity value that is inserted in Table2. However, the SCOPE_IDENTITY function returns the identity value that is inserted in Table1, because the SCOPE_IDENTITY function returns the value that is last inserted in the same scope. The SCOPE_IDENTITY function returns the NULL value if the function is invoked before any INSERT statements that are made to an identity column occur in the scope.
For more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:

824684 (http://support.microsoft.com/kb/824684/LN/) Description of the standard terminology that is used to describe Microsoft software updates

On a computer that has Microsoft Data Access Components 2.8 installed, an application receives an incorrect value for the identity column from a SQL Server 2005 database

ASP.NET Debugging : ASP.NET Tips: What to gather to troubleshoot – part 3 – Crash

Defining an IIS Crash

A Crash in IIS occurs when an IIS process (INETINFO.EXE, DLLHOST.EXE, W3WP.EXE) terminates unexpectedly. A Crash typically happens when there is an Unhandled Exception caused by an Access Violation, Stack Overflow, etc. In these situations, the operating system catches the exception and terminates the process.

Dr. Watson is the default debugger to monitor for process failures in Windows. It can generate a Dump File and a Log File to document a failure in a process. Run drwtsn32 from Start -> Run to view the settings and file location. You can then look at the drwtsn32.log and user.dmp files.

To troubleshoot, we attach a debugger to the process and catch the exception before the operating system.

Troubleshooting Steps

1. Install the Debug Diagnostic tool

http://www.iis.net/downloads/default.aspx?tabid=34&g=6&i=1286

The default install path is C:\Program Files\DebugDiag and can be changed during the installation.

2. Check Leave Running When Idle (IIS5, IIS5.1) with the following steps:

a) Open Component Services (Start -> Programs -> Administrative Tools -> Component Services)

b) Expand Component Services, expand Computers, expand My Computer, and expand COM+ Applications

c) For any custom packages or web sites/directories:

   i) Right-click and choose Properties

   ii) Go to the Advanced Tab

   iii) Check Leave Running when Idle

   iv) Click OK

3. Uncheck Debug Exception Catching (IIS5 and IIS5.1) with the following steps:

a) Open the MMC for IIS

b) Right-click the computer name and click Properties

c) Click the Edit button for the Master WWW properties

d) Go to the Home Directory tab

e) Click the Configuration button towards the bottom

f) Go to the Process Options tab and uncheck Enable Debug Exception Catching

g) Click OK

4. Disable Health Monitoring (IIS6) with the following steps:

a) Open the MMC for IIS and expand Application Pools

b) Right-click the Application Pool and click Properties

c) Recycling tab: Uncheck all Recycle worker process settings

d) Performance tab: Uncheck Shutdown worker processes after being idle for

e) Health tab: Uncheck Enable rapid-fail protection and Enable pinging

f) Click OK

5. Restart IIS

6. Create a Crash Rule with the following steps:

IIS5

a) Open DebugDiag (Start -> Programs –> Debug Diagnostics Tool 1.1)

b) Select Crash and click Next

c) Select the desired Target Type and click Next

d) Click Breakpoints…

e) Click Add Breakpoint…

f) For Breakpoint Expression, select ComSvcs!ComSvcsExceptionFilter

g) For Action Type, select Full Userdump and click OK

h) Click Save and Close and click Next

i) Click Next for Rule Name. The Userdump Location can be changed here.

j) Select Activate the rule now and click Finish

IIS6

a) Open DebugDiag (Start -> Programs -> Debug Diagnostics Tool 1.1)

b) Select Crash and click Next

c) Select the desired Target Type and click Next

d) Click Next in Advanced Configuration (Optional)

e) Click Next for Rule Name. The Userdump Location can be changed here.

f) Select Activate the rule now and click Finish

Notice the Status is Active. The Userdump Count will increase each time a dump file is created.

7. Analyze the Dump by selecting the Advanced Analysis tab and clicking Add Data Files. When the .dmp is added, select the Crash/Hang Analyzers script and click Start Analysis. When finished, a report (.mht) will be created in C:\Program Files\DebugDiag\Reports and displayed in Internet Explorer with the results and recommendations. If using custom DLL’s, the Symbol path (Tools menu -> Options and Settings -> Symbol Search Path) to the custom PDB files can be added.

8. Compress the Data using DebugDiag (Tools menu -> Create Increment Cabinet File) and analyze this file.

ASP.NET Debugging : ASP.NET Tips: What to gather to troubleshoot – part 3 – Crash

 
사진(1/5)