<?xml version="1.0" encoding="gb2312"?>
<rss version="2.0">
<channel>
<title><![CDATA[点滴]]></title>
        <image>
        <title>http://hi.baidu.com</title>
        <link>http://hi.baidu.com</link>
        <url>http://img.baidu.com/img/logo-hi.gif</url>
        </image>
<description><![CDATA[资料点滴]]></description>
<link>http://hi.baidu.com/19chang19</link>
<language>zh-cn</language>
<generator>www.baidu.com</generator>
<ttl>5</ttl>


<item>
        <title><![CDATA[USB wince 连接]]></title>
        <link><![CDATA[http://hi.baidu.com/19chang19/blog/item/5c6bea09523d5a8ad0581b44.html]]></link>
        <description><![CDATA[
		
		<p><a href="http://topic.csdn.net/t/20031009/20/2338605.html">http://topic.csdn.net/t/20031009/20/2338605.html</a>求助！WinCE下如何从USB口接收数据的资料！！！</p>
<p> </p>
<p><a href="http://davidripple.bokee.com/2453125.html">http://davidripple.bokee.com/2453125.html</a>TightVNC分析文档</p> 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/19chang19/blog/category/%C4%AC%C8%CF%B7%D6%C0%E0">默认分类</a>&nbsp;<a href="http://hi.baidu.com/19chang19/blog/item/5c6bea09523d5a8ad0581b44.html#comment">查看评论</a>]]></description>
        <pubDate>2009-05-21  22:30</pubDate>
        <category><![CDATA[默认分类]]></category>
        <author><![CDATA[19chang19]]></author>
		<guid>http://hi.baidu.com/19chang19/blog/item/5c6bea09523d5a8ad0581b44.html</guid>
</item>

<item>
        <title><![CDATA[如何在基于 MFC 的 COM 客户端创建接收器接口,完成连接点事件，关键代码]]></title>
        <link><![CDATA[http://hi.baidu.com/19chang19/blog/item/763d40ec835b9cd92f2e219d.html]]></link>
        <description><![CDATA[
		
		<p>//如何在基于 MFC 的 COM 客户端创建接收器接口,完成连接点事件<br>
//#import &quot;.......&quot;<br>
//CMyCmdTarget 继承CCmdTarget<br>
//改<br>
//INTERFACE_PART(CMyCmdTarget, IID_IMyCmdTarget, Dispatch)成<br>
//INTERFACE_PART(CMyCmdTarget, __uuidof(_Imycom5contEvents), Dispatch)<br>
//在BEGIN_DISPATCH_MAP中<br>
//加DISP_FUNCTION_ID(CMyCmdTarget,&quot;com5addrs&quot;,1,OnGetCom5RS,VT_EMPTY,VTS_I4)</p>
<p>void CDlgtestDlg::OnButton2() <br>
{<br>
 // TODO: Add your control notification handler code here<br>
 //EnableWindow(FALSE);<br>
 //typedef _com_ptr_t&lt;Imycom5cont&gt; Imycom5contPtr;<br>
 <br>
 CoInitialize(NULL);<br>
 Imycom5contPtr com5 = NULL;<br>
 //CoCreateInstance()<br>
 HRESULT hr = com5.CreateInstance(L&quot;Mycom5.mycom5cont&quot;);</p>
<p> CMyCmdTarget* cmdtarget = new CMyCmdTarget();<br>
 IID iid = IID_IUnknown;<br>
 IUnknown* pUnkSink = cmdtarget-&gt;GetInterface(&amp;iid);<br>
 //LPUNKNOWN pUnkSink = cmdtarget-&gt;GetIDispatch(FALSE);<br>
 DWORD m_dwCookie = 1;</p>
<p> //BOOL bl = AfxConnectionAdvise(com5, IID_IMyCmdTarget/*__uuidof(IDispatch)*/, pUnkSink, TRUE, &amp;m_dwCookie); <br>
 <br>
 BOOL bl = AfxConnectionAdvise(com5, __uuidof(_Imycom5contEvents), pUnkSink, TRUE, &amp;m_dwCookie); <br>
 hr = GetLastError(); <br>
 com5-&gt;add5(1,2);</p>
<p>}</p> 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/19chang19/blog/category/%D7%E9%BC%FEcom%BA%CDatl">组件com和atl</a>&nbsp;<a href="http://hi.baidu.com/19chang19/blog/item/763d40ec835b9cd92f2e219d.html#comment">查看评论</a>]]></description>
        <pubDate>2009-05-10  18:46</pubDate>
        <category><![CDATA[组件com和atl]]></category>
        <author><![CDATA[19chang19]]></author>
		<guid>http://hi.baidu.com/19chang19/blog/item/763d40ec835b9cd92f2e219d.html</guid>
</item>

<item>
        <title><![CDATA[微软C/C++ 编译器选项和跨平台开发所需要的编译开关(转)]]></title>
        <link><![CDATA[http://hi.baidu.com/19chang19/blog/item/c1803424dfff953bc89559f0.html]]></link>
        <description><![CDATA[
		
		-优化- <br>
 <br>
/O1 <br>
 最小化空间 <br>
 <br>
/Op[-] <br>
 改善浮点数一致性 <br>
 <br>
/O2 <br>
 最大化速度 <br>
 <br>
/Os <br>
 优选代码空间 <br>
 <br>
/Oa <br>
 假设没有别名 <br>
 <br>
/Ot <br>
 优选代码速度 <br>
 <br>
/Ob&lt;n&gt; <br>
 内联展开（默认 n=0） <br>
 <br>
/Ow <br>
 假设交叉函数别名 <br>
 <br>
/Od <br>
 禁用优化（默认值） <br>
 <br>
/Ox <br>
 最大化选项。(/Ogityb2 /Gs) <br>
 <br>
/Og <br>
 启用全局优化 <br>
 <br>
/Oy[-] <br>
 启用框架指针省略 <br>
 <br>
/Oi <br>
 启用内部函数 <br>
 <br>
-代码生成- <br>
 <br>
/G3 <br>
 为 80386 进行优化 <br>
 <br>
/GH <br>
 启用 _pexit 函数调用 <br>
 <br>
/G4 <br>
 为 80486 进行优化 <br>
 <br>
/GR[-] <br>
 启用 C++ RTTI <br>
 <br>
/G5 <br>
 为 Pentium 进行优化 <br>
 <br>
/GX[-] <br>
 启用 C++ EH（与 /EHsc 相同） <br>
 <br>
/G6 <br>
 为 PPro、P-II、P-III 进行优化 <br>
 <br>
/EHs <br>
 启用 C++ EH（无 SEH 异常） <br>
 <br>
/GB <br>
 为混合模型进行优化（默认） <br>
 <br>
/EHa <br>
 启用 C++ EH（w/ SEH 异常） <br>
 <br>
/Gd <br>
 __cdecl 调用约定 <br>
 <br>
/EHc <br>
 外部&ldquo;C&rdquo;默认为 nothrow <br>
 <br>
/Gr <br>
 __fastcall 调用约定 <br>
 <br>
/GT <br>
 生成纤维安全 TLS 访问 <br>
 <br>
/Gz <br>
 __stdcall 调用约定 <br>
 <br>
/Gm[-] <br>
 启用最小重新生成 <br>
 <br>
/GA <br>
 为 Windows 应用程序进行优化 <br>
 <br>
/GL[-] <br>
 启用链接时代码生成 <br>
 <br>
/Gf <br>
 启用字符串池 <br>
 <br>
/QIfdiv[-] <br>
 启用 Pentium FDIV 修复 <br>
 <br>
/GF <br>
 启用只读字符串池&nbsp;&nbsp;<br>
 <br>
/QI0f[-] <br>
 启用 Pentium 0x0f 修复 <br>
 <br>
/Gy <br>
 分隔链接器函数 <br>
 <br>
/QIfist[-] <br>
 使用 FIST 而不是 ftol() <br>
 <br>
/GZ <br>
 启用堆栈检查 (/RTCs) <br>
 <br>
/RTC1 <br>
 启用快速检查 (/RTCsu) <br>
 <br>
/Ge <br>
 对所有函数强制堆栈检查 <br>
 <br>
/RTCc <br>
 转换为较小的类型检查 <br>
 <br>
/Gs[num]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>
 控制堆栈检查调用 <br>
 <br>
/RTCs <br>
 堆栈帧运行时检查 <br>
 <br>
/GS <br>
 启用安全检查 <br>
 <br>
/RTCu <br>
 未初始化的本地用法检查 <br>
 <br>
/Gh <br>
 启用 _penter 函数调用 <br>
 <br>
/clr[:noAssembly] <br>
 为公共语言运行时库编译noAssembly - 不产生程序集 <br>
 <br>
-输出文件- <br>
 <br>
/Fa[file]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>
 命名程序集列表文件 <br>
 <br>
/Fo&lt;file&gt; <br>
 命名对象文件 <br>
 <br>
/FA[sc]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>
 配置程序集列表 <br>
 <br>
/Fp&lt;file&gt; <br>
 命名预编译头文件 <br>
 <br>
/Fd[file]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>
 命名 .PDB 文件&nbsp;&nbsp;<br>
 <br>
/Fr[file] <br>
 命名源浏览器文件 <br>
 <br>
/Fe&lt;file&gt; <br>
 命名可执行文件 <br>
 <br>
/FR[file] <br>
 命名扩展 .SBR 文件 <br>
 <br>
/Fm[file] <br>
 命名映射文件 <br>
 <br>
-预处理器- <br>
 <br>
/AI&lt;dir&gt; <br>
 添加到程序集搜索路径 <br>
 <br>
/Fx <br>
 将插入的代码合并到文件 <br>
 <br>
/FU&lt;file&gt; <br>
 强制使用程序集/模块 <br>
 <br>
/FI&lt;file&gt; <br>
 命名强制包含文件 <br>
 <br>
/C <br>
 不抽出注释 <br>
 <br>
/U&lt;name&gt; <br>
 移除预定义宏 <br>
 <br>
/D&lt;name&gt;{=|#}&lt;text&gt; <br>
 定义宏 <br>
 <br>
/u <br>
 移除所有预定义宏 <br>
 <br>
/E <br>
 预处理到 stdout <br>
 <br>
/I&lt;dir&gt; <br>
 添加到包含搜索路径 <br>
 <br>
/EP <br>
 预处理到 stdout，没有 #line <br>
 <br>
/X <br>
 忽略&ldquo;标准位置&rdquo; <br>
 <br>
/P <br>
 预处理到文件 <br>
 <br>
-语言- <br>
 <br>
/Zi <br>
 启用调试信息 <br>
 <br>
/Zl <br>
 忽略 .OBJ 中的默认库名 <br>
 <br>
/ZI <br>
 启用&ldquo;编辑并继续&rdquo;调试信息&nbsp;&nbsp;<br>
 <br>
/Zg <br>
 生成函数原型 <br>
 <br>
/Z7 <br>
 启用旧式调试信息&nbsp;&nbsp;<br>
 <br>
/Zs <br>
 只进行语法检查 <br>
 <br>
/Zd <br>
 仅有行号调试信息 <br>
 <br>
/vd{0|1} <br>
 禁用/启用 vtordisp <br>
 <br>
/Zp[n]&nbsp;&nbsp;<br>
 在 n 字节边界上包装结构 <br>
 <br>
/vm&lt;x&gt; <br>
 指向成员的指针类型 <br>
 <br>
/Za <br>
 禁用扩展（暗指 /Op） <br>
 <br>
/noBool <br>
 禁用&ldquo;bool&rdquo;关键字 <br>
 <br>
/Ze <br>
 启用扩展（默认） <br>
 <br>
/Zc:arg1[,arg2] <br>
 C++ 语言一致性，这里的参数可以是：forScope - 对范围规则强制使用标准 C++；wchar_t - wchar_t 是本机类型，不是 typedef <br>
 <br>
- 杂项 - <br>
 <br>
@&lt;file&gt; <br>
 选项响应文件 <br>
 <br>
/wo&lt;n&gt; <br>
 发出一次警告 n <br>
 <br>
/?, /help <br>
 打印此帮助消息 <br>
 <br>
/w&lt;l&gt;&lt;n&gt; <br>
 为 n 设置警告等级 1-4 <br>
 <br>
/c <br>
 只编译，不链接&nbsp;&nbsp;<br>
 <br>
/W&lt;n&gt; <br>
 设置警告等级（默认 n=1） <br>
 <br>
/H&lt;num&gt; <br>
 最大外部名称长度 <br>
 <br>
/Wall <br>
 启用所有警告 <br>
 <br>
/J <br>
 默认 char 类型是 unsigned <br>
 <br>
/Wp64 <br>
 启用 64 位端口定位警告 <br>
 <br>
/nologo <br>
 取消显示版权消息 <br>
 <br>
/WX <br>
 将警告视为错误 <br>
 <br>
/showIncludes <br>
 显示包含文件名 <br>
 <br>
/WL <br>
 启用单行诊断 <br>
 <br>
/Tc&lt;source file&gt; <br>
 将文件编译为 .c <br>
 <br>
/Yc[file] <br>
 创建 .PCH 文件 <br>
 <br>
/Tp&lt;source file&gt; <br>
 将文件编译为 .cpp <br>
 <br>
/Yd <br>
 将调试信息放在每个 .OBJ 中 <br>
 <br>
/TC <br>
 将所有文件编译为 .c <br>
 <br>
/Yl[sym] <br>
 为调试库插入 .PCH 引用 <br>
 <br>
/TP <br>
 将所有文件编译为 .cpp <br>
 <br>
/Yu[file] <br>
 使用 .PCH 文件 <br>
 <br>
/V&lt;string&gt; <br>
 设置版本字符串 <br>
 <br>
/YX[file] <br>
 自动 .PCH <br>
 <br>
/w <br>
 禁用所有警告 <br>
 <br>
/Y- <br>
 禁用所有 PCH 选项 <br>
 <br>
/wd&lt;n&gt; <br>
 禁用警告 n <br>
 <br>
/Zm&lt;n&gt; <br>
 最大内存分配（默认为 %） <br>
 <br>
/we&lt;n&gt; <br>
 将警告 n 视为错误 <br>
 <br>
-链接- <br>
 <br>
/MD <br>
 与 MSVCRT.LIB 链接 <br>
 <br>
/MDd <br>
 与 MSVCRTD.LIB 调试库链接 <br>
 <br>
/ML <br>
 与 LIBC.LIB 链接 <br>
 <br>
/MLd <br>
 与 LIBCD.LIB 调试库链接 <br>
 <br>
/MT <br>
 与 LIBCMT.LIB 链接 <br>
 <br>
/MTd <br>
 与 LIBCMTD.LIB 调试库链接 <br>
 <br>
/LD <br>
 创建 .DLL <br>
 <br>
/F&lt;num&gt; <br>
 设置堆栈大小 <br>
 <br>
/LDd <br>
 创建 .DLL 调试库 <br>
 <br>
/link <br>
 [链接器选项和库] <br>
<br>
<br>
<br>
 Machine&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Producer&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Operating system&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; C-Compiler&nbsp;&nbsp;&nbsp;&nbsp; recognized through<br>
 AMIGA&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Commodore&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AMIGA-OS (AMIGADOS)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; amiga or AMIGA, __GNUC__, maybe MC68000 or AMIGA3000<br>
 any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; UNIX&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix, __GNUC__, ...<br>
 any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; UNIX&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix, ...<br>
 Amiga 3000&nbsp;&nbsp;&nbsp; Commodore&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Amiga UNIX 2.1 SVR4.0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix, __unix__, AMIX, __AMIX__, __svr4__, m68k, __m68k__, __motorola__, __GNUC__<br>
 SUN-3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sun&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SUN-OS3 (UNIX BSD 4.2)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sun, unix, mc68020, __GNUC__<br>
 SUN-3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sun&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SUN-OS4 (UNIX SUNOS 4.1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sun, unix, mc68020, __GNUC__<br>
 SUN-386&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sun&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SUN-OS4 (UNIX SUNOS 4.0)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sun, unix, sun386, i386, __GNUC__<br>
 SUN-386&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sun&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SUN-OS4 (UNIX SUNOS 4.0)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sun, unix, sun386, i386<br>
 SUN-4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sun&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SUN-OS4 (UNIX SUNOS 4.1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sun, unix, sparc, __GNUC__<br>
 SUN-4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sun&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SUN-OS4 (UNIX SUNOS 4.1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sun, unix, sparc<br>
 SUN-4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sun&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SUN-OS5 (UNIX Solaris)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GCC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sun, unix, sparc, __GNUC__<br>
 UltraSparc&nbsp;&nbsp;&nbsp; Sun&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Solaris 7 (UNIX SUNOS 5.7)&nbsp;&nbsp;&nbsp;&nbsp; CC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sun, unix, __sparc, __sparcv9<br>
 UltraSparc&nbsp;&nbsp;&nbsp; Sun&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Solaris 7 (UNIX SUNOS 5.7)&nbsp;&nbsp;&nbsp;&nbsp; GCC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sun, unix, __sparc, __arch64__, __GNUC__<br>
 IBM-PC/386&nbsp;&nbsp;&nbsp; any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SUN-OS5 (UNIX Solaris)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GCC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sun, unix, __svr4__, i386, __GNUC__<br>
 HP9000-300&nbsp;&nbsp;&nbsp; Hewlett-Packard&nbsp;&nbsp;&nbsp;&nbsp; NetBSD 0.9 (UNIX BSD 4.3)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix, __NetBSD__, mc68000, __GNUC__<br>
 HP9000-300&nbsp;&nbsp;&nbsp; Hewlett-Packard&nbsp;&nbsp;&nbsp;&nbsp; HP-UX 8.0 (UNIX SYS V)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [__]hpux, [__]unix, [__]hp9000s300, mc68000, __GNUC__<br>
 HP9000-800&nbsp;&nbsp;&nbsp; Hewlett-Packard&nbsp;&nbsp;&nbsp;&nbsp; HP-UX 8.0 (UNIX SYS V)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [__]hpux, [__]unix, [__]hp9000s800<br>
 IRIS&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Silicon Graphics&nbsp;&nbsp;&nbsp; IRIX (UNIX SYS V 3.2)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix, SVR3, mips, sgi, __GNUC__<br>
 IRIS&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Silicon Graphics&nbsp;&nbsp;&nbsp; IRIX (UNIX SYS V)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cc -ansi&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [__]unix, [__]SVR3, [__]mips, [__]sgi<br>
 IRIS&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Silicon Graphics&nbsp;&nbsp;&nbsp; IRIX 5 (UNIX SYS V 4)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [__]unix, [__]SYSTYPE_SVR4, [__]mips, [__]host_mips, [__]MIPSEB, [__]sgi, __DSO__, [__]_MODERN_C, __GNUC__<br>
 DECstation 5000&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; RISC/OS (Ultrix V4.2A)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix, [__]mips, [__]ultrix<br>
 DG-UX 88k&nbsp;&nbsp;&nbsp;&nbsp; Data General&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DG/UX&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix, m88000, DGUX<br>
 DEC Alpha&nbsp;&nbsp;&nbsp;&nbsp; DEC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OSF/1 1.3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [unix,] __unix__, __osf__, __alpha<br>
 DEC Alpha&nbsp;&nbsp;&nbsp;&nbsp; DEC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OSF/1 1.3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix, __unix__, __osf__, __alpha, __alpha__, _LONGLONG<br>
 Apple MacII&nbsp;&nbsp; Apple&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; A/UX (UNIX SYS V 2)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [__]unix, [__]AUX, [__]macII, [__]m68k, mc68020, mc68881, __GNUC__<br>
 NeXT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NeXT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NeXTstep 3.1 (UNIX)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NeXT, m68k; NEXTAPP for NeXTstep Application<br>
 PowerPC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Apple&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Mach 3.0 + MkLinux&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix, __powerpc__, __PPC__, _ARCH_PPC, _CALL_SYSV, __ELF__, __linux__<br>
 PowerPC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Apple&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Mach + Rhapsody&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; __MACH__, __APPLE__, __ppc[__], __GNUC__, __APPLE_CC__<br>
 PowerPC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Apple&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Mach + MacOS X&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; __MACH__, __APPLE__, __ppc__, __GNUC__, __APPLE_CC__<br>
 Sequent&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sequent&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PTX 3.2.0 V2.1.0 i386 (SYS V) GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix, i386, _SEQUENT_, __GNUC__<br>
 Sequent&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sequent&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PTX V4.1.3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix, i386, _SEQUENT_, __svr4__, __GNUC__<br>
 Convex C2&nbsp;&nbsp;&nbsp;&nbsp; Convex&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ConvexOS 10.1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; __convex__, __GNUC__<br>
 IBM RS/6000&nbsp;&nbsp; IBM&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AIX 3.2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; _AIX, _AIX32, _IBMR2, __CHAR_UNSIGNED__, __GNUC__<br>
 IBM-PC/386&nbsp;&nbsp;&nbsp; any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LINUX (free UNIX)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix, linux, i386, __GNUC__<br>
 IBM-PC/386&nbsp;&nbsp;&nbsp; any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LINUX (free UNIX)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Intel 5.0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; __unix__, __linux__, __INTEL_COMPILER, __ICC, __USLC__<br>
 IBM-PC/386&nbsp;&nbsp;&nbsp; any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 386BSD 0.1 (UNIX BSD 4.2)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix, __386BSD__, i386, __GNUC__<br>
 IBM-PC/386&nbsp;&nbsp;&nbsp; any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NetBSD 0.9 (UNIX BSD 4.3)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix, __NetBSD__, i386, __GNUC__<br>
 IBM-PC/386&nbsp;&nbsp;&nbsp; any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FreeBSD 4.0 (UNIX BSD 4.4)&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix, __FreeBSD__, i386, __GNUC__<br>
 IBM-PC/386&nbsp;&nbsp;&nbsp; any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; EMX 0.9c (UNIXlike on OS/2)&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [unix,] i386, __GNUC__, __EMX__<br>
 IBM-PC/386&nbsp;&nbsp;&nbsp; any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Cygwin32 on WinNT/Win95&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; _WIN32, __WINNT__, __CYGWIN32__, __POSIX__, _X86_, i386, __GNUC__<br>
 IBM-PC/386&nbsp;&nbsp;&nbsp; any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Mingw32 on WinNT/Win95&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; _WIN32, __WINNT__, __MINGW32__, _X86_, i386, __GNUC__<br>
 IBM-PC/386&nbsp;&nbsp;&nbsp; any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; WinNT/Win95&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MSVC4.0,5.0&nbsp;&nbsp;&nbsp; _WIN32, _M_IX86, _MSC_VER<br>
 IBM-PC/386&nbsp;&nbsp;&nbsp; any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; WinNT/Win95&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Borland 5.0&nbsp;&nbsp;&nbsp; __WIN32__, _M_IX86, __TURBOC__, __BORLANDC__<br>
 IBM-PC/386&nbsp;&nbsp;&nbsp; any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; WinNT/Win95 and Cygwin32&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; _WIN32, __WINNT__, __CYGWIN32__, __POSIX__, __i386__, _X86_, __GNUC__<br>
 IBM-PC/586&nbsp;&nbsp;&nbsp; any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; BeOS 5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; __BEOS__, __INTEL__, __i386__, _X86_, __GNUC__<br>
 IBM-PC/586&nbsp;&nbsp;&nbsp; any&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; HP NUE/ski, Linux&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix, linux, __ia64[__], __GNUC__, __LP64__<br>
 RM400&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Siemens-Nixdorf&nbsp;&nbsp;&nbsp;&nbsp; SINIX-N 5.42&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; c89&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unix, mips, MIPSEB, host_mips, sinix, SNI, _XPG_IV<br>
 Acorn&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Risc PC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; RISC OS 3.x&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GNU&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [__]arm, [__]riscos, __GNUC__<br>
 Acorn&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Risc PC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; RISC OS 3.x&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Norcroft&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [__]arm, [__]riscos<br>
 APPLE IIGS&nbsp;&nbsp;&nbsp; Apple&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ??&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ??<br> 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/19chang19/blog/category/win32%B1%E0%B3%CC">win32编程</a>&nbsp;<a href="http://hi.baidu.com/19chang19/blog/item/c1803424dfff953bc89559f0.html#comment">查看评论</a>]]></description>
        <pubDate>2009-03-31  22:49</pubDate>
        <category><![CDATA[win32编程]]></category>
        <author><![CDATA[19chang19]]></author>
		<guid>http://hi.baidu.com/19chang19/blog/item/c1803424dfff953bc89559f0.html</guid>
</item>

<item>
        <title><![CDATA[用C#建立手机上的电子地图程序(转)]]></title>
        <link><![CDATA[http://hi.baidu.com/19chang19/blog/item/b8f59cef9b7fa41efdfa3cc4.html]]></link>
        <description><![CDATA[
		
		<p>引言：本文将介绍如何使用C#建立手机上的电子地图程序，本程序可以在手机上显示ESRI公司的.SHP格式地图文件。本程序代码下载：<a href="http://www.k-work.cn/download/Product/HiMap/myHiMap.zip" target="_blank"><font color="#999966">myHiMap.zip</font></a></p>
<p>一、系统需求：<br>
开发环境：Windows XP, .NET Compact Framework 2.0, Windows Mobile 5 SDK, <a href="http://www.k-work.cn/download/Product/HiMap/HiMapBeta1-Runtime.zip" target="_blank"><font color="#999966">HiMap Beta1 runtime</font></a><br>
运行环境：DOPOD D600手机</p>
<p>二、程序功能列表：</p>
<p>1、添加图层----Add Layers<br>
2、设置图层----Setup Layers<br>
3、放大----ZoomIn<br>
4、缩小----ZoomOut<br>
5、漫游----Pan<br>
6、全图----Full Extent<br>
7、前一视图----Previous Extent<br>
8、后一视图----Next Extent <br>
9、测距----Distance<br>
10、信息查询----Information<br>
11、定位点坐标----Position</p>
<p>三、开发步骤</p>
<p>1、在<a href="http://www.k-work.cn/pages/HiMapPages/ch/download.html"><font color="#999966">http://www.k-work.cn/pages/HiMapPages/ch/download.html</font></a>下载<a href="http://www.k-work.cn/download/Product/HiMap/HiMapBeta1-Runtime.zip" target="_blank"><font color="#999966">HiMap Beta1 runtime</font></a>，得到HiMapBeta1-Runtime.zip，解压缩得到&quot;HiMap.Carto.dll, HiMap.Driver.dll, HiMap.Geometry.dll, HiMap.MapControls.dll, HiMap.Style.dll, KMGisLib.dll&quot;。</p>
<p>2、运行Microsoft Visual Studio 2005（以下简称VS2005），在文件菜单中选择：新建-&gt;项目</p>
<p><img src="http://www.k-work.cn/pages/HiMapHelp/ch/images/创建项目.jpg" width="583" height="171"></p>
<p>3、在[新建项目]对话框中选择Visual C#-&gt;智能设备-&gt;Windows Mobile 6 Professional-&gt;Device Application-&gt;在[名称(N)]文本框中输入&quot;myHiMap&quot;-&gt;确定</p>
<p><img src="http://www.k-work.cn/pages/HiMapHelp/ch/images/创建myHiMap项目.jpg" width="681" height="460"></p>
<p> </p>
<p>4、在[解决方案资源管理器]窗口中，鼠标右键点击[引用]，选择[添加引用]。</p>
<p><img src="http://www.k-work.cn/pages/HiMapHelp/ch/images/选择DLL.jpg" width="482" height="352"></p>
<p>5、添加成功后，将看到如下内容：</p>
<p><img src="http://www.k-work.cn/pages/HiMapHelp/ch/images/向myHiMap添加引用2.jpg" width="291" height="458"></p>
<p>6、在[工具箱]窗口使用鼠标右键点击空白处，在弹出的菜单中选择[选择项]。</p>
<p><img src="http://www.k-work.cn/pages/HiMapHelp/ch/images/向myHiMap添加控件项1.jpg" width="253" height="769"></p>
<p>7、在[选择工具项]窗口中，点击[浏览]按钮。</p>
<p><img src="http://www.k-work.cn/pages/HiMapHelp/ch/images/选择控件项.jpg" width="571" height="376"></p>
<p>8、在[打开]窗口中，找到并选中&ldquo;HiMap.MaoControls.dll&rdquo;文件，点击[打开]按钮。</p>
<p><img src="http://www.k-work.cn/pages/HiMapHelp/ch/images/定位到控件dll.jpg" width="699" height="366"></p>
<p>9、在[选择工具箱项]窗体中，点击[确定]按钮。</p>
<p><img src="http://www.k-work.cn/pages/HiMapHelp/ch/images/向myHiMap添加控件项2.jpg" width="571" height="376"></p>
<p>10、添加成功后，左侧[工具箱]中将出现如下这些控件。</p>
<p><img src="http://www.k-work.cn/pages/HiMapHelp/ch/images/向myHiMap添加控件项3.jpg" width="369" height="429"></p>
<p>11、在[工具箱]中找到&ldquo;MapControl&rdquo;控件，将其拖动到Form1.cs[设计]窗口中，并将其[Dock属性设置为Fill]。</p>
<p><img src="http://www.k-work.cn/pages/HiMapHelp/ch/images/myHiMap使用控件.jpg" width="573" height="618"></p>
<p><img src="http://www.k-work.cn/pages/HiMapHelp/ch/images/将控件dock属性设置为fill.jpg" width="290" height="362"></p>
<p>12、在&quot;namespace myHiMap&quot;上方添加&quot;using HiMap.Carto;&quot;和&quot; using HiMap.Driver;&quot;的引用。</p>
<p>using HiMap.Carto;<br>
using HiMap.Driver;</p>
<p>13、为Form1.cs窗体添加&quot;Form1_Load&quot;事件，并填写以下代码</p>
<p>private void Form1_Load(object sender, EventArgs e)<br>
{</p>
<blockquote>
<p>//建立新的地图对象<br>
Map map = new Map(&quot;test&quot;);</p>
<p>//使用Shape驱动建立元数据工厂<br>
IDataFactory dataFactory = new HiMap.Driver.Shape.ShapeDataFactory(&quot;Storage Card&quot;);<br>
//打开一个元数据<br>
IFeatureClass featureClass = (IFeatureClass)dataFactory.Open(&quot;One.shp&quot;);<br>
//通过元数据建立矢量图层<br>
IFeatureLayer featureLayer = new FeatureLayerClass(featureClass);</p>
<p>//将图层添加到地图对象中<br>
map.AddLayer(featureLayer);<br>
//地图控件绑定地图对象<br>
mapControl1.Map = map;<br>
//刷新显示地图<br>
mapControl1.MapRefresh();</p>
</blockquote>
<p>}</p>
<p>14、将Windows Mobile 5.0 for Pocket PC或Windows Mobile 6 Professional的移动设备(本示例使用的是Windows Mobile 5.0 for Pocket PC的dopod D600手机)通过Microsoft ActiveSync(本示例使用的是4.5.0版本)与当前使用的PC连接。<br>
<strong>注意：</strong>由于建立项目时选择的是&quot;Windows Mobile 6 Professional&quot;平台，所以现在要将平台转换为适应当前设备的&quot;Windows Mobile 5.0 Pocket PC&quot;平台。<br>
在VS2005的[解决方案资源管理器]中，用鼠标右键单击项目[myHiMap]，在弹出的菜单中选择[更改目标平台]，并选择&quot;更改为：Windows Mobile 5.0 Pocket PC SDK&quot;，点击[确定]按钮。在弹出的询问是否继续窗口中点击[是]按钮。最后，在VS2005的[设备]工具条中选择&quot;Windows Mobile 5.0 Pocket PC Device&quot;，目前，<strong>HiMap只能在真实设备中运行，无法在模拟器中使用</strong>。</p>
<p><img src="http://www.k-work.cn/pages/HiMapHelp/ch/images/myHiMap更改目标平台.jpg" width="258" height="686"></p>
<p><img src="http://www.k-work.cn/pages/HiMapHelp/ch/images/myHiMap更改目标平台2.jpg" width="306" height="205"></p>
<p><img src="http://www.k-work.cn/pages/HiMapHelp/ch/images/myHiMap更改目标平台3.jpg" width="364" height="121"></p>
<p><img src="http://www.k-work.cn/pages/HiMapHelp/ch/images/myHiMap更改目标平台4.jpg" width="412" height="255"></p>
<p>15、在VS2005的[解决方案资源管理器]中，用鼠标右键单击项目[myHiMap]，在弹出的菜单中选择[部署]。</p>
<p><img src="http://www.k-work.cn/pages/HiMapHelp/ch/images/myHiMap部署.jpg" width="290" height="661"></p>
<p>16、部署成功后，将HiMapBeta1-Runtime.zip解压缩后得到的KMGisLib.dll文件拷贝到移动设备的&quot;\Program Files\myhimap&quot;目录中。或者使用VS2005自带的部署功能将其复制到程序目录下。</p>
<p>17、将地图文件&quot;One.shp，One.shx，One.dbf&quot;（<a href="http://www.k-work.cn/download/Product/HiMap/maps.zip" target="_blank"><font color="#999966">地图文件下载</font></a>）通过Microsoft ActiveSync或存储卡拷贝到移动设备的&quot;\Storage Card&quot;目录下（如果没有此目录，请手动建立）。</p>
<p> </p>
<p>18、在VS2005中，点击[启动调试]按钮。</p>
<p><img src="http://www.k-work.cn/pages/HiMapHelp/ch/images/myHiMap启动调试.jpg" width="589" height="609"></p>
<p>19、运行成功，如图：</p>
<p> </p>
<div forimg="1"><img class="blogimg" border="0" src="http://www.k-work.cn/pages/HiMapHelp/en/images/HiMapRunSuccessfullyInWM5.jpg" small="0"></div>
<p>20、为窗体添加菜单和功能。如图：</p>
<p> </p>
<div forimg="1">
<p><img class="blogimg" border="0" src="http://www.k-work.cn/pages/HiMapHelp/en/images/HiMapRunSuccessfullyInWM5_2.jpg" small="0"></p>
<p>21、为这些方法添加实现的代码，如ZoomIn菜单项的代码：</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  /// <summary></summary><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  /// ZoomIn Tool<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  /// <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  ///
 <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  ///
 <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  private void menuItem4_Click(object sender, EventArgs e)<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  {<br>
<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  //放大工具<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  HiMap.MapControls.Tools.ITool cmd = new HiMap.MapControls.Tools.ToolZoomIn();</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  //初始化工具<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  cmd.OnCreate(this.mapControl1);</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &amp;nb</p>
<p> </p>
<p> </p>
<p>(<a href="http://www.tzwhx.com/newOperate/html/5/53/531/15234.html">http://www.tzwhx.com/newOperate/html/5/53/531/15234.html</a>)</p>
</div> 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/19chang19/blog/category/%C7%B6%C8%EB%CA%BD%BF%AA%B7%A2%D7%CA%C1%CFwince">嵌入式开发资料wince</a>&nbsp;<a href="http://hi.baidu.com/19chang19/blog/item/b8f59cef9b7fa41efdfa3cc4.html#comment">查看评论</a>]]></description>
        <pubDate>2009-03-23  23:16</pubDate>
        <category><![CDATA[嵌入式开发资料wince]]></category>
        <author><![CDATA[19chang19]]></author>
		<guid>http://hi.baidu.com/19chang19/blog/item/b8f59cef9b7fa41efdfa3cc4.html</guid>
</item>

<item>
        <title><![CDATA[关于经纬度坐标转换的方法(SQL转换)]]></title>
        <link><![CDATA[http://hi.baidu.com/19chang19/blog/item/070e4bcfb3a7a635f8dc61f8.html]]></link>
        <description><![CDATA[
		
		<p><font size="2">一、十进制转换成经纬度<br>
把经纬度转换成十进制的方法很简单 <br>
如下就可以了<br>
Decimal Degrees = Degrees + minutes/60 + seconds/3600<br>
例：57°55'56.6&quot; =57+55/60+56.6/3600=57.9323888888888<br>
114°65'24.6&quot;=114+65/60+24.6/3600=结果自己算!<br>
<br>
如把经纬度 (longitude，latitude) (205.395583333332，57.9323888888888)<br>
转换据成坐标(Degrees,minutes,seconds)(205°23'44.1&quot;，57°55'56.6&quot;)。<br>
步骤如下：</font></p>
<p><font size="2">1， 直接读取&quot;度&quot;：205</font></p>
<p><font size="2">2，(205.395583333332-205)*60=23.734999999920 得到&quot;分&quot;：23</font></p>
<p><font size="2">3，(23.734999999920-23)*60=44.099999995200 得到&quot;秒&quot;：44.1</font></p>
<p><font size="2">采用同样的方法可以得到纬度坐标：57°55'56.6&quot; </font></p>
<p><font size="2">如果需要转换的经纬度数据很多，可以借助Sql查询分析器或Excel来进行转换。这里介绍用Sql实现。<br>
假如我的数据库里的表tableName有以下数据</font></p>
<p><font size="2">CREATE TABLE [dbo].[tableName](<br>
[ID] [int] IDENTITY(1,1) NOT NULL,<br>
[address] [varchar](20) COLLATE Chinese_PRC_CI_AS NULL,<br>
[longitude] [float] NULL,<br>
[latitude] [float] NULL<br>
) ON [PRIMARY]</font></p>
<p><font size="2">GO</font></p>
<p><font size="2">表中的数据<br>
ID address longitude latitude <br>
0 add1 205.3955833 57.93238889 <br>
1 add2 205.3911111 57.95194444 <br>
2 add3 205.3791667 57.98916667 <br>
3 add4 205.3713889 57.95611111 </font></p>
<p><font size="2">在sql 查询分析器里直接调用以下查询语句</font></p>
<p><font size="2">--Declare The longitude,latitude<br>
declare @LoaDeg varchar(50)<br>
declare @LoaMin varchar(100)<br>
declare @LoaSec varchar(100)<br>
declare @LatDeg varchar(50)<br>
declare @LatMin varchar(100)<br>
declare @LatSec varchar(100)<br>
--Set The Variable</font></p>
<p><font size="2">Set @LoaDeg='left(longitude,3)'<br>
Set @LoaMin='left((</font><a href="mailto:longitude- +@LoaDeg+ )*60,2) "><font color="#000066" size="2">longitude-'+@LoaDeg+')*60,2)'</font></a><br>
<font size="2">Set @LoaSec='left((((</font><a href="mailto:longitude- +@LoaDeg+ )*60- +@LoaMin+ )*60),4) "><font color="#000066" size="2">longitude-'+@LoaDeg+')*60-'+@LoaMin+')*60),4)'</font></a><br>
<font size="2">Set @LatDeg='left(longitude,3)'<br>
Set @LatMin='left((</font><a href="mailto:longitude- +@LatDeg+ )*60,2) "><font color="#000066" size="2">longitude-'+@LatDeg+')*60,2)'</font></a><br>
<font size="2">Set @LatSec='left((((</font><a href="mailto:longitude- +@LatDeg+ )*60- +@LatMin+ )*60),4) "><font color="#000066" size="2">longitude-'+@LatDeg+')*60-'+@LatMin+')*60),4)'</font></a><br>
<font size="2">--Execute The Command<br>
exec('select ID,address,longitude,<br>
</font><a href="mailto: +@LoaDeg+ "><font color="#000066" size="2">'+@LoaDeg+'</font></a><font size="2"> as LoaDegree,<br>
</font><a href="mailto: +@LoaMin+ "><font color="#000066" size="2">'+@LoaMin+'</font></a><font size="2"> as LoaMinute,<br>
</font><a href="mailto: +@LoaSec+ "><font color="#000066" size="2">'+@LoaSec+'</font></a><font size="2"> as LoaSecond<br>
,<br>
</font><a href="mailto: +@LatDeg+ "><font color="#000066" size="2">'+@LatDeg+'</font></a><font size="2"> as LatDegree,<br>
</font><a href="mailto: +@LatMin+ "><font color="#000066" size="2">'+@LatMin+'</font></a><font size="2"> as LatMinute,<br>
</font><a href="mailto: +@LatSec+ "><font color="#000066" size="2">'+@LatSec+'</font></a><font size="2"> as LatSecond<br>
from TableName')<br>
</font></p>
<p><font size="2">即可得到：<br>
ID address longitude LoaDegreeLoaMinute LoaSecond latitude LatDegreeLatMinute LatSecond<br>
1add1205.3955833205234457.932388892052344<br>
2add2205.3911111205232857.951944442052328<br>
3add3205.3791667205224557.989166672052245<br>
4add4205.3713889205221757.956111112052217<br>
<br>
来源于这位朋友的文章:http://www.3snews.net/index.php/9449/action_viewspace_itemid_16909.html</font></p>
<p><font size="2">(转<a href="http://www.tzwhx.com/newOperate/html/5/51/513/8514.html">http://www.tzwhx.com/newOperate/html/5/51/513/8514.html</a>)</font></p> 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/19chang19/blog/category/sql%CA%FD%BE%DD%BF%E2%BA%CDado%B1%E0%B3%CC">sql数据库和ado编程</a>&nbsp;<a href="http://hi.baidu.com/19chang19/blog/item/070e4bcfb3a7a635f8dc61f8.html#comment">查看评论</a>]]></description>
        <pubDate>2009-03-23  23:09</pubDate>
        <category><![CDATA[sql数据库和ado编程]]></category>
        <author><![CDATA[19chang19]]></author>
		<guid>http://hi.baidu.com/19chang19/blog/item/070e4bcfb3a7a635f8dc61f8.html</guid>
</item>

<item>
        <title><![CDATA[在IIS上设置Silverlight 插件和WCF]]></title>
        <link><![CDATA[http://hi.baidu.com/19chang19/blog/item/6edf33faad39109f59ee9025.html]]></link>
        <description><![CDATA[
		
		<p>（转）</p>
<h3>架设Silverlight服务器：</h3>
<p><span style="color: #3366ff">有了好东西，大家肯定想和别人分享下</span></p>
<p><span style="color: #3366ff">那么如何架设支持Silverlight的Web服务器呢</span></p>
<p><span style="color: #3366ff">首先你还是按照添加经典Asp.Net网站来添加当前的Silverlight网站</span></p>
<p><span style="color: #3366ff">（具体如何做大家应该都会，这里就不赘述了）</span></p>
<p><span style="color: #3366ff">接下需要给当前的网站添加如下MIME Types</span></p>
<p><span style="color: #3366ff">（这是很重要的一步，我使用的是IIS，Apache等非微软的Web服务器也能架设Silverlight）</span></p>
<p><span style="color: #3366ff">　　.xaml application/xaml+xml <br>
　　.xap application/x-Silverlight-app</span></p>
<p><span style="color: #3366ff">如果要支持WPF和Clickonce应用程序，需要添加如下MIME Types</span></p>
<p><span style="color: #3366ff">　　.manifest application/manifest <br>
　　.application application/x-ms-application <br>
　　.xbap application/x-ms-xbap <br>
　　.deploy application/octet-stream <br>
　　.xps application/vnd.ms-xpsdocument</span></p>
<p><span style="color: #3366ff">到这里咱们的第一步就大功搞成了</span></p>
<p><span style="color: #3366ff">你已经可以创建Silverlight应用程序</span></p>
<p><span style="color: #3366ff">将架设了一个可供别人访问的Silverlight Enable网站</span></p>
<p> </p>
<span style="color: #3366ff">
<h3>发布应用程序：</h3>
<p>通过IIS发布本应用程序你必须注册WCF组件（不然无法识别.svc文件，你的WCF通信将瘫痪）</p>
<p>在Vista操作系统中你需要按照如下步骤进入</p>
<p>Control Panel-&gt;Programs-&gt;Programs and Features-&gt;Turn Windows Features on or off</p>
<p>勾选下图中框红的那个组件（默认不勾选）</p>
<p><a href="http://images.cnblogs.com/cnblogs_com/ibillguo/WindowsLiveWriter/Silverlight9WCF1_4FF4/WCFTest12_2.jpg"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="WCFTest12" border="0" alt="WCFTest12" width="366" height="321" src="http://images.cnblogs.com/cnblogs_com/ibillguo/WindowsLiveWriter/Silverlight9WCF1_4FF4/WCFTest12_thumb.jpg"></a></p>
<p>如果是在XP或者Windows 2003上，请在命令行中运行如下代码注册WCF组件</p>
<p><font color="#ff0000">cd %SYSTEMROOT%\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\</font></p>
<p><font color="#ff0000">ServiceModelReg.exe /i /x</font></p>
</span> 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/19chang19/blog/category/%CD%F8%D2%B3%BC%BC%C7%C9">网页技巧</a>&nbsp;<a href="http://hi.baidu.com/19chang19/blog/item/6edf33faad39109f59ee9025.html#comment">查看评论</a>]]></description>
        <pubDate>2009-03-22  15:51</pubDate>
        <category><![CDATA[网页技巧]]></category>
        <author><![CDATA[19chang19]]></author>
		<guid>http://hi.baidu.com/19chang19/blog/item/6edf33faad39109f59ee9025.html</guid>
</item>

<item>
        <title><![CDATA[轻松解决SQL Server 2005中的常见问题(转)]]></title>
        <link><![CDATA[http://hi.baidu.com/19chang19/blog/item/6fb8bcd6d226bc2707088bf2.html]]></link>
        <description><![CDATA[
		
		<h1>轻松解决SQL Server 2005中的常见问题</h1>
<h2>2009-03-13 13:40:02 作者：air 来源：<a target="_blank" href="http://www.it0411.com/tech/2009/0313/7_237.html">赛迪网</a> 浏览次数：0 文字大小：【<a href=" :fontZoom(16)">大</a>】【<a href=" :fontZoom(14)">中</a>】【<a href=" :fontZoom(12)">小</a>】</h2>
<div ><strong>关键字：</strong><a target="_blank" href="http://www.it0411.com/tech/search.php?searchtype=keywords&amp;keywords=SQL&amp;search=1">SQL</a> <a target="_blank" href="http://www.it0411.com/tech/search.php?searchtype=keywords&amp;keywords=Server&amp;search=1">Server</a> <a target="_blank" href="http://www.it0411.com/tech/search.php?searchtype=keywords&amp;keywords=2005&amp;search=1">2005</a> <a target="_blank" href="http://www.it0411.com/tech/search.php?searchtype=keywords&amp;keywords=%B3%A3%BC%FB%CE%CA%CC%E2&amp;search=1">常见问题</a></div>
<div ><strong>简介：</strong>SQL Server 2005中的常见问题</div>
<span class="a14c">
<p style="text-indent: 2em;"><strong>问题1：</strong>使用.net2005自带的SQL-Express连接不上。</p>
<p style="text-indent: 2em;"><strong>解决方法：</strong></p>
<p style="text-indent: 2em;">1.网络防火墙阻止数据库连接；</p>
<p style="text-indent: 2em;">2.默认SQL-Express没有启动Sa账户－&gt;下载一个management studio express界面工具管理SQL-Express</p>
<p style="text-indent: 2em;">3.无线网络会出现根据机器名找不到SQL服务器的情况，直接用IP连接</p>
<p style="text-indent: 2em;">4.服务端通过开始菜单打开－&gt;配置工具－&gt;SQL Server外围应用配置器－&gt;服务和连接的外围应用配置器－&gt;远程连接－&gt;右边选择&ldquo;本地连接和远程连接&rdquo;－&gt;同时使用TCP/IP和named pipes.</p>
<p style="text-indent: 2em;"><strong>问题2：</strong>在Win-XP上安装开发版提示&ldquo;对性能监视器计数器注册表执行系统配置检查失败&rdquo;</p>
<p style="text-indent: 2em;"><strong>解决方法：</strong></p>
<p style="text-indent: 2em;">注册表定位到/local_machine/software/microsoft /windows nt/currentversion/perflib下，两个值last counter 和last help 的值改成和004（英文系统为009）目录中相关键值的最大值一样。</p>
<p style="text-indent: 2em;"><strong>问题3：</strong></p>
<p style="text-indent: 2em;">现象：其他版本的SQL2005数据库通过&ldquo;复制&rdquo;、&ldquo;导出&rdquo;、&ldquo;备份&rdquo;等方法将数据库复制到SQL DEV上面去后，右键表、新建表等会出现以下错误：</p>
<p style="text-indent: 2em;">类别不支持集合(或类别对象为远程对象) (异常来自 HRESULT:0x80040110 (CLASS_E_NOAGGREGATION)) (Microsoft.SqlServer.SqlTools.VSIntegration)</p>
<p style="text-indent: 2em;">分析：可能是SQL Server 2005的一个Bug，也可能是.net framework变化了，比如安装了其他版本的SQL Server 2005。</p>
<p style="text-indent: 2em;"><strong>解决方法：</strong></p>
<p style="text-indent: 2em;">经验证，这样操作先卸载SQL DEV（网上说是卸载客户端即可，笔者是把所有的SQL Server 2005都删掉），再重装/修复.NET 2.0 Framework，再重装SQL DEV，解决问题。</p>
<p style="text-indent: 2em;"><strong>问题4：</strong></p>
<p style="text-indent: 2em;">现象：vs2005中gridview不能删除SQL2005中VARCHAR类型字段，提 示－－&ldquo;异常详细信息: System.Data.SqlClient.SqlException: 数据类型 ntext 和 nvarchar 在 equal to 运算符中不兼容。&rdquo;</p>
<p style="text-indent: 2em;"><strong>解决方法：</strong></p>
<p style="text-indent: 2em;">SqlDataSource连接的时候不能选择并发控制,就可以编辑和删除了,否则即使不报错,也无法操作。</p>
<p style="text-indent: 2em;">注释：在安装SQL Server 2005的过程中需要关闭注册表监视软件和病毒防护等软件。</p>
</span> 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/19chang19/blog/category/sql%CA%FD%BE%DD%BF%E2%BA%CDado%B1%E0%B3%CC">sql数据库和ado编程</a>&nbsp;<a href="http://hi.baidu.com/19chang19/blog/item/6fb8bcd6d226bc2707088bf2.html#comment">查看评论</a>]]></description>
        <pubDate>2009-03-14  12:25</pubDate>
        <category><![CDATA[sql数据库和ado编程]]></category>
        <author><![CDATA[19chang19]]></author>
		<guid>http://hi.baidu.com/19chang19/blog/item/6fb8bcd6d226bc2707088bf2.html</guid>
</item>

<item>
        <title><![CDATA[中转连接]]></title>
        <link><![CDATA[http://hi.baidu.com/19chang19/blog/item/823b5506b807767c020881aa.html]]></link>
        <description><![CDATA[
		
		<p><u><font color="#0000ff">ffmpeg wince</font></u></p>
<p><u><font color="#0000ff"><a href="http://blog.csdn.net/procedurecode/archive/2008/06/03/2506350.aspx">http://blog.csdn.net/procedurecode/archive/2008/06/03/2506350.aspx</a></font></u></p>
<p> </p>
<p><a href="http://blog.csdn.net/hero_yin/archive/2008/09/24/2972434.aspx">http://blog.csdn.net/hero_yin/archive/2008/09/24/2972434.aspx</a> DFMirage Mirror Driver来抓屏，截屏</p>
<p><u><font color="#810081"><font color="#0000ff"><a href="http://www.cnblogs.com/wt0731/archive/2007/11/12/956808.html">http://www.cnblogs.com/wt0731/archive/2007/11/12/956808.html</a>&nbsp;&nbsp;&nbsp;  (mobile)</font></font></u></p>
<p> </p>
<p><u><font color="#810081"><a href="http://blog.csdn.net/lius1984/archive/2008/10/25/3143269.aspx">http://blog.csdn.net/lius1984/archive/2008/10/25/3143269.aspx</a></font></u></p>
<p><u><font color="#810081">（07年）&nbsp;&nbsp;<a href="http://soenkerohde.com/tutorials/ffmpeg/">http://soenkerohde.com/tutorials/ffmpeg/</a> </font></u></p>
<p><a href="http://blog.csdn.net/jszj/archive/2009/03/27/4028716.aspx">http://blog.csdn.net/jszj/archive/2009/03/27/4028716.aspx</a></p>
<p><a href="http://blog.joycode.com/scottgu/archive/2008/04/04/115048.aspx">http://blog.joycode.com/scottgu/archive/2008/04/04/115048.aspx</a></p>
<p> </p>
<p><a href="http://www.cnblogs.com/flyingwww/archive/2008/06/05/1214525.html">http://www.cnblogs.com/flyingwww/archive/2008/06/05/1214525.html</a>动态template</p>
<p> </p>
<p>实现GPRS MODEM接发短信功能，同时可以进行GPRS数据传输</p>
<p>wince下socket编程的例子，包括server端和client端</p>
<p>Windows Mobile中如何建立GPRS连接以便Socket能正常通信</p>
<p> </p>
<p><a href="http://www.propserv.otago.ac.nz/web/iMap/">http://www.propserv.otago.ac.nz/web/iMap/</a></p>
<p><a href="http://silverlight.net/Showcase/">http://silverlight.net/Showcase/</a></p>
<p> </p>
<p><a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;308157">http://support.microsoft.com/default.aspx?scid=kb;en-us;308157</a></p>
<p><a href="http://www.cnblogs.com/pwqzc/archive/2005/08.html">http://www.cnblogs.com/pwqzc/archive/2005/08.html</a></p>
<p><a href="http://www.donews.net/robinblood/archive/2005/04/30/358041.aspx">http://www.donews.net/robinblood/archive/2005/04/30/358041.aspx</a></p>
<p> </p>
<p><a href="http://www.devexpress.com/Products/Visual_Studio_Add-in/index.xml">http://www.devexpress.com/Products/Visual_Studio_Add-in/index.xml</a></p> 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/19chang19/blog/category/%D6%D0%D7%AA%D5%BE">中转站</a>&nbsp;<a href="http://hi.baidu.com/19chang19/blog/item/823b5506b807767c020881aa.html#comment">查看评论</a>]]></description>
        <pubDate>2008-12-26  23:10</pubDate>
        <category><![CDATA[中转站]]></category>
        <author><![CDATA[19chang19]]></author>
		<guid>http://hi.baidu.com/19chang19/blog/item/823b5506b807767c020881aa.html</guid>
</item>

<item>
        <title><![CDATA[精妙SQL语句收集(转)]]></title>
        <link><![CDATA[http://hi.baidu.com/19chang19/blog/item/4267afeed0534c2e2df534e3.html]]></link>
        <description><![CDATA[
		
		SQL语句先前写的时候，很容易把一些特殊的用法忘记，我特此整理了一下SQL语句操作。&nbsp;&nbsp;  <br>
一、基础&nbsp;&nbsp;  <br>
1、说明：创建数据库&nbsp;&nbsp;  <br>
CREATE DATABASE database-name&nbsp;&nbsp;  <br>
2、说明：删除数据库&nbsp;&nbsp;  <br>
drop database dbname&nbsp;&nbsp;  <br>
3、说明：备份sql server&nbsp;&nbsp;  <br>
--- 创建 备份数据的 device&nbsp;&nbsp;  <br>
USE master&nbsp;&nbsp;  <br>
EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'&nbsp;&nbsp;  <br>
--- 开始 备份&nbsp;&nbsp;  <br>
BACKUP DATABASE pubs TO testBack&nbsp;&nbsp;  <br>
4、说明：创建新表&nbsp;&nbsp;  <br>
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)&nbsp;&nbsp;  <br>
根据已有的表创建新表：&nbsp;&nbsp;  <br>
A：create table tab_new like tab_old (使用旧表创建新表)&nbsp;&nbsp;  <br>
B：create table tab_new as select col1,col2... from tab_old definition only&nbsp;&nbsp;  <br>
5、说明：删除新表&nbsp;&nbsp;  <br>
drop table tabname&nbsp;&nbsp;  <br>
6、说明：增加一个列&nbsp;&nbsp;  <br>
Alter table tabname add column col type&nbsp;&nbsp;  <br>
注：列增加后将不能删除。DB2中列加上后数据类型也不能改变，唯一能改变的是增加varchar类型的长度。&nbsp;&nbsp;  <br>
7、说明：添加主键： Alter table tabname add primary key(col)&nbsp;&nbsp;  <br>
说明：删除主键： Alter table tabname drop primary key(col)&nbsp;&nbsp;  <br>
8、说明：创建索引：create [unique] index idxname on tabname(col....)&nbsp;&nbsp;  <br>
删除索引：drop index idxname&nbsp;&nbsp;  <br>
注：索引是不可更改的，想更改必须删除重新建。&nbsp;&nbsp;  <br>
9、说明：创建视图：create view viewname as select statement&nbsp;&nbsp;  <br>
删除视图：drop view viewname&nbsp;&nbsp;  <br>
10、说明：几个简单的基本的sql语句&nbsp;&nbsp;  <br>
选择：select * from table1 where 范围&nbsp;&nbsp;  <br>
插入：insert into table1(field1,field2) values(value1,value2)&nbsp;&nbsp;  <br>
删除：delete from table1 where 范围&nbsp;&nbsp;  <br>
更新：update table1 set field1=value1 where 范围&nbsp;&nbsp;  <br>
查找：select * from table1 where field1 like '%value1%' ---like的语法很精妙，查资料!&nbsp;&nbsp;  <br>
排序：select * from table1 order by field1,field2 [desc]&nbsp;&nbsp;  <br>
总数：select count as totalcount from table1&nbsp;&nbsp;  <br>
求和：select sum(field1) as sumvalue from table1&nbsp;&nbsp;  <br>
平均：select avg(field1) as avgvalue from table1&nbsp;&nbsp;  <br>
最大：select max(field1) as maxvalue from table1&nbsp;&nbsp;  <br>
最小：select min(field1) as minvalue from table1&nbsp;&nbsp;  <br>
11、说明：几个高级查询运算词&nbsp;&nbsp;  <br>
A： UNION 运算符&nbsp;&nbsp;  <br>
UNION 运算符通过组合其他两个结果表（例如 TABLE1 和 TABLE2）并消去表中任何重复行而派生出一个结果表。当 ALL 随 UNION 一起使用时（即 UNION ALL），不消除重复行。两种情况下，派生表的每一行不是来自 TABLE1 就是来自 TABLE2。&nbsp;&nbsp;  <br>
B： EXCEPT 运算符&nbsp;&nbsp;  <br>
EXCEPT 运算符通过包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重复行而派生出一个结果表。当 ALL 随 EXCEPT 一起使用时 (EXCEPT ALL)，不消除重复行。&nbsp;&nbsp;  <br>
C： INTERSECT 运算符&nbsp;&nbsp;  <br>
INTERSECT 运算符通过只包括 TABLE1 和 TABLE2 中都有的行并消除所有重复行而派生出一个结果表。当 ALL 随 INTERSECT 一起使用时 (INTERSECT ALL)，不消除重复行。&nbsp;&nbsp;  <br>
注：使用运算词的几个查询结果行必须是一致的。&nbsp;&nbsp;  <br>
12、说明：使用外连接&nbsp;&nbsp;  <br>
A、left outer join：&nbsp;&nbsp;  <br>
左外连接（左连接）：结果集几包括连接表的匹配行，也包括左连接表的所有行。&nbsp;&nbsp;  <br>
SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c&nbsp;&nbsp;  <br>
B：right outer join:&nbsp;&nbsp;  <br>
右外连接(右连接)：结果集既包括连接表的匹配连接行，也包括右连接表的所有行。&nbsp;&nbsp;  <br>
C：full outer join：&nbsp;&nbsp;  <br>
全外连接：不仅包括符号连接表的匹配行，还包括两个连接表中的所有记录。&nbsp;&nbsp;  <br>
二、提升&nbsp;&nbsp;  <br>
1、说明：复制表(只复制结构,源表名：a 新表名：b) (Access可用)&nbsp;&nbsp;  <br>
法一：select * into b from a where 1&lt;&gt;1&nbsp;&nbsp;  <br>
法二：select top 0 * into b from a&nbsp;&nbsp;  <br>
2、说明：拷贝表(拷贝数据,源表名：a 目标表名：b) (Access可用)&nbsp;&nbsp;  <br>
insert into b(a, b, c) select d,e,f from b;&nbsp;&nbsp;  <br>
3、说明：跨数据库之间表的拷贝(具体数据使用绝对路径) (Access可用)&nbsp;&nbsp;  <br>
insert into b(a, b, c) select d,e,f from b in '具体数据库' where 条件&nbsp;&nbsp;  <br>
例子：..from b in '&quot;&amp;Server.MapPath(&quot;.&quot;)&amp;&quot;\data.mdb&quot; &amp;&quot;' where..&nbsp;&nbsp;  <br>
4、说明：子查询(表名1：a 表名2：b)&nbsp;&nbsp;  <br>
select a,b,c from a where a IN (select d from b ) 或者: select a,b,c from a where a IN (1,2,3)&nbsp;&nbsp;  <br>
5、说明：显示文章、提交人和最后回复时间&nbsp;&nbsp;  <br>
select a.title,a.username,b.adddate from table a,(select max(adddate) adddate from table where table.title=a.title) b&nbsp;&nbsp;  <br>
6、说明：外连接查询(表名1：a 表名2：b)&nbsp;&nbsp;  <br>
select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c&nbsp;&nbsp;  <br>
7、说明：在线视图查询(表名1：a )&nbsp;&nbsp;  <br>
select * from (SELECT a,b,c FROM a) T where t.a &gt; 1;&nbsp;&nbsp;  <br>
8、说明：between的用法,between限制查询数据范围时包括了边界值,not between不包括&nbsp;&nbsp;  <br>
select * from table1 where time between time1 and time2&nbsp;&nbsp;  <br>
select a,b,c, from table1 where a not between 数值1 and 数值2&nbsp;&nbsp;  <br>
9、说明：in 的使用方法&nbsp;&nbsp;  <br>
select * from table1 where a [not] in ('值1','值2','值4','值6')&nbsp;&nbsp;  <br>
10、说明：两张关联表，删除主表中已经在副表中没有的信息&nbsp;&nbsp;  <br>
delete from table1 where not exists ( select * from table2 where table1.field1=table2.field1 )&nbsp;&nbsp;  <br>
11、说明：四表联查问题：&nbsp;&nbsp;  <br>
select * from a left inner join b on a.a=b.b right inner join c on a.a=c.c inner join d on a.a=d.d where .....&nbsp;&nbsp;  <br>
12、说明：日程安排提前五分钟提醒&nbsp;&nbsp;  <br>
SQL: select * from 日程安排 where datediff('minute',f开始时间,getdate())&gt;5&nbsp;&nbsp;  <br>
13、说明：一条sql 语句搞定数据库分页&nbsp;&nbsp;  <br>
select top 10 b.* from (select top 20 主键字段,排序字段 from 表名 order by 排序字段 desc) a,表名 b where b.主键字段 = a.主键字段 order by a.排序字段&nbsp;&nbsp;  <br>
14、说明：前10条记录&nbsp;&nbsp;  <br>
select top 10 * form table1 where 范围&nbsp;&nbsp;  <br>
15、说明：选择在每一组b值相同的数据中对应的a最大的记录的所有信息(类似这样的用法可以用于论坛每月排行榜,每月热销产品分析,按科目成绩排名,等等.)&nbsp;&nbsp;  <br>
select a,b,c from tablename ta where a=(select max(a) from tablename tb where tb.b=ta.b)&nbsp;&nbsp;  <br>
16、说明：包括所有在 TableA 中但不在 TableB和TableC 中的行并消除所有重复行而派生出一个结果表&nbsp;&nbsp;  <br>
(select a from tableA ) except (select a from tableB) except (select a from tableC)&nbsp;&nbsp;  <br>
17、说明：随机取出10条数据&nbsp;&nbsp;  <br>
select top 10 * from tablename order by newid()&nbsp;&nbsp;  <br>
18、说明：随机选择记录&nbsp;&nbsp;  <br>
select newid()&nbsp;&nbsp;  <br>
19、说明：删除重复记录&nbsp;&nbsp;  <br>
Delete from tablename where id not in (select max(id) from tablename group by col1,col2,...)&nbsp;&nbsp;  <br>
20、说明：列出数据库里所有的表名&nbsp;&nbsp;  <br>
select name from sysobjects where type='U'  <br>
21、说明：列出表里的所有的&nbsp;&nbsp;  <br>
select name from syscolumns where id=object_id('TableName')&nbsp;&nbsp;  <br>
22、说明：列示type、vender、pcs字段，以type字段排列，case可以方便地实现多重选择，类似select 中的case。&nbsp;&nbsp;  <br>
select type,sum(case vender when 'A' then pcs else 0 end),sum(case vender when 'C' then pcs else 0 end),sum(case vender when 'B' then pcs else 0 end) FROM tablename group by type&nbsp;&nbsp;  <br>
显示结果：&nbsp;&nbsp;  <br>
type vender pcs&nbsp;&nbsp;  <br>
电脑 A 1&nbsp;&nbsp;  <br>
电脑 A 1&nbsp;&nbsp;  <br>
光盘 B 2&nbsp;&nbsp;  <br>
光盘 A 2&nbsp;&nbsp;  <br>
手机 B 3&nbsp;&nbsp;  <br>
手机 C 3&nbsp;&nbsp;  <br>
23、说明：初始化表table1&nbsp;&nbsp;  <br>
TRUNCATE TABLE table1&nbsp;&nbsp;  <br>
24、说明：选择从10到15的记录&nbsp;&nbsp;  <br>
select top 5 * from (select top 15 * from table order by id asc) table_别名 order by id desc&nbsp;&nbsp;  <br>
三、技巧&nbsp;&nbsp;  <br>
1、11=1，1=2的使用，在SQL语句组合时用的较多&nbsp;&nbsp;  <br>
&quot;where 1=1&quot; 是表示选择全部&nbsp;&nbsp;  &quot;where 1=2&quot;全部不选，&nbsp;&nbsp;  <br>
如：&nbsp;&nbsp;  <br>
if @strWhere !=''&nbsp;&nbsp;  <br>
begin&nbsp;&nbsp;  <br>
set @strSQL = 'select count(*) as Total from [' + @tblName + '] where ' + @strWhere&nbsp;&nbsp;  <br>
end&nbsp;&nbsp;  <br>
else&nbsp;&nbsp;  <br>
begin&nbsp;&nbsp;  <br>
set @strSQL = 'select count(*) as Total from [' + @tblName + ']'&nbsp;&nbsp;  <br>
end&nbsp;&nbsp;  <br>
我们可以直接写成&nbsp;&nbsp;  <br>
set @strSQL = 'select count(*) as Total from [' + @tblName + '] where 11=1 安定 '+ @strWhere&nbsp;&nbsp;  <br>
2、收缩数据库&nbsp;&nbsp;  <br>
--重建索引&nbsp;&nbsp;  <br>
DBCC REINDEX&nbsp;&nbsp;  <br>
DBCC INDEXDEFRAG&nbsp;&nbsp;  <br>
--收缩数据和日志&nbsp;&nbsp;  <br>
DBCC SHRINKDB&nbsp;&nbsp;  <br>
DBCC SHRINKFILE&nbsp;&nbsp;  <br>
3、压缩数据库&nbsp;&nbsp;  <br>
dbcc shrinkdatabase(dbname)&nbsp;&nbsp;  <br>
4、转移数据库给新用户以已存在用户权限&nbsp;&nbsp;  <br>
exec sp_change_users_login 'update_one','newname','oldname'&nbsp;&nbsp;  <br>
go&nbsp;&nbsp;  <br>
5、检查备份集&nbsp;&nbsp;  <br>
RESTORE VERIFYONLY from disk='E:\dvbbs.bak'  <br>
6、修复数据库&nbsp;&nbsp;  <br>
ALTER DATABASE [dvbbs] SET SINGLE_USER&nbsp;&nbsp;  <br>
GO&nbsp;&nbsp;  <br>
DBCC CHECKDB('dvbbs',repair_allow_data_loss) WITH TABLOCK&nbsp;&nbsp;  <br>
GO&nbsp;&nbsp;  <br>
ALTER DATABASE [dvbbs] SET MULTI_USER&nbsp;&nbsp;  <br>
GO&nbsp;&nbsp;  <br>
7、日志清除&nbsp;&nbsp;  <br>
SET NOCOUNT ON&nbsp;&nbsp;  <br>
DECLARE @LogicalFileName sysname,&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  @MaxMinutes INT,&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  @NewSize INT&nbsp;&nbsp;  <br>
  <br>
USE&nbsp;&nbsp;&nbsp;&nbsp;  tablename&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  -- 要操作的数据库名&nbsp;&nbsp;  <br>
SELECT  @LogicalFileName = 'tablename_log',  -- 日志文件名&nbsp;&nbsp;  <br>
@MaxMinutes = 10,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  -- Limit on time allowed to wrap log.&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  @NewSize = 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  -- 你想设定的日志文件的大小(M)&nbsp;&nbsp;  <br>
-- Setup / initialize&nbsp;&nbsp;  <br>
DECLARE @OriginalSize int&nbsp;&nbsp;  <br>
SELECT @OriginalSize = size  <br>
  FROM sysfiles&nbsp;&nbsp;  <br>
  WHERE name = @LogicalFileName&nbsp;&nbsp;  <br>
SELECT 'Original Size of ' + db_name() + ' LOG is ' +&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  CONVERT(VARCHAR(30),@OriginalSize) + ' 8K pages or ' +&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  CONVERT(VARCHAR(30),(@OriginalSize*8/1024)) + 'MB'&nbsp;&nbsp;  <br>
  FROM sysfiles&nbsp;&nbsp;  <br>
  WHERE name = @LogicalFileName&nbsp;&nbsp;  <br>
CREATE TABLE DummyTrans&nbsp;&nbsp;  <br>
  (DummyColumn char (8000) not null)&nbsp;&nbsp;  <br>
  <br>
DECLARE @Counter&nbsp;&nbsp;  INT,&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  @StartTime DATETIME,&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  @TruncLog  VARCHAR(255)&nbsp;&nbsp;  <br>
SELECT  @StartTime = GETDATE(),&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  @TruncLog = 'BACKUP LOG ' + db_name() + ' WITH TRUNCATE_ONLY'&nbsp;&nbsp;  <br>
DBCC SHRINKFILE (@LogicalFileName, @NewSize)&nbsp;&nbsp;  <br>
EXEC (@TruncLog)&nbsp;&nbsp;  <br>
-- Wrap the log if necessary.&nbsp;&nbsp;  <br>
WHILE&nbsp;&nbsp;&nbsp;&nbsp;  @MaxMinutes &gt; DATEDIFF (mi, @StartTime, GETDATE()) -- time has not expired&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  AND @OriginalSize = (SELECT size FROM sysfiles WHERE name = @LogicalFileName)&nbsp;&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  AND (@OriginalSize * 8 /1024) &gt; @NewSize&nbsp;&nbsp;&nbsp;  <br>
  BEGIN -- Outer loop.&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;  SELECT @Counter = 0  <br>
&nbsp;&nbsp;&nbsp;  WHILE  ((@Counter &lt; @OriginalSize / 16) AND (@Counter &lt; 50000))&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  BEGIN -- update&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  INSERT DummyTrans VALUES ('Fill Log')&nbsp;&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  DELETE DummyTrans&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  SELECT @Counter = @Counter + 1&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  END&nbsp;&nbsp;&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;  EXEC (@TruncLog)&nbsp;&nbsp;&nbsp;  <br>
  END&nbsp;&nbsp;&nbsp;&nbsp;  <br>
SELECT 'Final Size of ' + db_name() + ' LOG is ' +&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  CONVERT(VARCHAR(30),size) + ' 8K pages or ' +&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  CONVERT(VARCHAR(30),(size*8/1024)) + 'MB'&nbsp;&nbsp;  <br>
  FROM sysfiles&nbsp;&nbsp;  <br>
  WHERE name = @LogicalFileName&nbsp;&nbsp;  <br>
DROP TABLE DummyTrans&nbsp;&nbsp;  <br>
SET NOCOUNT OFF&nbsp;&nbsp;  <br>
8、说明：更改某个表&nbsp;&nbsp;  <br>
exec sp_changeobjectowner 'tablename','dbo'&nbsp;&nbsp;  <br>
9、存储更改全部表&nbsp;&nbsp;  <br>
CREATE PROCEDURE dbo.User_ChangeObjectOwnerBatch&nbsp;&nbsp;  <br>
 @OldOwner as NVARCHAR(128),&nbsp;&nbsp;  <br>
 @NewOwner as NVARCHAR(128)&nbsp;&nbsp;  <br>
AS&nbsp;&nbsp;  <br>
DECLARE @Name&nbsp;&nbsp;  as NVARCHAR(128)&nbsp;&nbsp;  <br>
DECLARE @Owner  as NVARCHAR(128)&nbsp;&nbsp;  <br>
DECLARE @OwnerName  as NVARCHAR(128)&nbsp;&nbsp;  <br>
DECLARE curObject CURSOR FOR&nbsp;&nbsp;  <br>
 select 'Name'&nbsp;&nbsp;  = name,&nbsp;&nbsp;  <br>
  'Owner'&nbsp;&nbsp;  = user_name(uid)&nbsp;&nbsp;  <br>
 from sysobjects&nbsp;&nbsp;  <br>
 where user_name(uid)=@OldOwner&nbsp;&nbsp;  <br>
 order by name&nbsp;&nbsp;  <br>
OPEN  curObject&nbsp;&nbsp;  <br>
FETCH NEXT FROM curObject INTO @Name, @Owner&nbsp;&nbsp;  <br>
WHILE(@@FETCH_STATUS=0)&nbsp;&nbsp;  <br>
BEGIN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <br>
 if @Owner=@OldOwner&nbsp;&nbsp;  <br>
 begin&nbsp;&nbsp;  <br>
  set @OwnerName = @OldOwner + '.' + rtrim(@Name)&nbsp;&nbsp;  <br>
  exec sp_changeobjectowner @OwnerName, @NewOwner&nbsp;&nbsp;  <br>
 end&nbsp;&nbsp;  <br>
-- select @name,@NewOwner,@OldOwner&nbsp;&nbsp;  <br>
 FETCH NEXT FROM curObject INTO @Name, @Owner&nbsp;&nbsp;  <br>
END&nbsp;&nbsp;  <br>
close curObject&nbsp;&nbsp;  <br>
deallocate curObject&nbsp;&nbsp;  <br>
GO&nbsp;&nbsp;  <br>
  <br>
10、SQL SERVER中直接循环写入数据&nbsp;&nbsp;  <br>
declare @i int&nbsp;&nbsp;  <br>
set @i=1  <br>
while @i&lt;30  <br>
begin&nbsp;&nbsp;  <br>
&nbsp;&nbsp;  insert into test (userid) values(@i)&nbsp;&nbsp;  <br>
&nbsp;&nbsp;  set @i=@i+1&nbsp;&nbsp;  <br>
end&nbsp;&nbsp;  <br>
小记存储过程中经常用到的本周，本月，本年函数&nbsp;&nbsp;  <br>
Dateadd(wk,datediff(wk,0,getdate()),-1)&nbsp;&nbsp;  <br>
Dateadd(wk,datediff(wk,0,getdate()),6)&nbsp;&nbsp;  <br>
Dateadd(mm,datediff(mm,0,getdate()),0)&nbsp;&nbsp;  <br>
Dateadd(ms,-3,dateadd(mm,datediff(m,0,getdate())+1,0))&nbsp;&nbsp;  <br>
Dateadd(yy,datediff(yy,0,getdate()),0)&nbsp;&nbsp;  <br>
Dateadd(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate())+1, 0))&nbsp;&nbsp;  <br>
上面的SQL代码只是一个时间段&nbsp;&nbsp;  <br>
Dateadd(wk,datediff(wk,0,getdate()),-1)&nbsp;&nbsp;  <br>
Dateadd(wk,datediff(wk,0,getdate()),6)&nbsp;&nbsp;  <br>
就是表示本周时间段.&nbsp;&nbsp;  <br>
下面的SQL的条件部分,就是查询时间段在本周范围内的:&nbsp;&nbsp;  <br>
Where Time BETWEEN Dateadd(wk,datediff(wk,0,getdate()),-1) AND Dateadd(wk,datediff(wk,0,getdate()),6)&nbsp;&nbsp;  <br>
而在存储过程中&nbsp;&nbsp;  <br>
select @begintime = Dateadd(wk,datediff(wk,0,getdate()),-1)&nbsp;&nbsp;  <br>
select @endtime = Dateadd(wk,datediff(wk,0,getdate()),6) 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/19chang19/blog/category/sql%CA%FD%BE%DD%BF%E2%BA%CDado%B1%E0%B3%CC">sql数据库和ado编程</a>&nbsp;<a href="http://hi.baidu.com/19chang19/blog/item/4267afeed0534c2e2df534e3.html#comment">查看评论</a>]]></description>
        <pubDate>2008-12-23  20:54</pubDate>
        <category><![CDATA[sql数据库和ado编程]]></category>
        <author><![CDATA[19chang19]]></author>
		<guid>http://hi.baidu.com/19chang19/blog/item/4267afeed0534c2e2df534e3.html</guid>
</item>

<item>
        <title><![CDATA[1-3-1]]></title>
        <link><![CDATA[http://hi.baidu.com/19chang19/blog/item/b2eab6100b324b06203f2e72.html]]></link>
        <description><![CDATA[
		
		<p>&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;<a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd</a>&quot;&gt;<br>
&lt;html xmlns=&quot;<a href="http://www.w3.org/1999/xhtml">http://www.w3.org/1999/xhtml</a>&quot;&gt;<br>
&lt;head&gt;<br>
&lt;title&gt;1-3-1 布局适应宽度&lt;/title&gt;</p>
<p>&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=gb2312&quot; /&gt;<br>
&lt;style type=&quot;text/css&quot; media=&quot;screen&quot;&gt;<br>
body {<br>
background: #FFF;<br>
font: 13px/1.5 Arial;<br>
margin:0;<br>
padding:0;<br>
}</p>
<p>p{<br>
text-indent:2em; <br>
}</p>
<p>.rounded {<br>
  background: url(images/left-top.gif)&nbsp;&nbsp;  top left no-repeat;<br>
  width:100%;<br>
  }<br>
.rounded h2 {<br>
  background: <br>
 url(images/right-top.gif) <br>
  top right no-repeat;<br>
  padding:20px 20px 10px;<br>
  margin:0;<br>
  <br>
  }<br>
.rounded .main {<br>
  background: <br>
 url(images/right.gif) <br>
  top right repeat-y;<br>
  padding:10px 20px;<br>
&nbsp;&nbsp;&nbsp;  margin:-2em 0 0 0;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  }<br>
.rounded .footer {<br>
  background: <br>
 url(images/left-bottom.gif) <br>
  bottom left no-repeat;<br>
  }<br>
.rounded .footer p {<br>
  color:#888;<br>
  text-align:right;<br>
  background:url(images/right-bottom.gif) bottom right no-repeat;<br>
  display:block;<br>
  padding:10px 20px 20px;<br>
  margin:-2em 0 0 0;<br>
  }<br>
  <br>
#header,#pagefooter,#container{<br>
 margin:0 auto;<br>
 width:85%;<br>
 }</p>
<p>#container{<br>
position:relative;<br>
}</p>
<p>#navi{<br>
position:absolute;<br>
top:0;<br>
left:0;<br>
width:150px;<br>
 }</p>
<p><br>
#content{<br>
margin:0 250px 0 150px;<br>
 }</p>
<p>#content img{<br>
 float:right;<br>
 }</p>
<p><br>
#side{<br>
position:absolute;<br>
top:0;<br>
right:0;<br>
width:250px;</p>
<p> }</p>
<p>#pagefooter{<br>
 clear:both;<br>
}<br>
&lt;/style&gt;<br>
&lt;/head&gt;<br>
&lt;body&gt;<br>
&lt;div id=&quot;header&quot;&gt;<br>
 &lt;div class=&quot;rounded&quot;&gt;<br>
&nbsp;&nbsp; &lt;h2&gt;Page Header&lt;/h2&gt;<br>
&nbsp;&nbsp; &lt;div class=&quot;main&quot;&gt;<br>
&nbsp;&nbsp; &lt;/div&gt;<br>
&nbsp;&nbsp; &lt;div class=&quot;footer&quot;&gt;<br>
&nbsp;&nbsp; &lt;p&gt;<br>
&nbsp;&nbsp; 查看详细信息&amp;gt;&amp;gt;<br>
&nbsp;&nbsp; &lt;/p&gt; <br>
&nbsp;&nbsp; &lt;/div&gt;<br>
 &lt;/div&gt;<br>
&lt;/div&gt;<br>
&lt;div id=&quot;container&quot;&gt;<br>
&lt;div id=&quot;naviWrap&quot;&gt;<br>
&lt;div id=&quot;navi&quot;&gt;<br>
 &lt;div class=&quot;rounded&quot;&gt;<br>
&nbsp;&nbsp; &lt;h2&gt;Navi Bar&lt;/h2&gt;<br>
&nbsp;&nbsp; &lt;div class=&quot;main&quot;&gt;<br>
&nbsp;&nbsp; &lt;p&gt;<br>
&nbsp;&nbsp; 对于一个网页设计者来说，HTML语言一定不会感到陌生，因为它是所有网页制作的基础。&lt;/p&gt;</p>
<p>&nbsp;&nbsp; &lt;/div&gt;<br>
&nbsp;&nbsp; &lt;div class=&quot;footer&quot;&gt;<br>
&nbsp;&nbsp; &lt;p&gt;<br>
&nbsp;&nbsp; 查看详细信息&amp;gt;&amp;gt;<br>
&nbsp;&nbsp; &lt;/p&gt; <br>
&nbsp;&nbsp; &lt;/div&gt;<br>
 &lt;/div&gt;<br>
&lt;/div&gt;<br>
&lt;/div&gt;<br>
&lt;div id=&quot;content&quot;&gt;<br>
 &lt;div class=&quot;rounded&quot;&gt;<br>
&nbsp;&nbsp; &lt;h2&gt;Page Content&lt;/h2&gt;<br>
&nbsp;&nbsp; &lt;div class=&quot;main&quot;&gt;<br>
&nbsp;&nbsp; &lt;img src=&quot;images/cup.gif&quot; width=&quot;128&quot; height=&quot;128&quot; /&gt;<br>
&nbsp;&nbsp; &lt;p&gt;<br>
&nbsp;&nbsp; 对于一个网页设计者来说，HTML语言一定不会感到陌生，因为它是所有网页制作的基础。但是如果希望网页能够美观、大方，并且升级方便，维护轻松，那么仅仅HTML是不够的，CSS在这中间扮演着重要的角色。本课从CSS的基本概念出发，介绍CSS语言的特点。这是一行文本，这里作为样例，显示在布局框中。这是一行文本，这里作为样例，显示在布局框中。&lt;/p&gt;</p>
<p>&nbsp;&nbsp; &lt;/div&gt;<br>
&nbsp;&nbsp; &lt;div class=&quot;footer&quot;&gt;<br>
&nbsp;&nbsp; &lt;p&gt;<br>
&nbsp;&nbsp; 查看详细信息&amp;gt;&amp;gt;<br>
&nbsp;&nbsp; &lt;/p&gt; <br>
&nbsp;&nbsp; &lt;/div&gt;<br>
 &lt;/div&gt;<br>
&lt;/div&gt;<br>
&lt;div id=&quot;sideWrap&quot;&gt;<br>
&lt;div id=&quot;side&quot;&gt;<br>
 &lt;div class=&quot;rounded&quot;&gt;<br>
&nbsp;&nbsp; &lt;h2&gt;Side Bar&lt;/h2&gt;<br>
&nbsp;&nbsp; &lt;div class=&quot;main&quot;&gt;<br>
&nbsp;&nbsp; &lt;p&gt;<br>
&nbsp;&nbsp; 但是如果希望网页能够美观、大方，并且升级方便，维护轻松，那么仅仅HTML是不够的，CSS在这中间扮演着重要的角色。这是一行文本，这里作为样例，显示在布局框中。这是一行文本，这里作为样例，显示在布局框中。<br>
&nbsp;&nbsp; &lt;/p&gt;<br>
&nbsp;&nbsp; &lt;/div&gt;<br>
&nbsp;&nbsp; &lt;div class=&quot;footer&quot;&gt;<br>
&nbsp;&nbsp; &lt;p&gt;<br>
&nbsp;&nbsp; 查看详细信息&amp;gt;&amp;gt;<br>
&nbsp;&nbsp; &lt;/p&gt; <br>
&nbsp;&nbsp; &lt;/div&gt;<br>
 &lt;/div&gt;<br>
&lt;/div&gt;<br>
&lt;/div&gt;<br>
&lt;/div&gt;<br>
&lt;div id=&quot;pagefooter&quot;&gt;<br>
 &lt;div class=&quot;rounded&quot;&gt;<br>
&nbsp;&nbsp; &lt;h2&gt;Page Footer&lt;/h2&gt;<br>
&nbsp;&nbsp; &lt;div class=&quot;main&quot;&gt;<br>
&nbsp;&nbsp; &lt;p&gt;<br>
&nbsp;&nbsp; 这是一行文本，这里作为样例，显示在布局框中。<br>
&nbsp;&nbsp; &lt;/p&gt;<br>
&nbsp;&nbsp; &lt;/div&gt;<br>
&nbsp;&nbsp; &lt;div class=&quot;footer&quot;&gt;<br>
&nbsp;&nbsp; &lt;p&gt;<br>
&nbsp;&nbsp; 查看详细信息&amp;gt;&amp;gt;<br>
&nbsp;&nbsp; &lt;/p&gt; <br>
&nbsp;&nbsp; &lt;/div&gt;<br>
 &lt;/div&gt;<br>
&lt;/div&gt;</p>
<p>&lt;/body&gt;<br>
&lt;/html&gt;</p> 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/19chang19/blog/category/%D6%D0%D7%AA%D5%BE">中转站</a>&nbsp;<a href="http://hi.baidu.com/19chang19/blog/item/b2eab6100b324b06203f2e72.html#comment">查看评论</a>]]></description>
        <pubDate>2008-12-21  23:19</pubDate>
        <category><![CDATA[中转站]]></category>
        <author><![CDATA[19chang19]]></author>
		<guid>http://hi.baidu.com/19chang19/blog/item/b2eab6100b324b06203f2e72.html</guid>
</item>

<item>
        <title><![CDATA[jquery插件http://makoomba.altervista.org/grid/]]></title>
        <link><![CDATA[http://hi.baidu.com/19chang19/blog/item/faa8383b4a938fed15cecb05.html]]></link>
        <description><![CDATA[
		
		<p> </p>
<p><u><font color="#810081"><a href="http://kb.cnblogs.com/page/43339/">http://kb.cnblogs.com/page/43339/</a></font></u></p>
<p><u><font color="#810081"><a href="http://www.cnblogs.com/evlon/archive/2008/12/03/1346456.html">http://www.cnblogs.com/evlon/archive/2008/12/03/1346456.html</a></font></u></p>
<p><u><font color="#810081"><a href="http://www.cnblogs.com/Arlen/archive/2008/12/03/1346657.html">http://www.cnblogs.com/Arlen/archive/2008/12/03/1346657.html</a></font></u></p>
<p><u><font color="#810081"><a href="http://www.cnblogs.com/liujiang/archive/2008/12/03/1346820.html">http://www.cnblogs.com/liujiang/archive/2008/12/03/1346820.html</a></font></u></p>
<p> </p>
<p><a href="http://docs.jquery.com/Plugins/Tablesorter">http://docs.jquery.com/Plugins/Tablesorter</a></p>
<p><a href="http://tablesorter.com/docs/">http://tablesorter.com/docs/</a></p>
<p><a href="http://www.reconstrukt.com/ingrid/example1.html">http://www.reconstrukt.com/ingrid/example1.html</a></p>
<p>$.addGridControl = function(t,p) {<br>
&nbsp;&nbsp;  if (t.grid) return false;<br>
&nbsp;&nbsp;  var grid = {<br>
&nbsp;&nbsp;&nbsp;&nbsp;  table: t,<br>
&nbsp;&nbsp;&nbsp;&nbsp;  scrollTop: 0,<br>
&nbsp;&nbsp;&nbsp;&nbsp;  height: p.height,<br>
&nbsp;&nbsp;&nbsp;&nbsp;  page: 0, <br>
&nbsp;&nbsp;&nbsp;&nbsp;  headers: [],<br>
&nbsp;&nbsp;&nbsp;&nbsp;  cols: [],<br>
&nbsp;&nbsp;&nbsp;&nbsp;<br>
&nbsp;&nbsp;&nbsp;&nbsp;  addJSONData: function(JSON) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  eval(&quot;var data = &quot; + JSON);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  var tbody = $(&quot;tbody&quot;,this.table);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  var row = &quot;&quot;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  var cur = &quot;&quot;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  for (var i=0;i&lt;data.rows.length;i++) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  cur = data.rows[i]<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  row = '&lt;tr id=&quot;'+cur.id+'&quot;&gt;'<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  for (var j=0;j&lt;cur.cell.length;j++) row += &quot;&lt;td&gt;&quot;+cur.cell[j]+&quot;&lt;/td&gt;&quot;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  row += '&lt;/tr&gt;';<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  tbody.append(row);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  }<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  tbody = null;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  this.loading = false;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  $(&quot;div.loading&quot;,this.hDiv).fadeOut(&quot;fast&quot;);<br>
&nbsp;&nbsp;&nbsp;&nbsp;  },<br>
&nbsp;&nbsp;&nbsp;&nbsp;  populate: function() {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  if (!this.loading) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  this.loading = true;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  this.page++<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  $(&quot;div.loading&quot;,this.hDiv).fadeIn(&quot;fast&quot;);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  //$.get(&quot;dyndata.php/page/&quot;+this.page,function(xml) { grid.addXmlData(xml) });<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  $.get(&quot;dyndata.php/page/&quot;+this.page+&quot;/JSON&quot;,function(xml) { grid.addJSONData(xml) });<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  }<br>
&nbsp;&nbsp;&nbsp;&nbsp;  }<br>
&nbsp;&nbsp;&nbsp;  }<br>
&nbsp;&nbsp;<br>
&nbsp;&nbsp;  var thead = $(&quot;thead:first&quot;,t).get(0);<br>
&nbsp;&nbsp;  var count = 0;<br>
&nbsp;&nbsp;  $(&quot;tr:first th&quot;,thead).each(<br>
&nbsp;&nbsp;&nbsp;  function () {<br>
&nbsp;&nbsp;&nbsp;&nbsp;  var w = p.width[count]<br>
&nbsp;&nbsp;&nbsp;&nbsp;  $(this).css(&quot;width&quot;,w+&quot;px&quot;);//.prepend(res);<br>
&nbsp;&nbsp;&nbsp;&nbsp;  //在这里加事件&nbsp;&nbsp;<br>
&nbsp;&nbsp;&nbsp;&nbsp;  grid.headers[count++] = { width: w, el: this };<br>
&nbsp;&nbsp;&nbsp;  }<br>
&nbsp;&nbsp;  )<br>
&nbsp;&nbsp;  count = 0;<br>
&nbsp;&nbsp;  $(&quot;tbody tr:first td&quot;,t).each(<br>
&nbsp;&nbsp;&nbsp;  function() {<br>
&nbsp;&nbsp;&nbsp;&nbsp;  var w = p.width[count]<br>
&nbsp;&nbsp;&nbsp;&nbsp;  $(this).css(&quot;width&quot;,w+&quot;px&quot;);<br>
&nbsp;&nbsp;&nbsp;&nbsp;  grid.cols[count++] = this ;<br>
&nbsp;&nbsp;&nbsp;  }<br>
&nbsp;&nbsp;  );<br>
&nbsp;&nbsp;  grid.width = $.getCSS ? $.getCSS(t,&quot;width&quot;) : $.getCSS(t,&quot;width&quot;);<br>
&nbsp;&nbsp;  grid.bWidth = grid.width;<br>
&nbsp;&nbsp;<br>
&nbsp;&nbsp;  thead = null;<br>
&nbsp;&nbsp;&nbsp;&nbsp;<br>
&nbsp;&nbsp;  $(t).mouseover(<br>
&nbsp;&nbsp;&nbsp;&nbsp;  function(e) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  var td = (e.target || e.srcElement);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  td.className = &quot;hover&quot; <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  td.parentNode.className = &quot;hover&quot;<br>
&nbsp;&nbsp;&nbsp;&nbsp;  }<br>
&nbsp;&nbsp;&nbsp;  )<br>
&nbsp;&nbsp;&nbsp;  .mouseout(<br>
&nbsp;&nbsp;&nbsp;&nbsp;  function(e) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  var td = (e.target || e.srcElement);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  td.className = &quot;&quot; <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  td.parentNode.className = &quot;&quot;<br>
&nbsp;&nbsp;&nbsp;&nbsp;  }<br>
&nbsp;&nbsp;&nbsp;  )<br>
&nbsp;&nbsp;  //while (grid.bDiv.scrollHeight&lt;=grid.height) grid.populate()<br>
&nbsp;&nbsp;  grid.populate()<br>
<br>
&nbsp;&nbsp;  //$(document).mouseup(function (e) {grid.dragEnd();})<br>
&nbsp;&nbsp;  t.grid = grid;<br>
&nbsp;&nbsp;  // MSIE memory leak<br>
&nbsp;&nbsp;  $(window).unload(function () {<br>
&nbsp;&nbsp;&nbsp;&nbsp;  t.grid = null;&nbsp;&nbsp;&nbsp;<br>
&nbsp;&nbsp;&nbsp;  }<br>
&nbsp;&nbsp;  );<br>
}<br>
<br>
$.fn.grid = function(p) {<br>
&nbsp;&nbsp;  return this.each(<br>
&nbsp;&nbsp;&nbsp;  function() {<br>
&nbsp;&nbsp;&nbsp;&nbsp;  $.addGridControl(this,p);<br>
&nbsp;&nbsp;&nbsp;  }<br>
&nbsp;&nbsp;  );<br>
}</p> 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/19chang19/blog/category/%D6%D0%D7%AA%D5%BE">中转站</a>&nbsp;<a href="http://hi.baidu.com/19chang19/blog/item/faa8383b4a938fed15cecb05.html#comment">查看评论</a>]]></description>
        <pubDate>2008-11-30  23:20</pubDate>
        <category><![CDATA[中转站]]></category>
        <author><![CDATA[19chang19]]></author>
		<guid>http://hi.baidu.com/19chang19/blog/item/faa8383b4a938fed15cecb05.html</guid>
</item>

<item>
        <title><![CDATA[jquery写插件的例子]]></title>
        <link><![CDATA[http://hi.baidu.com/19chang19/blog/item/b5f83146f6b8ff0e6b63e586.html]]></link>
        <description><![CDATA[
		
		<p><a href="http://www.robysky.com/archives/171">http://www.robysky.com/archives/171</a></p>
<p>&lt;script type=&quot;text/javascript&quot;&gt;<br>
&nbsp;&nbsp;&nbsp;  jQuery.noConflict();<br>
// <br>
// create closure <br>
// <br>
(function(jQuery) { <br>
// <br>
// plugin definition <br>
// <br>
jQuery.fn.hilight = function(options) { <br>
debug(this); <br>
// build main options before element iteration <br>
var opts = jQuery.extend({}, jQuery.fn.hilight.defaults, options); <br>
// iterate and reformat each matched element <br>
return this.each(function() { <br>
jQuerythis = jQuery(this); <br>
// build element specific options <br>
var o = jQuery.meta ? jQuery.extend({}, opts, jQuerythis.data()) : opts; <br>
// update element styles <br>
jQuerythis.css({ <br>
backgroundColor: o.background, <br>
color: o.foreground <br>
}); <br>
var markup = jQuerythis.html(); <br>
// call our format function <br>
markup = jQuery.fn.hilight.format(markup); <br>
jQuerythis.html(markup); <br>
}); <br>
}; <br>
// <br>
// private function for debugging <br>
// <br>
function debug($obj) { <br>
if (window.console &amp;&amp; window.console.log) <br>
window.console.log('hilight selection count: ' + $obj.size()); <br>
}; <br>
// <br>
// define and expose our format function <br>
//<br>
jQuery.fn.hilight.format = function(txt) { <br>
return '&lt;strong&gt;' + txt + '&lt;/strong&gt;'; <br>
}; <br>
// <br>
// plugin defaults <br>
//<br>
jQuery.fn.hilight.defaults = { <br>
foreground: 'red', <br>
background: 'yellow' <br>
}; <br>
// <br>
// end of closure <br>
// <br>
})(jQuery);</p>
<p><br>
jQuery(&quot;document&quot;).ready(<br>
function(){<br>
jQuery('#myDiv').hilight()});</p> 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/19chang19/blog/category/%CD%F8%D2%B3%BC%BC%C7%C9">网页技巧</a>&nbsp;<a href="http://hi.baidu.com/19chang19/blog/item/b5f83146f6b8ff0e6b63e586.html#comment">查看评论</a>]]></description>
        <pubDate>2008-11-29  00:10</pubDate>
        <category><![CDATA[网页技巧]]></category>
        <author><![CDATA[19chang19]]></author>
		<guid>http://hi.baidu.com/19chang19/blog/item/b5f83146f6b8ff0e6b63e586.html</guid>
</item>

<item>
        <title><![CDATA[GPS相关资料(连接)]]></title>
        <link><![CDATA[http://hi.baidu.com/19chang19/blog/item/673277088af321920b7b8255.html]]></link>
        <description><![CDATA[
		
		<div class="title">
<h1>Franson CoordTrans坐标转换工具</h1>
</div>

<div class="info"><strong>来源：</strong> <strong>作者：</strong>mapeyes <strong>时间：</strong>2008-11-06 <strong>Tag：</strong><strong><a href="http://www.mapeyes.com/tag.php?/GPS/">GPS</a></strong>   <strong><a href="http://www.mapeyes.com/tag.php?/Mapeyes/">Mapeyes</a></strong>   <strong><a href="http://www.mapeyes.com/tag.php?/%D7%F8%B1%EA%D7%AA%BB%BB/">坐标转换</a></strong>   <strong>点击：</strong>

10</div>

<div class="content">
<p><font size="3">软件与说明书</font><font size="3">下载</font></p>
<p><font size="3">Click here to download CoordTrans 2.30 for Windows:<br>
http://franson.com/coordtrans/download.asp?file=CoordTrans.exe<br>
<br>
To get started read the User's Guide:<br>
http://franson.com/coordtrans/guide.asp<br>
<br>
Click here to download CoordTrans 1.0 for Pocket PC:<br>
http://franson.com/coordtrans/download.asp?file=CoordTransPPC.exe</font></p>
<p> </p>
<p><font size="3">使用 Franson GpsGate 令得我们将一个 GPS 设备共享给多个便携设备上面运行的应用程序成为可能。目前的解决方案仅允许一个程序以独占方式访问一台连接好的 GPS 设备。当更多的程序需要获取定位信息时，GPS 设备的共享就变得非常有必要了！在新发布的 2.6 版软件中主要增加了轨迹记录器功能，它可以在掉线的时候缓存数据，并在找到网络连接后自动发送轨迹数据到 GpsGate.com 或者您自己的 GpsGate 服务器。 </font></p>
<p> </p>
<p><font size="3">Franson GpsGate 2.0是GPS（全球定位系统）相关的工具，具有分享、模拟和记录日志。分享：能让你在几个程序中分享GPS。GpsGate能够建立任意的虚拟串行接口提供给NMEA（美国海洋电子协会）相兼容的GPS程序使之能够链接使用模拟：定位一系列路点，GpsGate将会在这些路点中模拟出一个GPS路径日志：能够记录和回放实时的GPS数据。能够保存这段数据分析使用<br>
</font></p>
</div> 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/19chang19/blog/category/%CD%F8%D2%B3%BC%BC%C7%C9">网页技巧</a>&nbsp;<a href="http://hi.baidu.com/19chang19/blog/item/673277088af321920b7b8255.html#comment">查看评论</a>]]></description>
        <pubDate>2008-11-26  21:14</pubDate>
        <category><![CDATA[网页技巧]]></category>
        <author><![CDATA[19chang19]]></author>
		<guid>http://hi.baidu.com/19chang19/blog/item/673277088af321920b7b8255.html</guid>
</item>

<item>
        <title><![CDATA[一些介绍jQuery的好blogs]]></title>
        <link><![CDATA[http://hi.baidu.com/19chang19/blog/item/6fb8bcd6c607a82807088bd0.html]]></link>
        <description><![CDATA[
		
		<p><a href="http://space.cnblogs.com/group/topic/345/">http://space.cnblogs.com/group/topic/345/</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <span>jquery技巧总结</span></p>
<p><span><a href="http://space.cnblogs.com/group/jquery/">http://space.cnblogs.com/group/jquery/</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  jquery文章列表</span></p>
<p><span>&lt;</span></p>
<p> </p>
<p><span><a href="http://www.cnblogs.com/Terrylee/archive/2007/12/09/the-ultimate-jquery-plugin-list.html">http://www.cnblogs.com/Terrylee/archive/2007/12/09/the-ultimate-jquery-plugin-list.html</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  </span></p>
<p><span>强烈推荐：240多个jQuery插件&gt;</span></p>
<p><span>&lt;</span></p>
<p><span><a href="http://msdn.microsoft.com/zh-cn/library/system.web.ui.icallbackeventhandler(VS.80).aspx">http://msdn.microsoft.com/zh-cn/library/system.web.ui.icallbackeventhandler(VS.80).aspx</a></span></p>
<p><span>ICallbackEventHandler 接口</span></p>
<p><span><a href="http://msdn.microsoft.com/zh-cn/library/5dws599a(VS.80).aspx">http://msdn.microsoft.com/zh-cn/library/5dws599a(VS.80).aspx</a></span></p>
<p><span><a href="http://msdn.microsoft.com/zh-cn/library/ms178208(VS.80).aspx">http://msdn.microsoft.com/zh-cn/library/ms178208(VS.80).aspx</a></span></p>
<p><span>&gt;</span></p>
<p><span>&lt;http://parandroid.com/more-than-50-powerful-plug-in-application-examples-jquery/</span></p>
<p><span><a title="Permalink to 50多个强大的jQuery插件应用实例" href="http://parandroid.com/more-than-50-powerful-plug-in-application-examples-jquery/" rel="bookmark">50多个强大的jQuery插件应用实例</a>&gt;</span></p>
<p><span>&lt;http://parandroid.com/jquery-script-for-improve-interface/</span></p>
<p><span><a title="Permalink to 10个改善网站界面的jQuery脚本" href="http://parandroid.com/jquery-script-for-improve-interface/" rel="bookmark"><font color="#1462c1">10个改善网站界面的jQuery脚本</font></a> &gt;</span></p>
<p><span>&lt;http://www.open-open.com/ajax/Grid.htm</span></p>
<p><span>实用表格&gt;</span></p>
<p><span>&lt;http://ui.jquery.com/repository/latest/demos/functional/#ui.dialog</span></p>
<p><span>jquery ui&gt;</span></p>
<p><span>&lt;</span></p>
<p> </p>
<p> </p>
<p><span><a href="http://blog.csdn.net/wangjun8868/archive/2008/09/23/2967007.aspx">http://blog.csdn.net/wangjun8868/archive/2008/09/23/2967007.aspx</a></span></p>
<p><span>ASP.NET基于JQUERY的AJAX的验证登录(JSON)&gt;</span></p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<span>
<div class="postTitle"><a class="postTitle2" href="http://www.cnblogs.com/zlgcool/archive/2008/10/30/1323127.html">Visual Studio 2008 对jQuery实现智能感知提示 </a></div>
<p> </p>
<p><span><font face="Tahoma">Visual Studio 2008</font></span><span>对</span><span><font face="Tahoma">Javascript</font></span><span>提供了良好的智能感知提示，随着</span><span><font face="Tahoma">jQuery</font></span><span>的流行和</span><span><font face="Tahoma">Microsoft</font></span><span>将把</span><span><font face="Tahoma">jQuery ship</font></span><span>到</span><span><font face="Tahoma">Visual Studio</font></span><span>中，</span><span><font face="Tahoma">jQuery.com</font></span><span>发布了对</span><span><font face="Tahoma">Visual Studio 2008</font></span><span>的智能感知提示文档。你可以在</span><span><a href="http://docs.jquery.com/Downloading_jQuery#Download_jQuery"><font face="Tahoma">http://docs.jquery.com/Downloading_jQuery#Download_jQuery</font></a></span><span>下载，或者直接在</span><span><a href="http://code.jquery.com/jquery-1.2.6-vsdoc.js"><font face="Tahoma">http://code.jquery.com/jquery-1.2.6-vsdoc.js</font></a></span><span>得到。</span></p>
<p><img height="100" width="550" src="http://images.cnblogs.com/cnblogs_com/zlgcool/Datagrid/image_thumb_1.png"></p>
<p><span>将</span><span><font face="Tahoma">jQuery</font></span><span>的</span><span><font face="Tahoma">js</font></span><span>文件和</span><span><font face="Tahoma">vsdoc.js</font></span><span>文件添加到页面的</span><span><font face="Tahoma">script</font></span><span>引用即可。有一点需要注意的是，因为</span><span><font face="Tahoma">vsdoc.js</font></span><span>是一个可执行的脚本，但这个</span><span><font face="Tahoma">vsdoc</font></span><span>文件事不需要</span><span><font face="Tahoma">render</font></span><span>的，所以需要用一个</span><span><font face="Tahoma">server side</font></span><span>的</span><span><font face="Tahoma">if</font></span><span>语句，这样可以禁止执行</span><span><font face="Tahoma">js</font></span><span>文件，但同样将这些代码加载。</span></p>
<p>
<table style="border-right: medium none; border-top: medium none; margin-left: 5.4pt; border-left: medium none; border-bottom: medium none; border-collapse: collapse" cellspacing="0" cellpadding="0" border="1">
    <tbody>
        <tr>
            <td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9; padding-bottom: 0cm; width: 458.95pt; padding-top: 0cm; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" valign="top" width="612">
            <p><span style="font-size: 10pt; color: blue">&lt;</span><span style="font-size: 10pt; color: #a31515">script</span><span style="font-size: 10pt"> <span style="color: red">type</span><span style="color: blue">=&quot;text/javascript&quot;</span> <span style="color: red">src</span><span style="color: blue">=&quot;scripts/jquery-1.2.6.js&quot;&gt;&lt;/</span><span style="color: #a31515">script</span><span style="color: blue">&gt;</span></span></p>
            <p><span style="font-size: 10pt">&lt;% <span style="color: blue">if</span> (<span style="color: blue">false</span>)</span></p>
            <p><span style="font-size: 10pt">&nbsp;&nbsp;  { %&gt;</span></p>
            <p><span style="font-size: 10pt; color: blue">&lt;</span><span style="font-size: 10pt; color: #a31515">script</span><span style="font-size: 10pt"> <span style="color: red">type</span><span style="color: blue">=&quot;text/javascript&quot;</span> <span style="color: red">src</span><span style="color: blue">=&quot;scripts/jquery-1.2.6-vsdoc.js&quot;&gt;&lt;/</span><span style="color: #a31515">script</span><span style="color: blue">&gt;</span></span></p>
            <p><span style="font-size: 10pt">&lt;% } %&gt;</span></p>
            </td>
        </tr>
    </tbody>
</table>
</p>
<p><span>现在，加入</span><span><font face="Tahoma">Script </font></span><span>块，敲入</span><span><font face="Tahoma">jQuery</font></span><span>代码时就可以利用</span><span><font face="Tahoma">itellisense</font></span><span>功能了：</span></p>
<p><span><img height="277" width="578" src="http://images.cnblogs.com/cnblogs_com/zlgcool/Datagrid/jquery02.jpg"><br>
</span></p>
</span> 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/19chang19/blog/category/%CD%F8%D2%B3%BC%BC%C7%C9">网页技巧</a>&nbsp;<a href="http://hi.baidu.com/19chang19/blog/item/6fb8bcd6c607a82807088bd0.html#comment">查看评论</a>]]></description>
        <pubDate>2008-11-23  17:39</pubDate>
        <category><![CDATA[网页技巧]]></category>
        <author><![CDATA[19chang19]]></author>
		<guid>http://hi.baidu.com/19chang19/blog/item/6fb8bcd6c607a82807088bd0.html</guid>
</item>

<item>
        <title><![CDATA[在SQL&nbsp;Server中使用CLR调用.NET方法]]></title>
        <link><![CDATA[http://hi.baidu.com/19chang19/blog/item/ef0c830e1adb4be036d12216.html]]></link>
        <description><![CDATA[
		
		<div class="Section0" style="layout-grid:  15.6pt none">
<p class="p0" style="margin-top: 0pt; margin-bottom: 0pt; text-indent: 21.75pt; line-height: 22pt; text-align: center"> </p>
<p class="p0" style="margin-top: 0pt; margin-bottom: 0pt; text-indent: 21.75pt; line-height: 22pt; text-align: center"><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><font face="宋体">在SQL Server中使用CLR调用.NET方法&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  转</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "></span></p>
<p class="p0" style="margin-top: 0pt; margin-bottom: 0pt; text-indent: 21.75pt; line-height: 22pt; text-align: left"><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><font face="宋体">我们一起来做个示例，在.NET中新建一个类，并在这个类里新建一个方法，然后在SQL Server中调用这个方法。按照微软所述，通过宿主 Microsoft .NET Framework 2.0 公共语言运行库 (CLR)，SQL Server 2005显著地增强了</font></span><span><a href="http://www.itjj.net/DB/"><span style="font-size: 10.5pt; color: rgb(0,0,255);  mso-spacerun:  yes "><font face="宋体">数据库</font></span></a></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><font face="宋体">编程模型。 这使得开发人员可以用任何CLR语言（如C#、VB.NET或C++等）来写存储过程、触发器和用户自定义函数。</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-weight: bold; font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><font face="宋体">我们如何实现这些功能呢？</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><font face="宋体">为了使用CLR，我们需要做如下几步：</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp; 1<font face="宋体">、在.NET中新建一个类，并在这个类里新建一个public方法。</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp; 2<font face="宋体">、编译这个类为一个DLL。</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp; 3<font face="宋体">、在SQL Server中注册这个DLL。</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp; 4<font face="宋体">、新建一个SQL Server函数来访问指定的.NET方法。</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp;<font face="宋体">接下来，我们一起来完成一个示例</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp;<font face="宋体">首先，在Visual Studio中新建一个名为&ldquo;SQLServerCLRTest&rdquo;的类库项目。 然后，新建一个名为&ldquo;CLRFunctions&rdquo;的类，并在其内添加一个名为&ldquo;HelloWold&rdquo;的方法，代码如下：</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "></span></p>
<p class="p0" style="margin-top: 0pt; background: rgb(238,238,238); margin-bottom: 0pt; word-break: break-all; text-indent: 21.75pt; line-height: 22pt; text-align: left"><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image1.png" width="11"></span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">public</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> </span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">class</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> CLRFunctions </span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "><br>
</span><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image2.png" width="11"></span><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image3.png" width="11"></span><span><img height="20" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image4.png" width="15"></span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">{</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "><br>
</span><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image5.png" width="11"></span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">public</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> </span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">static</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> </span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">string</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> HelloWorld(</span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">string</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> Name) </span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "><br>
</span><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image6.png" width="11"></span><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image7.png" width="11"></span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp;</span><span><img height="20" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image4.png" width="15"></span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">{</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "><br>
</span><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image5.png" width="11"></span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">return</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> (&quot;Hello &quot; + Name);</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "><br>
</span><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image8.png" width="11"></span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp; }</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "><br>
</span><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image9.png" width="11"></span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">}</span><span style="font-size: 10pt; color: rgb(34,34,34);  mso-spacerun:  yes "></span></p>
<p class="p0" style="margin-top: 0pt; margin-bottom: 0pt; text-indent: 21.75pt; line-height: 22pt; text-align: left"><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp;<font face="宋体">这是一个非常简单的方法（为了让SQL Server可以调用它，它必须要是public和static的），这个方法有一个string类型的参数，返回信息为&ldquo;Hello&rdquo;加上你传入的参数。&nbsp;&nbsp;&nbsp;&nbsp; 现在，我们需要编译这个项目为一个DLL，并在SQL Server中注册它。 这也是比较简单的，在VS中右键单击项目，选择&ldquo;生成&rdquo;后程序就会生成一个DLL。 如果你的项目是调试模式的话，那么就可以在如下所示那样的路径里找到编译好的DLL。</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "></span></p>
<p class="p0" style="margin-top: 0pt; background: rgb(238,238,238); margin-bottom: 0pt; word-break: break-all; text-indent: 21.75pt; line-height: 22pt; text-align: left"><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image1.png" width="10"></span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">C:/Documents and Settings/mark.smith/My Documents/Visual Studio 2005/Projects/SQLServerCLRTest/SQLServerCLRTest/bin/Debug/SQLServerCLRTest.dll</span><span style="font-size: 10pt; color: rgb(34,34,34);  mso-spacerun:  yes "></span></p>
<p class="p0" style="margin-top: 0pt; margin-bottom: 0pt; text-indent: 21.75pt; line-height: 22pt; text-align: left"><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp;<font face="宋体">找到这个DLL后，我们就可以把它拷贝到我们的SQL Server机器上了，如果是相同机器的话我们只要记住这个路径即可。</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-weight: bold; font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><font face="宋体">启用CLR功能</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp;<font face="宋体">默认情况下，SQL Server中的CLR是关闭的，所以我们需要执行如下命令打开CLR：</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "></span></p>
<p class="p0" style="margin-top: 0pt; background: rgb(238,238,238); margin-bottom: 0pt; word-break: break-all; text-indent: 21.75pt; line-height: 22pt; text-align: left"><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image1.png" width="10"></span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">exec</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> sp_configure </span><span style="font-size: 10pt; color: rgb(255,0,0);  mso-spacerun:  yes ">'clr enabled'</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">,</span><span style="font-weight: bold; font-size: 10pt; color: rgb(128,0,0);  mso-spacerun:  yes ">1</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "><br>
</span><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image1.png" width="10"></span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">reconfigure</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "><br>
</span><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image1.png" width="10"></span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">go</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> </span><span style="font-size: 10pt; color: rgb(34,34,34);  mso-spacerun:  yes "></span></p>
<p class="p0" style="margin-top: 0pt; margin-bottom: 0pt; text-indent: 21.75pt; line-height: 22pt; text-align: left"><span style="font-weight: bold; font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><font face="宋体">注册DLL</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp;<font face="宋体">为了调用我们写的那个方法，需要在SQL Server中注册我们刚刚编译好的那个DLL。 我们可以在</font></span><span><a href="http://www.itjj.net/DB/"><span style="font-size: 10.5pt; color: rgb(0,0,255);  mso-spacerun:  yes "><font face="宋体">数据库</font></span></a></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><font face="宋体">中使用如下命令来注册DLL（路径为你的DLL文件的路径）</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "></span></p>
<p class="p0" style="margin-top: 0pt; background: rgb(238,238,238); margin-bottom: 0pt; word-break: break-all; text-indent: 21.75pt; line-height: 22pt; text-align: left"><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image1.png" width="10"></span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">CREATE</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> ASSEMBLY asmHelloWorld </span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">FROM</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> </span><span style="font-size: 10pt; color: rgb(255,0,0);  mso-spacerun:  yes ">'C:/SQLServerCLRTest.dll'</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; color: rgb(34,34,34);  mso-spacerun:  yes "></span></p>
<p class="p0" style="margin-top: 0pt; margin-bottom: 0pt; text-indent: 21.75pt; line-height: 22pt; text-align: left"><span style="font-weight: bold; font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><font face="宋体">在SQL Server中调用我们的.NET方法</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font face="宋体">为了调用.NET方法，我们可以写一个SQL Server自定义函数，并在其内使用&ldquo;EXTERNAL NAME&rdquo;来通知SQL Server使用CLR功能。 代码如下：</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "></span></p>
<p class="p0" style="margin-top: 0pt; background: rgb(238,238,238); margin-bottom: 0pt; word-break: break-all; text-indent: 21.75pt; line-height: 22pt; text-align: left"><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image1.png" width="10"></span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">CREATE</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> </span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">FUNCTION</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> dbo.clrHelloWorld&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "><br>
</span><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image1.png" width="10"></span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">(&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "><br>
</span><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image1.png" width="10"></span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; color: rgb(0,128,0);  mso-spacerun:  yes ">@name</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> </span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">as</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> </span><span style="font-weight: bold; font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">nvarchar</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">(</span><span style="font-weight: bold; font-size: 10pt; color: rgb(128,0,0);  mso-spacerun:  yes ">200</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">)&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "><br>
</span><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image1.png" width="10"></span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">)&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "><br>
</span><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image1.png" width="10"></span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">RETURNS</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> </span><span style="font-weight: bold; font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">nvarchar</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">(</span><span style="font-weight: bold; font-size: 10pt; color: rgb(128,0,0);  mso-spacerun:  yes ">200</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">)&nbsp;&nbsp;&nbsp;</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "><br>
</span><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image1.png" width="10"></span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">AS</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> EXTERNAL NAME asmHelloWorld.</span><span style="font-size: 10pt; color: rgb(255,0,0);  mso-spacerun:  yes ">[SQLServerCLRTest.CLRFunctions]</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">.HelloWorld </span><span style="font-size: 10pt; color: rgb(34,34,34);  mso-spacerun:  yes "></span></p>
<p class="p0" style="margin-top: 0pt; margin-bottom: 0pt; text-indent: 21.75pt; line-height: 22pt; text-align: left"><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp;<font face="宋体">上面的自定义函数做了两项工作。 首先是声明了一个nvarchar参数，它等同于.NET里的string类型（如果将其设置为varchar并且后面使用了&ldquo;EXTERNAL NAME&rdquo;的话就会报错）。然后使用&ldquo;EXTERNAL NAME&rdquo;来调用.NET方法。 语法如下：</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "></span></p>
<p class="p0" style="margin-top: 0pt; background: rgb(238,238,238); margin-bottom: 0pt; word-break: break-all; text-indent: 21.75pt; line-height: 22pt; text-align: left"><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image1.png" width="10"></span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "><font face="宋体">程序集名.类名.方法名</font></span><span style="font-size: 10pt; color: rgb(34,34,34);  mso-spacerun:  yes "></span></p>
<p class="p0" style="margin-top: 0pt; margin-bottom: 0pt; text-indent: 21.75pt; line-height: 22pt; text-align: left"><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp;<font face="宋体">但是，当我使用这个语法调用.NET方法的时候，SQL Server就会报错，所以为了让它正常工作，我使用了如下语法：</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "></span></p>
<p class="p0" style="margin-top: 0pt; background: rgb(238,238,238); margin-bottom: 0pt; word-break: break-all; text-indent: 21.75pt; line-height: 22pt; text-align: left"><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image1.png" width="10"></span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "><font face="宋体">程序集名.</font></span><span style="font-size: 10pt; color: rgb(255,0,0);  mso-spacerun:  yes ">[<font face="宋体">类名]</font></span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">.<font face="宋体">方法名</font></span><span style="font-size: 10pt; color: rgb(34,34,34);  mso-spacerun:  yes "></span></p>
<p class="p0" style="margin-top: 0pt; margin-bottom: 0pt; text-indent: 21.75pt; line-height: 22pt; text-align: left"><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp;<font face="宋体">现在我们就可以通过如下语句调用.NET方法了：</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "></span></p>
<p class="p0" style="margin-top: 0pt; background: rgb(238,238,238); margin-bottom: 0pt; word-break: break-all; text-indent: 21.75pt; line-height: 22pt; text-align: left"><span><img height="16" src="file:///C:/DOCUME~1/chang/LOCALS~1/Temp/ksohtml/wps_clip_image1.png" width="10"></span><span style="font-size: 10pt; color: rgb(0,0,255);  mso-spacerun:  yes ">SELECT</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes "> dbo.clrHelloWorld(</span><span style="font-size: 10pt; color: rgb(255,0,0);  mso-spacerun:  yes ">'Mark'</span><span style="font-size: 10pt; color: rgb(0,0,0);  mso-spacerun:  yes ">)</span><span style="font-size: 10pt; color: rgb(34,34,34);  mso-spacerun:  yes "></span></p>
<p class="p0" style="margin-top: 0pt; margin-bottom: 0pt"><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp;<font face="宋体">当你运行这段代码的时候，就会得到一个返回结果&ldquo;Hello Mark&rdquo;。</font></span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes "><br>
</span><span style="font-size: 10.5pt; color: rgb(34,34,34);  mso-spacerun:  yes ">&nbsp;&nbsp;&nbsp;&nbsp;<font face="宋体">我们通过一个很简单的示例演示了如何实现SQL Server的CLR，它可以给我们带来很多非常有用的帮助</font></span><span style="font-size: 10.5pt;  mso-spacerun:  yes "></span></p>
</div>
 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/19chang19/blog/category/sql%CA%FD%BE%DD%BF%E2%BA%CDado%B1%E0%B3%CC">sql数据库和ado编程</a>&nbsp;<a href="http://hi.baidu.com/19chang19/blog/item/ef0c830e1adb4be036d12216.html#comment">查看评论</a>]]></description>
        <pubDate>2008-11-12  21:20</pubDate>
        <category><![CDATA[sql数据库和ado编程]]></category>
        <author><![CDATA[19chang19]]></author>
		<guid>http://hi.baidu.com/19chang19/blog/item/ef0c830e1adb4be036d12216.html</guid>
</item>


</channel>
</rss>