摘要:
两个验证方式是有明显不同的。主要集中在信任连接和非信任连接。windows 身份验证相对于混合模式更加安全,使用本连接模式时候,sql不判断sa密码,而仅根据用户的windows权限来进行身份验证,我们称为“信任连接”,但是在远程连接的时候会因NTML验证的缘故,无法登陆。混合模式验证就比较既当本地用户访问sql时候采用windows身份验证建立信任连接,当远程用户访问时由于未通过windows认证,而进行sql server认证(使用sa的用户也可以登录sql),建立“非信任连接”,从而使得远程用户也可以登录。更加直接一些就是windows身份验证,不验证sa密码,如果windows登录密码 阅读全文
摘要:
1.N'money'表示Unicode常量分隔标识符“[ ]”对于所有不符合标识规则的标识符必须进行分隔如My Table ====[My Table]2.局部变量--变量名以“@”开头,定义语法如下:DECLAER {@局部变量名 数据类型}赋值为:Set {@局部变量=表达式} //一次只能给一个变量赋值使用select可以一次给一个或多个变量赋值,SELECT@ARY=2,@SUM=3 全局变量一“@@”开头3.运算符比较运算符 "<>"不等于字符串运算符:+BEGIN·····END语句块 阅读全文
摘要:
参考地址:http://technet.microsoft.com/zh-cn/library/ms187087.aspx 阅读全文
摘要:
刚刚装了SQL2008,配置了一下,在网上找到这个教程,觉得不错,转载学习1、 更改TCP/IP连接为启用2、 登录 , 修改2个地方 a) 身份验证方式(混合模式) 图一:首先使用windows身份登录(注意, 服务器名称必须填写正确) 图二:打开SQL 实例的属性 图三:选择左边的“安全性”, 注意做如下选择 b) 启用sa, 若将sa的密码设置为空密码, 跳过第一步; 若密码不为空, 两步同时设置, 即:2个都设置完成后点击确定即可。 i. 第一步, 启用Sa 更改完成后,单击确定保存 ii. 第二步,设置密码更改完成后,单击确定保存当然整个设置完成之后, 还需要重启sql服务 阅读全文
摘要:
<%set conn=server.createobject("adodb.connection")conn.connectionstring="PROVIDER=MSDASQL;DRIVER={SQL Server};SERVER=210.76.209.130;DATABASE=databasename;UID=sa;PWD=password;"conn.open %>其中 210.76.209.130 就是远程服务器的IP 阅读全文
摘要:
版本:sql server 2005 exepress editionSQLEXPR_CHS.EXE 57.4MB下载地址:http://www.microsoft.com/downloads/details.aspx?FamilyID=220549b5-0b07-4448-8848-dcc397514b41&displaylang=zh-cn安装完客户端软件后,就可以驱动程序中的ADODB程序。连接数据库字符串有两个方式:一种sql服务器端默认端口,二是sql服务器端更改了端口如4000.1、默认端口SQL Server的默认TCP端口是1433,UDP端口是1434。2005连接字 阅读全文
摘要:
SQL Server连接中的四个最常见错误: 一. "SQL Server 不存在或访问被拒绝 " 这个是最复杂的,错误发生的原因比较多,需要检查的方面也比较多. 一般说来,有以下几种可能性: 1,SQL Server名称或IP地址拼写有误 2,服务器端网络配置有误 3,客户端网络配置有误 要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因. ============= 首先,检查网络物理连接 ============= ping <服务器IP地址/服务器名称> 如果 ping <服务器IP地址> 不成功,说明物理连接有问题,这时候要 阅读全文
摘要:
一、字节序定义字节序,顾名思义字节的顺序,再多说两句就是大于一个字节类型的数据在内存中的存放顺序(一个字节的数据当然就无需谈顺序的问题了)。其实大部分人在实际的开发中都很少会直接和字节序打交道。唯有在跨平台以及网络程序中字节序才是一个应该被考虑的问题。在所有的介绍字节序的文章中都会提到字节序分为两类:Big-Endian和Little-Endian。引用标准的Big-Endian和Little-Endian的定义如下:a) Little-Endian就是低位字节排放在内存的低地址端,高位字节排放在内存的高地址端。b) Big-Endian就是高位字节排放在内存的低地址端,低位字节排放在内存的高 阅读全文
摘要:
TCP/IP是一个广泛使用的广域网协议,在NT和2000系统中,它的一些参数会由控制面板中的网络或DHCP服务器提供。下面我们从注册表的角度看看TCP/IP的设置问题。注册表中的大部分设置是最优设置,但是在某些情况下,这些设置可能不能满足某些用户的特殊需要,因此才有必要修改注册表。但是,对注册表的修改是比较危险的,通常情况下,不要对它进行任意的修改。所有的TCP/IP设置均在两个注册表表项下:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TCPIP\ParametersHKEY_LOCAL_MACHINE\SYSTEM\Current 阅读全文
摘要:
阻塞1.面向连接的同步套接字(TCP)2.无连接的同步套接字(UDP)一般要使用多线程的形式非阻塞3.面向连接的异步套接字(基于事件)4.无连接的异步套接字(基于事件)使用CAsyncSocket或CSocket的派生类 阅读全文
摘要:
HANDLE threadhandle = CreateThread(NULL, 0, RecvThreadProc, NULL, NULL, NULL); CloseHandle(threadhandle);不明白为什么创建线程后,要马上把线程的句柄关闭,这样做的目的是什么? 这样做会杀掉线程吗?解答: 创建线程后返回了线程句柄,新创建的线程内核对象的使用计数是2,一个是线程本身,一个是创建线程的线程,创建线程的线程closehandle后,新的线程的内核对象使用计数为1,当这个新线程结束运行后内核对象的使用计数还要减1,这时内核对象的使用计数是0,则系统会自动删除新线程的内核对象,这是正常 阅读全文
摘要:
1.SOCKET_STREAM_FILE_INFO格式:typedef struct _SOCKET_STREAM_FILE_INFO {TCHAR szFileTitle[128]; //文件的标题名DWORD dwFileAttributes; //文件的属性FILETIME ftCreationTime; //文件的创建时间FILETIME ftLastAccessTime; //文件的最后访问时间FILETIME ftLastWriteTime; //文件的最后修改时间DWORD nFileSizeHigh; //文件大小的高位双字DWORD nFileSizeLow; //文件大小的 阅读全文
摘要:
实话,编写MFC规则库和扩展库和编写其他库没有什么区别.其实都一样.只不过, MFC规则库和扩展库对支持MFC的特性更好,你在写MFC规则库和扩展库的时候基本上可以和你写MFC应用程序一样.那我们就随便写写吧.首先建立一个MFC扩展的库吧.在这里我们导出一个函数调用前面的MFC静态苦的导出函数:extern "C" __declspec(dllexport) void ShowDialog(){typedef void ( *lpShowDialog)( ); //DLL里的函数原型HINSTANCE hInst = NULL; //DLL的实例句柄,在WIN32中HINS 阅读全文
摘要:
静态链接到 MFC 的规则 DLL 是在内部使用 MFC 的 DLL,这类 DLL 中的导出函数可由 MFC 或非 MFC 可执行文件调用。正如名称所描述的,这类 DLL 是使用 MFC 静态链接库版本生成的。函数通常是通过标准 C 接口从规则 DLL 导出的。有关如何编写、生成和使用规则 DLL 的示例,请参见示例 DLLScreenCap。请注意,Visual C++ 文档中不再使用 USRDLL 一词。静态链接到 MFC 的规则 DLL 具有与原来的 USRDLL 相同的特性。静态链接到 MFC 的规则 DLL 具有下列功能:客户端可执行文件可以用任何支持使用 DLL 的语言(C、C++ 阅读全文
摘要:
Regular DLL分为两类: (1)静态链接到MFC 的规则DLL 静态链接到MFC的规则DLL与MFC库(包括MFC扩展 DLL)静态链接,将MFC库的代码直接生成在.dll文件中。在调用这种DLL的接口时,MFC使用DLL的资源。因此,在静态链接到MFC 的规则DLL中不需要进行模块状态的切换。 使用这种方法生成的规则DLL其程序较大,也可能包含重复的代码。 (2)动态链接到MFC 的规则DLL 动态链接到MFC 的规则DLL 可以和使用它的可执行文件同时动态链接到 MFC DLL 和任何MFC扩展 DLL。在使用了MFC共享库的时候,默认情况下,MFC使用主应用程序的资源句柄来加载资 阅读全文
摘要:
http://blog.csdn.net/BEYOND_Q/default.aspx?PageNumber=9 阅读全文
摘要:
#include "afxmt.h" //使用同步类的头文件CCriticalSection g_CriticalSection; //临界区对象,不可以用于进程间CEvent g_Event1; //自动重置事件,初始无信号状态 CEvent g_Event2(TRUE); //自动重置事件,初始有信号状态CEvent g_Event3(FALSE,TRUE); //人工重置事件,初始无信号状态CEvent g_Event4(TRUE,TRUE); //人工重置事件,初始有信号状态//事件也可以用用于进程间CMutex g_Mutex; //互斥对象,可以用于进程间CSe 阅读全文
摘要:
*---------------------------------------------------------*\另一种同步实现\*---------------------------------------------------------*///CRITICAL_SECTION g_cs;HANDLE g_hEvent = NULL;HANDLE g_hMutex = NULL;HANDLE g_hSemaphore = NULL; static DWORD SynThreadProc1( LPVOID lpParameter ){/* EnterCriticalSection( 阅读全文
摘要:
现在,我们再写一下带有消息循环的线程1 从CWinThread派生自己的类(CAfxThread) :class CAfxThread : public CWinThread{DECLARE_DYNCREATE(CAfxThread)protected:CAfxThread(); // protected constructor used by dynamic creation// Attributespublic:// Operationspublic:// Overrides// ClassWizard generated virtual function overrides//{{AFX 阅读全文
摘要:
接上一回 - 多线程专题之MFC线程(2),我们来聊聊线程间的通信:/*------------------------------------------------------------*\ 多线程间的通信应用程序中多线程的使用通常都是用于主线程执行与用户交互,次要线程执行后台任务。当用户触发了某个事件,可能需要让次要线程知道,然后处理该事件。这就涉及了如何在多个线程间的通信问题。通常有三种方式:1、全局变量:同一个进程中的所有线程共享操作系统分配所有资源,这就意味着我们可以用全局变量解决通信问题。当然了,建议使用volatile 修饰符表示全局变量,作用上次不说了嘛,好,在说一次啊。v 阅读全文