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