Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng Lời Nói Đầu Ngày nay, mạng máy tính đà trở thành hạ tầng sở quan trọng tất quan xí nghiệp, doanh nghiệp Nó đà trở thành kênh trao đổi thông tin thiếu đ-ợc thời đại công nghệ thông tin Với xu giá thành ngày hạ thiết bị điện tử, kinh phí đầu t- cho việc xây dựng hệ thống mạng không v-ợt khả công ty xí nghiệp Tuy nhiên, việc khai thác hệ thống mạng cách hiệu để hỗ trợ cho công tác nghiệp vụ quan xí nghiệp nhiều vấn đề cần bàn luận Việc xây dựng phần mềm để quản lý máy tính phòng mạng hay công ty, xí nghiệp, dịch vụ internet yêu cầu cần thiết Phần mềm quản lý máy tÝnh sÏ gióp cho ng-êi qu¶n lý qu¶n lý mét cách dễ dàng máy tính mạng, tránh đ-ợc thao tác không cần thiết Ngoài ra, phần mềm giúp cho việc bảo mật thông tin máy tính tốt Bắt nguồn từ nhu cầu thực tế em đà chọn đề tài xây dựng phần mềm Quản Lý Phòng máy tính Phần mềm thực chức quản lý máy tính mạng LAN dựa mô hình Master -Slaver dùng giao thức UDP để thực truyền liệu trình kết nối Trong trình thực đề tài, em đ-ợc quan tâm h-ớng dẫn tận tình Thầy giáo Ths Trần Xuân Tr-ờng, đồng thời d-ợc góp ý giúp đỡ bạn bè ®· gióp em hoµn thµnh ®Ị tµi nµy Do nhiỊu yếu tố khách quan tầm hiểu biết ch-a sâu sắc nên ch-ơng trình nhiều tính em ch-a thể khai thác hết đ-ợc Em mong đ-ợc góp ý Thầy Cô bạn để em hoàn thiện đề tài Xin chân thành cám ơn! SV thực Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng MơC LơC Néi dung Trang PHÇN I MÔ Tả BàI TOáN Và CƠ Sở Lý THUYÕT 1.1 Mô tả toán 1.2 C¬ së lý thuyÕt 1.2.1 Mô hình OSI 1.2.2 Mô hình Master Slaver: 1.2.3 Giao thức sử dụng truyền tải liệu: 1.2.4 Giíi thiƯu vỊ Socket 10 1.3 Tổng quan ch-ơng trình Quản lý phòng máy tính : 12 1.3.1 Sơ đồ kết nối trao đổi liệu giao thức TCP, UDP 12 1.3.2 Xây dựng ch-ơng trình dùa trªn giao thøc kÕt nèi UDP 13 PhÇn II 15 Phân tích xây dựng ch-ơng trình 15 2.1 Phân tích chức chung hệ thống 15 2.1.1 Chức nghiệp vơ cđa hƯ thèng 15 2.1.2 Chức quản trị hệ thống 15 2.1.3 Chức quản lý máy client 15 2.1.4 Chức giám sát hÖ thèng 16 2.1.5 Chức gửi message chat: 16 2.2 ThiÕt kÕ ch-¬ng trình ch-ơng trình quản lý phòng máy 16 2.2.1 Thiết kế sở liệu: 16 2.2.2 Thiết kế module ch-ơng trình 21 PhÇn III 43 Giao diện ch-ơng trình 43 3.1 Yêu cầu cấu hình để chạy ch-ơng trình 43 3.2 Giao diện ch-ơng trình 43 Ch-¬ng trình quản lý phòng máy tính SVth:Trần văn hiền Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng 3.2.1 Các giao diện bên phía máy server 43 3.2.2 Giao diÖn bên phía máy khách(client) 47 PHÇN IV 48 KÕT LUËN 48 4.1 Các chức bật 48 4.2 Các kỹ thuật đà tìm hiểu 48 4.3 H¹n chÕ 49 4.4 H-íng ph¸t triÓn 49 TàI LIệU THAM KHảO 50 Ch-¬ng trình quản lý phòng máy tính SVth:Trần văn hiền Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng PHầN I MÔ Tả BàI TOáN Và CƠ Sở Lý THUYếT 1.1 Mô tả toán Ngày internet đà trở thành vai trò quan trọng sống Internet kênh thông tin cung cấp đầy đủ loại hình thông tin nh-: Tin tức, thể thao, sức khỏe, giải trí, giao l-u, đàm thoại, email, với l-ợng thông tin rộng lớn Trong nghiệp đổi Nhà n-ớc ta đặc biệt quan tâm đến kênh thông tin qua internet, thông qua internet Đảng nhà n-ớc thông báo sách phát triển kinh tế - xà hội, giải đáp trực tuyến thắc mắc nhân dân Công nghệ điện tử ngày phát triển nên việc trang bị máy tính cho riêng không khó, nh-ng để máy tính kết nối internet ng-ời dân nông thôn khó khăn Vì loại hình kinh doanh phòng mạng máy tính có kết nối internet đ-ợc phát triển ngày phổ biến thành thị nông thôn Để công việc quản lý máy tính đ-ợc nhẹ nhàng hiệu đòi hỏi phải có phần mềm quản lý máy tính Ch-ơng trình Quản lý phòng máy tính phần mềm ứng dụng quản lý máy tính mạng LAN, ch-ơng trình đ-ợc thiết kế dựa mô hình Master - slaver Với nhiều chức giúp cho ng-ời quản lý phòng máy tính dễ dàng, linh hoạt hiệu 1.2 Cơ sở lý thuyết 1.2.1 Mô hình OSI Để dễ dàng cho việc kết nối trao đổi thông tin hai máy tính với nhau, vào năm 1983, tổ chức tiêu chuẩn giới - ISO đà phát triển mô hình mà hai máy tính gửi nhận liệu cho Mô hình dựa tiếp cận phân tầng, với tầng đảm nhận số chức Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng Để hai máy tính trao đổi thông tin với có nhiều vấn đề liên quan ví dụ cần có card mạng, dây cáp mạng, điện tín hiệu cáp mạng, cách thức đóng gói liệu, điều khiển lỗi đ-ờng truyền cách phân chia chức vào tầng riêng biệt nhau, việc phần mềm để thực chúng trở nên dễ dàng Mô hình OSI giúp đồng nhÊt c¸c hƯ thèng m¸y tÝnh kh¸c biƯt chúng trao đổi thông tin Mô hình gồm tầng: Tầng 1: Tầng vật lý(Physical Layer) Điều khiển việc truyền tải thực bit đ-ờng truyền vật lý Nó định nghĩa thuộc tính cơ, điện, quy định loại đầu nối, ý nghĩa pin đầu nối, quy định mức điện cho bit 0,1, Tầng 2: Tầng liên kết liệu (Data - Link Layer) Tầng đảm bảo truyền tải khung liệu(Frame) hai máy tính có ®-êng trun vËt lý nèi trùc tiÕp víi Nã cài đặt chế phát xử lỗi liệu nhận Tầng 3: Tầng mạng (Network Layer) Tầng đảm bảo gói tin liệu(Packet) truyền từ máy tính đến máy tính cho dù đ-ờng truyền vật lý trực tiếp chúng Nó nhận nhiệm vụ tìm đ-ờng đến mạng tính khác mạng Tầng 4: Tầng vận chuyển (Transport Layer) Tầng đảm bảo truyền tải liệu trình Dữ liệu đ-ợc gửi đảm bảo lỗi, theo trình tự, không bị mát, trùng lặp Đối với liệu có kích th-ớc lớn tầng phân chia nhỏ tr-ớc gửi đi, nh- tập hợp lại nhận đ-ợc Tầng 5: Tầng giao dịch(Session Layer) Tầng cho phép ứng dụng thiết lập, sử dụng xóa kênh giao tiếp chúng(đ-ợc gọi giao dịch) Nó cung cấp chế cho việc nhận biết tên chức bảo mật thông tin truyền qua mạng Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng Tầng 6: Tầng trình bày(Presentation Layer) Tầng đảm bảo máy tính có kiểu định dạng liệu khác trao đổi thông tin cho thông th-ờng máy tính thống kiểu định dạng liệu trung gian để trao thông tin máy tính Một liệu cần gửi đ-ợc tầng trình bày chuyển sang định dạng trung gian tr-ớc đ-ợc truyền lên mạng, ng-ợc lại nhận liệu tầng chuyển liệu sang định dạng riêng Tầng 7: Tầng ứng dụng(Application Layer) Đây tầng cung cấp ứng dụng truy xuất đến dịch vụ mạng Nó bao gồm ứng dơng cđa ng-êi dïng nh- Web Browser(Netscape Navigator, Internet Explorer), Mail user agent(Outlook Express, Netscape Messenger) hay ch-ơng trình server cung cấp dịch vụ mạng ng-ời dùng mạng giao tiếp trực tiếp với tầng 1.2.2 Mô hình Master Slaver: Mô hình Client Server mô hình tiếng mạng máy tính, đ-ợc áp dụng rộng rÃi mô hình trang web có, ý t-ởng mô hình máy con(đóng vai trò máy khách) gửi yêu cầu(request) đến máy chủ(đóng vai trò ng-ời cung cấp dịch vụ), máy chủ xử lý trả kết cho máy khách Mô hình Master Slaver mô hình ng-ợc lại với mô hình Client Server, mô hình Master Slaver máy chủ(đóng vai trò ông chủ) gửi liệu đến máy con(đóng vai trò nô lệ) máy có cần hay không Thuật ngữ Slaver đ-ợc dùng cho ch-ơng trình thi hành yêu cầu nhận đ-ợc từ máy chủ(Master) Các ch-ơng trình máy client(Slaver) thực thi yêu cầu hợp lý từ máy chủ(Master) gửi xuống, sau trả kết thực thi cho máy chủ Ch-ơng trình Master Slaver giao tiếp với thông điệp(message) thông qua cổng truyền thông liên tác IPC( interprocess commucation) Để ch-ơng trình Master ch-ơng trình Slaver giao tiếp với chúng phải có chuẩn để nói chuyện, chuẩn Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng đ-ợc gọi giao thức Nếu ch-ơng trình Master muốn lấy thông tin từ Slaver phải tuân theo giao thức mà Slaver đ-a Với phát triển mạng nh- có nhiều giao thức chuẩn mạng đời nhằm đáp ứng nhu cầu phát triển Các giao thức chuẩn(ở tầng mạng tầng vận chuyển) đ-ợc sử dụng rộng rÃi hiƯn nh-: Giao thøc TCP/IP, giao thøc SNA cđa IBM, OSI, ISDN, X.25 hc giao thøc LAN- to- LAN NetBios Một máy tính chứa ch-ơng trình Server đ-ợc coi máy chủ hay máy phục vụ(Server) máy chứa ch-ơng trình client đ-ợc coi máy tớ(client) 1.2.3 Giao thức sử dụng truyền tải liệu: Có nhiều giao thức đ-ợc sử dụng việc truyền tải thông tin máy với nh- giao thức TCP, TCP/IP, UDP, IP Hai giao thức đ-ợc sử dụng rộng rải phổ biến là: TCP UDP - Giao thøc UDP vµ TCP lµ hai giao thøc phỉ biÕn nhÊt ë líp vËn chun(Transport layer) cđa giao thức TCP/IP UDP dùng byte cho phần Header yêu cầu xử lý từ Host TCP cần nhiều Byte phần Header phải xử lý nhiều nh-ng cung cấp nhiều chức hữu ích nh- khả khôi phục lỗi Các Header TCP UDP khác ở(20 byte), nguyên nhân chủ yếu TCP hỗ trợ nhiều chức Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng - Giao thức TCP Hai øng dơng dïng TCP ph¶i thiÕt lËp mét kÕt nèi TCP tr-ớc liệu đ-ợc truyền Mỗi kết nối tồn cặp TCP Socket với Socket đ-ợc định nghĩa nh- kết hợp địa IP, cổng đ-ợc dùng, giao thức lớp vận chuyển Quá trình thiết lập kết nối, khởi tạo Socket bao gồm giá trị cổng nguồn cổng đích, số ACK Trong trình thiết lËp kÕt nèi, hai Host sÏ chän lùa cæng, chän lựa số (Sequence number) dùng số TCP để nhận thông điệp trình bắt tay ba b-ớc Đầu tiên, vấn đề cổng, bên máy chủ (Server) phải lắng nghe yêu cầu kết nối từ máy yêu cầu máy khách(Client), tr-ờng hợp cổng 80 Phía máy khách chọn cổng ch-a dùng làm cổng nguồn, th-ờng giá trị 1024 lớn L-u ý so sánh phân đoạn (Segment) tiến trình trên, giá trị cổng không đổi Segment đơn vị mô tả liệu lớp vận chuyển đ-ợc gọi PDU (Protocol Data Unit) Trong phần Header TCP có bao gồm vài tr-ờng có giá trị Bit, gọi cờ Các cờ phục vụ cho mục đích khác Các cờ SYN ACK Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng Segment có phải Segment thứ hai mét kÕt nèi TCP míi Mét Segment cã cê SYN segment kết nối TCP Một Segment có SYN ACK Segment thứ hai kết nối Các cờ cho phép host dễ dàng nhận yêu cầu kết nối Chỉ số ban đầu đ-ợc gán giá trị hợp lệ th-ờng không đ-ợc gán Quá trình khôi phục lỗi, việc sử dụng giá trị độc lËp c¶ hai chiỊu - Giao thøc UDP Giao thức UDP(User Datagram Protocol) giao thức cốt lõi giao thức TCP/IP Dùng UDP ch-ơng trình máy gửi liệu ngắn đ-ợc gọi datagram tới máy khác UDP không cung cấp tin cậy thứ tự nh- TCP, gói liệu đến thứ tự bị mà thông báo Tuy nhiên UDP nhanh hiệu với mục tiêu nh- kích th-ớc gói tin nhỏ yêu cầu khắt khe thời gian Do chất không trạng thái nên hữu dụng việc trả lời truy vấn nhỏ với số l-ợng yêu cầu lớn Những ứng dụng phổ biÕn nhÊt cđa UDP nh- DNS(Domain Name System), øng dơng Treaming Media, Voice Over Ip, TFPT(Trivial File Transfer Protocol), vµ Game trực tuyến UDP dùng cổng để thực giao tiếp, đặc điểm UDP: Chỉ thêm thông tin địa Port, điều khiển lỗi Checksum độ dài thông tin UDP cung cấp chức cho chế truyền End-to-End, không cung cấp chức xử lý lỗi truyền lại liệu bị lỗi 1.2.4 Giới thiệu Socket Socket giao diện lập trình ứng dụng (API) mạng Thông qua giao diện lập trình điều khiển việc truyền thông hai máy sử dụng giao thức mức thấp TCP, UDP Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền 10 Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng Socket trừu t-ợng hóa mức cao t-ợng t-ợng nh- thiết bị truyền thông hai chiều gửi nhận liệu hai máy tính với Các loại Socket: - Socket h-ớng kÕt nèi (TCP Socket) - Socket kh«ng h-íng kÕt nèi (UDP Socket) - Raw Socket - Đặc điểm Socket h-ớng kết nối - Có đ-ờng kết nối ảo hai tiến trình - Một hai tiến trình phải đợi tiến trình yêu cầu kết nối - Có thể sử dụng để liên lạc theo mô hình Client/Server - Trong mô hình Client/Server Server lắng nghe chấp nhận yêu cầu kết nối - Mỗi thông điệp gửi có xác nhận trở - Các gói tin chuyển - Đặc điểm Socket không h-ớng kết nối: - Hai tiến trình liên lạc với không kết nối trực tiếp - Thông điệp gửi phải kèm theo địa ng-ời nhận - Thông điệp gửi nhiều lần - Ng-ời gửi không chắn thông điệp tới tay ng-ời nhận Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền 11 Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng ví dụ Thực lệnh shutdown tõ m¸y chđ gưi xng public void ProcessControl(string CommandCode, string info) { switch (CommandCode) { ……… case "Shutdown ": Remote.Shutdown(client, info); break; …… } - Líp Chat.cs: NhËn, hiĨn thÞ gửi thông điệp chat tới server Sử dụng cổng 5002 ®Ĩ giao tiÕp víi Server Dïng mét Thread ®Ĩ thùc hiƯn giao tiÕp (nhËn Message) víi Server - Líp Remote.cs: Là lớp cốt lõi ch-ơng trình chạy Client, thực tất yêu cầu Server gửi xuống bao gồm ph-ơng thức sau: + Ph-ơng thức SendControl: Thực gửi thông điệp yêu cầu, tr¶ lêi tíi Server public static bool SendControl(UdpClient m_client, string frame, string ServerName) { try { byte[] data = Encoding.ASCII.GetBytes(frame); m_client.Send(data, data.Length, ServerName, 5000); return true; } catch { return false; } } + Ph-ơng thức LogOutClient: Thực yêu cầu LogOff(thoát đăng nhâp) từ Server Nếu thành công gửi kết lên cho Server Tác động vào System32 hệ điều hành Bằng cách thực gọi ph-ơng thức Win32Shutdown hệ điêu hành windows ph-ơng thøc nµy cã hai tham sè: lµ “ Flag” vµ Reserved tr-ờng hợp Flag = 4( logoff c-ỡng chế) flag = 0(logoff bình th-ờng) Reserved = Đoạn mà lệnh thực logout m¸y tÝnh ManagementBaseObject mboLogout = null; ManagementClass mcWin32 = new ManagementClass("Win32_OperatingSystem"); Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền 36 Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng // goi cac doi tuog wmi de xu ly mcWin32.Get(); // goi phuong thuc paramate de ManagementBaseObject mboLogoutParamate = mcWin32.GetMethodParameters("Win32Shutdown"); mboLogoutParamate["Flags"] = "4";// force log off flags = mboLogoutParamate["Reserved"] = "0"; //thiet lap dac quyen dieu khien may tinh mcWin32.Scope.Options.EnablePrivileges = true; // thuc hien log out window foreach (ManagementObject mbo in mcWin32.GetInstances()) { mboLogout = mbo.InvokeMethod("Win32Shutdown", mboLogoutParamate, null); } + Ph-¬ng thøc ShutDown: Thùc tắt máy tính Nếu thành công gửi kết lên cho Server Tác động vào System32 hệ điều hành Bằng cách thực gọi ph-ơng thức Win32Shutdown hệ điêu hành windows ph-ơng thức có hai tham sè: lµ “ Flag” vµ “ Reserved” tr-ờng hợp Flag = (thực tắt c-ỡng chế) flag = 1(thực tắt bình th-ờng) Reserved = + Ph-ơng thức Reset : Thực khởi động lại máy tính Nếu thành công gửi kết lên cho Server Tác động vào System32 hệ điều hành Bằng cách thực gọi ph-ơng thức Win32Shutdown hệ điêu hành windows ph-ơng thøc nµy cã hai tham sè: lµ “ Flag” vµ Reserved tr-ờng hợp Flag = 6(khởi động c-ỡng chế) flag = Reserved = + Ph-¬ng thøc Lock : Thùc hiƯn khãa bàn phím máy tính Nếu thành công gửi kết lên cho Server Bằng cách thực ph-ơng thức BlockInput( bool var ) ph-ơng thức mở rộng th- viện User32.dll tr-ờng hợp Var = true Đoạn mà lệnh thực [DllImport("user32.dll")] public static extern bool BlockInput(bool fBockIt); Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền 37 Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng // thc hin khúa bn phím BlockInput(true); + Ph-¬ng thøc UnLock: Thùc hiƯn më khãa bàn phím T-ơng tự ph-ơng thức Lock nh-ng Var = false + Ph-ơng thức Hirbernate: thực yêu cầu ngủ đông máy chủ Câu lệnh thực ngủ đông(Hirbernate) Application.SetSuspendState(PowerState.Hibernate, true, true); + Ph-ơng thức Standby: standby máy tính C©u lƯnh thùc hiƯn standby Application.SetSuspendState(PowerState.Suspend, true, true); + ProcessClient: Thực lấy Process máy để gửi lên cho Server Visual 2008 cung cÊp cho ta líp Process để lấy thông tin tiến trình mà máy tính chạy Đoạn mà lệnh thực public static bool ProcessClient(UdpClient m_client, string ServerName) { try { Process[] prcRuning = Process.GetProcesses(SystemInformation.ComputerName); for (int i = 0; i < prcRuning.Length; i++) { string msgInfo = "Process _"; sendcontrol1(m_client, ServerName, msgInfo); System.Threading.Thread.Sleep(10); msgInfo = prcRuning[i].ProcessName; msgInfo += "*" + prcRuning[i].Id.ToString(); msgInfo += "*" + getProcessUserName(prcRuning[i].Id); sendcontrol1(m_client,ServerName, msgInfo); msgInfo = ""; } return true; } catch {return false;} } Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền 38 Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng //Phng thức lấy tên process tương ứng với số PID public static string getProcessUserName(int pID) { string query = " Select * from Win32_Process where ProcessId =" + pID; ManagementObjectSearcher seacher = new ManagementObjectSearcher(query); ManagementObjectCollection Processlist = seacher.Get(); // string userName = null; foreach (ManagementObject ojb in Processlist) { string[] arList = new string[] { string.Empty }; int t = Convert.ToInt32( ojb.InvokeMethod("getOwner",arList)); if (t == 0) return arList[0]; } return "NO Owner"; } + KillProcess: Thực yêu cầu hủy Process Sử dụng ph-ơng thức Kill() đối t-ợng System.Diagnosticts.Process public static bool KillProcess(string processName) { try { Process[] prcRunning = Process.GetProcesses(SystemInformation.ComputerName); foreach (Process prc in prcRunning) { if (prc.ProcessName.ToUpper() == processName.ToUpper()) prc.Kill(); } return true; } catch { return false; } } + Chat: Gửi thông điệp Chat lên Server để Server bật chức Chat lên + Các ph-ơng thức xử lý dịch vụ hệ điều hành: - Ph-ơng thức lấy dịch vụ Loadserver(): đoạn mà lệnh lấy dịch vụ máy tính ManagementClass mcService = new ManagementClass("win32_service"); foreach (ManagementBaseObject mcoservice in mcService.GetInstances()) { info = mcoservice.GetPropertyValue("Caption").ToString() + "*"; Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền 39 Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng info += mcoservice.GetPropertyValue("Description").ToString() +"*"; info += mcoservice.GetPropertyValue("PathName").ToString()+"*"; info += mcoservice.GetPropertyValue("State").ToString()+"*"; info += mcoservice.GetPropertyValue("Servicetype").ToString() + "*"; info += mcoservice.GetPropertyValue("StartMode").ToString() + "*"; sendcontrol1(m_client, servername, info); Thread.Sleep(10); info = ""; } - Ph-ơng thức chạy dịch StartService(string caption): Đoạn mà lệnh public static void startService(string caption) { if (getServiceName(caption) != null) { ServiceController sc = new ServiceController(getServiceName(caption)); try { if (sc.Status == ServiceControllerStatus.Stopped) { sc.Start();//khoi chay dich vu while (sc.Status == ServiceControllerStatus.Stopped) { Thread.Sleep(1000); // khoi tao lai dich vu voi thuoc tinh moi duoc //thiet lap sc.Refresh(); } } } catch (Exception err) { MessageBox.Show(err.Message); } Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền 40 Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng } } - Ph-ơng thức ngừng dÞch vơ StopService: public static void stopService(string caption) { if (getServiceName(caption) != null) { ServiceController sc = new ServiceController(getServiceName(caption)); try { sc.Stop(); while (sc.Status != ServiceControllerStatus.Stopped) { Thread.Sleep(1000); //resetting sc.Refresh(); } } catch { } } } - Ph-¬ng thøc tạm dừng dịch vụ PauseService chạy tiếp ResumeService: public static void pauseService(string caption) { if (getServiceName(caption) != null) { ServiceController sc = new ServiceController(getServiceName(caption)); try { sc.Pause(); while (sc.Status != ServiceControllerStatus.Paused) { Thread.Sleep(1000); Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền 41 Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng sc.Refresh(); } } catch { } } public static void resumeService(string caption) { if (getServiceName(caption)!= null) { ServiceController sc = new ServiceController(getServiceName(caption)); try { sc.Continue(); while (sc.Status == ServiceControllerStatus.Paused) { Thread.Sleep(1000); sc.Refresh(); } } catch { } } } Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền 42 Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng Phần III Giao diện ch-ơng trình 3.1 Yêu cầu cấu hình để chạy ch-ơng trình - Máy Server cài đ-ợc phần mềm Frame work (DOTNETFX.EXE), cài SQL 2005 để chạy máy chủ(Server) - Hệ điều hành Winxp, server 2003 dùng cho máy chủ(Server) máy khách(Client) 3.2 Giao diện ch-ơng trình 3.2.1 Các giao diện bên phía máy server - Giao diện ch-ơng trình (Server.cs) Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền 43 Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng - Giao diện form quản lý máy khách(Manage.cs) - Tab hiển thị máy trạng thái kết nối - Tab quản lý process máy khách - Tab quản lý ổ đĩa máy khách Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền 44 Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng - Tab quản lý dịch vụ máy khách - Tab truyền file xng m¸y kh¸ch - Giao diƯn form xem c¸c sù kiện hệ thống Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền 45 Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng - Giao diện form quản lý tài khoản - Giao diện form quản lý dịc vụ Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền 46 Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng - Giao diện form chat: 3.2.2 Giao diện bên phía máy khách(client) - Giao diện form client: - Giao diƯn form chat: - Giao diƯn cđa Form nhập thông tin máy chủ Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền 47 Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng PHầN IV KếT LUậN 4.1 Các chức bật - Chức bật công phu khả chuyển giao thông tin hai máy cách xuyên suốt Cả máy chủ máy khách hiểu cách xác thông qua thông điệp - Các chức tắt máy(Shutdown), khởi động lại(Reset), Logoff , khóa máy(Lock )là chức tác động trực tiếp vào hệ điều hành( class WMI) máy Client Do thao tác đòi hỏi phải thật xác - Hổ trợ nhiều Client truy cập lóc nh- cã thĨ cïng lóc Chat víi c¸c m¸y mạng - Xem, hủy tiểu trình(Process) máy Client máy Server - Xem, tạo mới, xóa, đổi tên th- mục máy Client từ máy Server - Xem, chạy, dừng, tạm ngừng chạy tiếp dịch vụ(service) 4.2 Các kỹ thuật đà tìm hiểu - Giao thức UDP giao thức TCP: Ưu nh-ợc điểm hai giao thức Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền 48 Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng - Socket: Hiểu đ-ợc quy tr×nh giao tiÕp qua Socket - Thread : Thùc đa tiểu trình - Delegate, Invoke: Giúp cho tiểu trình can thiệp vào Form - Process: Hiểu đ-ợc cách thức hoạt động Process máy tính - Hiểu đ-ợc đối t-ợng lớp WMI hệ điều hành chức chúng, cách thức yêu cầu hệ điều hành thực số chức năng, biết đ-ợc số chức đối t-ợng Win32 - Các thao tác vỊ ỉ ®Üa, th- mơc, file nh- xãa, copy, ®ỉi tên, di chuyển - Thao tác Registry nh- xóa, tạo mới, đọc thông tin từ Registry 4.3 Hạn chế Vì dùng giao thức UDP giao thức không h-ớng kết nối, chế phục hồi lỗi nên trình truyền có đôi lúc bên nhận không hiểu đ-ợc bên truyền muốn yêu cầu 4.4 H-ớng phát triển Từ chức đà thực đ-ợc ch-ơng trình sau ch-ơng trình phát triển thành ch-ơng trình quản lý phòng mạng Internet có chiều sâu Có thể phát triển theo h-ớng chuyên sâu bảo mật máy Client chúng đ-ợc kết nối Internet Ngoài ra, xây dựng ch-ơng trình quản lý thông qua kết nối VPN h-ớng hay Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền 49 Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng TàI LIệU THAM KHảO Network programing in c# tác giả FiachReid Các giải pháp lập trình c# Nguyễn ngọc Bích Ph-ơng - Thái Thanh Phong Nhà sách Đất Việt, 225 Nguyễn tri Ph-¬ng quËn TPHCM http://msdn.microsoft.com/ Internet Ch-¬ng trình quản lý phòng máy tính SVth:Trần văn hiền 50 ... nông thôn Để công việc quản lý máy tính đ-ợc nhẹ nhàng hiệu đòi hỏi phải có phần mềm quản lý máy tính Ch-ơng trình Quản lý phòng máy tính phần mềm ứng dụng quản lý máy tính mạng LAN, ch-ơng trình... quản lý process máy khách - Tab quản lý ổ đĩa máy khách Ch-ơng trình quản lý phòng máy tính SVth:Trần văn hiền 44 Báo cáo đồ án tốt nghiệp GVHD: Th.s Trần xuân tr-ờng - Tab quản lý dịch vụ máy. .. nghiệp vụ hệ thống - Chức ch-ơng trình Quản lý phòng máy tính thực quản lý máy client thông qua việc quản lý ng-ời dùng đăng nhập máy client tài nguyên máy client - Để thực tốt chức vấn đề đảm