Ứng dụng điều khiển Power Point: Server: Hình 4.8 Màn hình server điều khiển Power Point. Nút “Tạo dịch vụ”: Dùng để tạo dịch vụ điều khiển Power Point. Nút “Thoát dịch vụ”: Dùng để thoát dịch vụ điều khiển Power Point. Nút “Thoát”: Dùng thoát chương trình. Static Box “Di chuyển”: Dùng để hiển thị những yêu cầu từ Client(Pocket PC). Client: Hình 4.9 Màn hình điều khiển Power Point. Kết nối Server Ngừng kết n i ố Server Điều khiển Power Point Len Xuong Dau trang Cuoi trang Thoat Gui Power Point Client Nút Kết nối server: Dùng để kết nối đến server điều khiển Power Point. Sau khi nhấn chọn nút này màn hình đăng nhập địa chỉ server sẽ hiện ra, chúng ta sẽ nhập địa chỉ server đang mở dịch vụ điều khiển Power Point. Nếu đăng ký thành công, chúng ta có thể sử dụng các nút điều khiển để điều khiển Power Point. Nút Ngừng kết nối: Ngừng kết nối đến server. Nút Len: Gửi yêu cầu di chuyển lên đến server. Nút Xuong: Gửi yêu cầu di chuyển xuống đến server. Nút Dau trang: Gửi yêu cầu di lên đầu trang đến server. Nút Cuoi trang: Gửi yêu cầu di chuyển xuống cuối trang đến server. Một text box dùng để nhập số slide cần di chuyển đến. Nút Gui: Gửi yêu cầu di chuyển đến số slide tương ứng với số được nhập trong text box. Nút Thoát: Thoát chương trình. -2- Đánh giá đề tài và đề xuất hướng phát triển kế tiếp Những kết quả đã đạt được - Đã giới thiệu được những kiến thức cơ bản, cần thiết để viết một ứng dụng mạng trên máy Pocket PC thông qua socket. - Giới thiệu tương đối đầy đủ những kiến thức lập trình liên quan hỗ trợ cho lập trình mạng như: đa tuyến, đồng bộ tiến trình, các hàm gửi thông điệp window - Sau những kiến thức mới điều có những ví dụ minh họa giúp cho người đọc có thể mau chóng hiểu được những kiến thức mới. - Hai ứng dụng minh họa thể hiện tương đối đầy đủ những kỹ thuật cơ bản trong lập trình mạng, đặc biệt trên Pocket PC. Đề xuất hướng phát triển . - Tiếp tục nghiên cứu các tài liệu về lập trình mạng trên máy Pocket PC về những chủ đề như: WinInet, sử dụng cổng số và cổng hồng ngoại, connection manager - Xây dựng cơ sở dữ liệu cho Ứng dụng chat giữa các Pocket PC hoặc Pocket PC với máy tính để bàn: Xây dựng những chat room cho phép các client kết nối. Từ đó, lưu trữ thông điệp gửi đến các client không kết nối đến server. Sau khi client đó kết nối đến server thì server sẽ gửi về những thông điệp offline đó(tương tự như Yahoo chat). Xây dựng thêm chức năng gửi file, gửi hình ảnh. - Nâng cao ứng dụng điều khiển Power Point: -3- Điều khiển một Power Point xác định nếu hệ điều hành đang chạy nhiều cửa sổ Power Point. Sử dụng các phím của mũi tên của chính Pocket PC để điều khiển Power Point. -4- Danh mục tài liệu tham khảo. Tiếng việt: [1] Đặng Văn Đức - Lê Quốc Hưng(1999), Lập trình Window Bằng Visual C++, Nhà Xuất Bản Giáo Dục. [2] Nguyễn Đình Tê, Tự Học Lập Trình Visual C++ MFC qua các ví dụ, Nhà Xuất Bản Lao Động – Xã Hội. [3] Nguyễn Hồng Sơn, Giáo Trình Hệ Thống Mạng Máy Tính CCNA Semester 1, Nhà Xuất Bản Giáo Dục. [4] Võ Thạch Chí Trường(2005), bao_cao_nien_luan_Pocket PC. [5] http://www.fit.hcmuns.edu.vn/~tlhdu/classes/hdhnc/ Tiếng Anh: [1] Addison Wesley, Pocket PC Network Programming eBookLiB. [2] MSDN Libarary – April 2005. -5- Phụ lục. Chương trình chat tuần tự giữa Client và Server. Xây dựng Server: #include "stdafx.h" #include "Server.h" #include "afxsock.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // The one and only application object CWinApp theApp; using namespace std; int _tmain(int argc, TCHAR* argv[], TCHAR* envp[]) { int nRetCode = 0; // initialize MFC and print and error on failure if (!AfxWinInit(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), 0)) { // TODO: change error code to suit your needs cerr << _T("Fatal Error: MFC initialization failed") << endl; nRetCode = 1; } else -6- { AfxSocketInit (NULL); CSocket socketListen , socketAccept ; char sMsg[4096]; int nMsgLen ; cout<<"Server dang cho ket noi "<<endl; if(!socketListen.Create (12345) || !socketListen.Listen () || ! socketListen.Accept (socketAccept)) { cout<<"Khong tao duoc Socket"; exit(0); } cout<<"Server da nhan duoc ket noi "; do { socketAccept.Receive (&nMsgLen,sizeof(nMsgLen)); socketAccept.Receive (sMsg,nMsgLen); sMsg[nMsgLen] = 0 ; cout<<"Nhan :"; cout<<sMsg<<endl; if(strcmpi(sMsg,"exit")==0) break; cout<<"Gui : "; gets(sMsg); nMsgLen = strlen(sMsg); socketAccept.Send (&nMsgLen,sizeof(nMsgLen)); socketAccept.Send(sMsg,nMsgLen); -7- }while(strcmpi(sMsg,"exit") != 0); //Dong cac socket socketAccept.Close (); socketListen.Close (); } return nRetCode; } Xây dựng Client: #include "stdafx.h" #include "SocketClient.h" #include "afxsock.h" #include "conio.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // The one and only application object int menu(); CWinApp theApp; using namespace std; int _tmain(int argc, TCHAR* argv[], TCHAR* envp[]) { int nRetCode = 0; // initialize MFC and print and error on failure if (!AfxWinInit(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), 0)) -8- { // TODO: change error code to suit your needs cerr << _T("Fatal Error: MFC initialization failed") << endl; nRetCode = 1; } else { // TODO: code your application's behavior here. AfxSocketInit(NULL);//khoi tao CSocket socketConnect; char sMsg[4096],sServerAddress[] = "127.0.0.1"; int nMsgLen; char header; if (!socketConnect.Create()|| !socketConnect.Connect(sServerAddress,1111)) { cout<<"Khong ket noi duoc Server"; exit(0); } cout<<"ket noi server thanh cong "<<endl; do { cout<<" Thong diep :"; gets(sMsg); nMsgLen=strlen(sMsg); socketConnect.Send(&nMsgLen,sizeof(nMsgLen)); socketConnect.Send(sMsg,nMsgLen); -9- if(strcmpi(sMsg,”exit”)==0) break; socketConnect.Receive(&nMsgLen,sizeof(nMsgLen)); socketConnect.Receive(sMsg,nMsgLen); sMsg[nMsgLen]= 0;//end of string cout<<sMsg<<endl; }while(strcmpi(sMsg,”exit”)!= 0); //Dong socket ket noi socketConnect.Close(); } return nRetCode; } -10- . đủ những kỹ thuật cơ bản trong lập trình mạng, đặc biệt trên Pocket PC. Đề xuất hướng phát triển . - Tiếp tục nghiên cứu các tài liệu về lập trình mạng trên máy Pocket PC về những chủ đề như:. phím của mũi tên của chính Pocket PC để điều khiển Power Point. -4- Danh mục tài liệu tham khảo. Tiếng việt: [1] Đặng Văn Đức - Lê Quốc Hưng( 199 9), Lập trình Window Bằng Visual C++, Nhà Xuất Bản. qua socket. - Giới thiệu tương đối đầy đủ những kiến thức lập trình liên quan hỗ trợ cho lập trình mạng như: đa tuyến, đồng bộ tiến trình, các hàm gửi thông điệp window - Sau những kiến thức