1、mfc打印机怎么连接电脑
一、电脑如何连接打印机
1、通过电脑的控制面板,选择“查看设备和打印机”页面。这样就可以看看这台电脑是否装有打印机。
2、进入“设备和打印机”页面,发现没有打印机,就在该页面的空白处,单击右键弹出下拉菜单,选择“添加打印机”弹出添加打印机页面,我们可以通过,“添加本地打印机”和“添加网络打印机“两种方法进行添加打印机程序。
3、先使用”添加本地打印机“模式进行添加打印机程序,这时页面会让我们选择打印机的端口,现在的打印机多用USB端口。
4、选择好打印机的端口,进入下一步,选择打印机的驱动,一般的打印机都自带打印机的驱动文件,我们可以选择”从磁盘安装“也可以浏览电脑已知的打印机程序进行安装。
5、选择好打印机后,我们要给这台打印机命名。
6、如果打印机,就一台电脑使用,我们可以选择不共享打印机。
7、点击下一步,系统已显示打印机已经安装完成,我们可以设置为默认打印机。
8、本地添加打印机程序就完成了,下面我们在通过网络添加网络打印机。进入网络打印机添加界面,系统程序显示正在查找网络打印机。
9、如果系统没有找我们的需要的打印机,我们还可以通过打印机网络路径或者是TCP/IP地址进行打印机添加。
10、我们选择一个网络路径,进入这个地址,如果这个网络路径的已设置密码需要提供用户名和密码就可以进去了。
11、进入这个网络的路径,我们就可以看到要连接打印机了。右键点击这台打印机,选择连接这台打印机。
12、右击选择打印机属性,点击打印机测试页,打印机就打出了测试页,代表这台打印机程序已经连接好了。
二、无线打印机怎么连接无线路由器
无线打印机怎么连接无线路由器,下面以惠普HP2101nw无线GUSB打印服务器为例进行讲解。
1、硬件安装
将打印机的USB线连接到打印服务器的USB接口上。打印服务器和打印机都上电。假设现有的无线路由器的LAN口IP地址为192.168.1.1,并且已经正确配置可以使用。电脑上的无线网卡也处于正常工作状态。
2、安装打印服务器软件
(1)确保计算机连接上网络,插入无线打印服务器CD,单击安装软件。
(2)当屏幕显示“将打印服务器连接至计算机”的指示时,请使用带有Micro-USB接口的设置电缆将打印服务器连接至计算机。
(3)插入打印服务器的电源线。几秒钟后计算机便可识别打印服务器,此时您可以单击下一步。
(4)按照屏幕上的说明进行操作。注:您可能需要SSID和网络密码。如有必要,可以向设置网络的人员索取这些信息。
(5)当软件出现提示时,请将设置电缆从打印服务器和计算机上取下,然后单击下一步。
(6)使用标准USB电缆将打印服务器连接至打印机。
(7)确保打印机和打印服务器均已开机。几秒钟后计算机便可识别打印机,此时您可以单击下一步,单击完成以完成安装。
以上就是关于电脑如何连接打印机,无线打印机怎么连接无线路由器的相关内容,希望能对大家有帮助!
2、mfc如何远程连接sql数据库
1. 配置SQL Server外围应用服务器,开启SQL Server 2005远程连接功能:
“配置工具”->“SQL Server外围应用配置器”-> 选择“服务和连接的外围应用配置器”->选择Database Engine节点下的 “远程连接”-> 选择“本地连接和远程连接”-> 选择“同时使用TCP/IP和named pipes”-> 点击确定,重新启动
数据库
服务。
2. 把登陆设置改为SQL Server 和 Windows 身份验证模式:
打开SQL Server Management Studio管理器,点击服务器上面右键然后查看属性,在安全性选项里面对服务身份验证选择“SQL Server 和 Windows 身份验证模式”。
3.修改SQL Server sa的密码:
在SQL Server Management Studio管理器中,展开服务器上的“安全性”->登陆名->在sa帐号上点右键属性,这样在“常规”的选择页中更改sa登陆帐号的密码。注意SQL Server2005中,不允许密码设置简单,否则会通不过。然后在选择页的“状态”的登录修改为启用。
4.设置SQL Server 的端口号
在SQL Server Configuration Manager管理器中,展开SQL Server 2005 Network Configuration项目 -> 单击下面的 Protocols for 'dbname' -> 在右侧的窗口中,右键单击"TCP/IP"项,选择"属性" -> 打开"TCP/IP properties"窗口 - > 单击"IP Address"选项卡 -> 将所有IP地址下面的 "TCP Port" 值设置成1433
5.确保开启SQL Server服务
在SQL Server Configuration Manager管理器中, 选中SQL Server 2005 Services,在右侧的窗口中启动SQL Server ('YourInstance'),
6. 修改连接字符串,在字符串中加入SQl Server 服务的端口号.
strConnection.Format("driver={SQL Server};Server=xx.xx.xx.xx,1433;DATABASE=mydatabase;UID=name;PWD=pwd");
7.连接coder:
stdafx.h中引用:
#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","adoEOF")
8. 连接SQL SERVER服务器,并连接数据库
if(!AfxOleInit()) //这就是初始化COM库
{
AfxMessageBox("数据库初始化出错!");
}
_ConnectionPtr pCn("ADODB.Connection");
pCn->Open((_bstr_t)"Driver=
{SQL Server};Server=127.0.0.1,1433;Database=carcom;UID=sa;PWD=abc123456","","",adModeUnknown);
3、MFC中客户端主窗口与服务器连接后其子窗口想跟服务器通信还需要另外建立连接么?如果不需要该怎么实现?
不需要吧,把主窗口建立连接的socket传给子窗口就可以了呀,这样子窗口就可以版用这个socket发送和接权收数据了。实现方法就是在new子对话框的时候把socket传给它,前提是子对话框已经定义了一个socket来接收。
4、MFC 客户端与服务器端TCP连接编程问题
你的代码不太全啊 我猜是你服务端建立连接后立刻又释放了 都没时间通讯 我也看不到你的释放连接代码 其实socket用SDK就好 简单明了 也容易找问题
5、MFC中CSocket怎么实现两个客户端的连接?
如果都在公网的话,客户端直接在服务器注册IP和端口,其他客户端根据这个直接连接即可。
如果两个客户端都在内网,需要打洞。
6、MFC实现多个客户端连接服务器。tcp协议
服务器接收多个客户端链接,可以把客户端标识保存在map中
map<SOCKET, ClientInfo>
因为调用accept返回的SOCKET其实就是int
7、mfc实现客户端和服务器端
服务器端:(迭代的面向连接的服务器实现daytime功能)
#include <stdio.h>
#include <sys/socket.h>
#include <unistd.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <stdlib.h>
#include <time.h>
#define SERVER_PORT 20000 // define the defualt connect port id
#define LENGTH_OF_LISTEN_QUEUE 10 //服务器监听队列请求数目
#define BUFFER_SIZE 255
//#define WELCOME_MESSAGE "welcome to connect the server. "
int main(int argc, char **argv)
{
int servfd,clifd;//server socket client socket
struct sockaddr_in servaddr,cliaddr;
if ((servfd = socket(AF_INET,SOCK_STREAM,0)) < 0)
{
printf("create socket error!\n");//错误判断
exit(1);
}
bzero(&servaddr,sizeof(servaddr));//bzero ()置字节字符串s的前n个字节为零
servaddr.sin_family = AF_INET;//socket 域 tcp/ip 协议族
servaddr.sin_port = htons(SERVER_PORT);//host -network order
servaddr.sin_addr.s_addr = htons(INADDR_ANY);//host -network order
if (bind(servfd,(struct sockaddr*)&servaddr,sizeof(servaddr))<0)//命名套接字,将其与IP地址及端口绑定
{
printf("bind to port %d failure!\n",SERVER_PORT);
exit(1);
}
if (listen(servfd,LENGTH_OF_LISTEN_QUEUE) < 0)// 监听socket队列
{
printf("call listen failure!\n");
exit(1);
}
while (1)
{
char buf[BUFFER_SIZE];
long timestamp;//时间戳应答报文(timestamp reply) 时间戳请求报文(timestamp request:) 时间戳请求报文
socklen_t length = sizeof(cliaddr);
clifd = accept(servfd,(struct sockaddr*)&cliaddr,&length);//接受请求,返回一个新套接字描述符
if (clifd < 0)
{
printf("error comes when call accept!\n");
break;
}
//strcpy(buf,WELCOME_MESSAGE);
//inet_ntop(INET_ADDRSTRLEN,cliaddr.sin_addr,buf,BUFFER_SIZE);
printf("from client,IP:%s,Port:%d\n",inet_ntoa(cliaddr.sin_addr),ntohs(cliaddr.sin_port));
timestamp = time(NULL);//当前时间
//strcat(buf,"timestamp in server:");
strcat(buf,ctime(×tamp));//strcat把src所指字符串添加到buf结尾处 .ctime把日期和时间转换为字符串
send(clifd,buf,BUFFER_SIZE,0);
close(clifd);
}//exit
close(servfd);
return 0;
}
客户端:
#include <stdio.h>
#include <sys/socket.h>
#include <unistd.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <stdlib.h>
#define SERVER_PORT 20000
//#define CLIENT_PORT ((20001+rand())%65536) // define the defualt client port as a random port
#define BUFFER_SIZE 255
//#define REUQEST_MESSAGE "welcome to connect the server.\n"
void usage(char *name)
{
printf("usage: %s IpAddr\n",name);
}
int main(int argc, char **argv)
{
int servfd,clifd,length = 0;
struct sockaddr_in servaddr,cliaddr;
socklen_t socklen = sizeof(servaddr);
char buf[BUFFER_SIZE];
if (argc < 2)
{
usage(argv[0]);
exit(1);
}
if ((clifd = socket(AF_INET,SOCK_STREAM,0)) < 0)
{
printf("create socket error!\n");
exit(1);
}
//srand(time(NULL));//初始化随机数发生器
bzero(&cliaddr,sizeof(cliaddr));
cliaddr.sin_family = AF_INET;
cliaddr.sin_port = htons(CLIENT_PORT);
cliaddr.sin_addr.s_addr = htons(INADDR_ANY);
bzero(&servaddr,sizeof(servaddr));
servaddr.sin_family = AF_INET;
inet_aton(argv[1],&servaddr.sin_addr);
servaddr.sin_port = htons(SERVER_PORT);
//servaddr.sin_addr.s_addr = htons(INADDR_ANY);
if (bind(clifd,(struct sockaddr*)&cliaddr,sizeof(cliaddr))<0)
{
printf("bind to port %d failure!\n",CLIENT_PORT);
exit(1);
}
if (connect(clifd,(struct sockaddr*)&servaddr, socklen) < 0)
{
printf("can't connect to %s!\n",argv[1]);
exit(1);
}
length = recv(clifd,buf,BUFFER_SIZE,0);
if (length < 0)
{
printf("error comes when recieve data from server %s!",argv[1]);
exit(1);
}
printf("from server %s :\n\t%s ",argv[1],buf);
close(clifd);
return 0;
}
8、在mfc中怎么写客户端与服务器连接,invalidate是什么类型
invalidate不是什么类型,是窗口重绘函数,该函数的作用是使整个窗口客户区无效。窗口的回客户区无效意味着需要重绘,答例如,如果一个被其它窗口遮住的窗口变成了前台窗口,那么原来被遮住的部分就是无效的,需要重绘。这时Windows会在应用程序的消息队列中放置WM_PAINT消息。MFC为窗口类提供了WM_PAINT的消息处理函数OnPaint,OnPaint负责重绘窗口。视图类有一些例外,在视图类的OnPaint函数中调用了OnDraw函数,实际的重绘工作由OnDraw来完成。参数bErase为TRUE时,重绘区域内的背景将被擦除,否则,背景将保持不变。
9、mfc 怎么模拟telnet登入web服务器
在外网通过浏览器访问抄的话
在dom0上通过tcpmp查看连接过程,tcp/ip连接建立起来后,竟然又收到一个 ttl为127的RST的TCP包,导致连接被断开。
同时在client端通过tcpmp查看,则是建立连接后发送http request,然后没有收到服务器的返回(这说明dom0上收到的那个RST包肯定不是client端发的)。
在外网f通过telnet模拟访问的话
在dom0和client端通过tcpmp查看一切都正常。
web服务器肯定没有问题,因为
1. 在dom0上访问web服务器是没有问题的
2. 如果把WEB_PORT改成8080或者其他值,只要不是80,在外网用浏览器都可以正常访问web 服务器。
一些更详细的信息,用browser访问时:
1. 在client端用tcpmp看,看到5个包:
Client -> Server: TCP SYN
Server -> Client: TCP ACK SYN