Thi Kiểm tra Giữa kỳ Lần 2
+20
DiepMaiNgocYen(I12A)
huynhvanhung(I12A)
lequanghanh(102c)
LePhucHiep(102C)
PhamDucPhuong(I12A)
lamtienkhoa(102c)
phamduyI12A
ThuyDuong23 (I12A)
TRANTHUYOANH_10H1010066
nguyenthaihiep (I11C)
NguyenAnhTan15 (I12C)
NguyenTuanHai_I12A
TranThiMyKhanh(I12A)
huynhtamhaoI12A
nguyenthanhphongHC11TH2A
ngothihanHC11TH2A
BuiPhamAnBinh(I12A)
trinhvanminh_11h1010077
luthioanh-I12A
Admin
24 posters
Trang 1 trong tổng số 2 trang
Trang 1 trong tổng số 2 trang • 1, 2
giới thiệu chức năng và giao diện của ứng dụng: UDPclient C#.NET 2005
- Chức năng: gởi nhận thông điệp giữa các tiến trình
- Giao diện: có 4 textbox: gởi, nhận, địa chỉ máy tính cần kết nối, port kết nối. 1 nút gởi dữ liệu, khi nhận dữ liệu thì dữ liệu đó sẽ hiện lên trong textbox nhận, và có tooltipball hiện lên nội dung vừa nhận. khi muốn gởi thông điệp thì nhập nội dung vào ô gởi và nhấn nút gửi
cách mở ứng dụng: vào thư mục: ...\HeDieuHanh\Tu hoc\Lap trinh Da luong voi .NET\UDPClient C# .NET 2005 (Remote)\WindowsApplication1 mở file udpPeerClient.sln rồi dịch lại chương trình (F5 hoặc bấm nút mũi tên màu xanh).
chương trình sử dụng using System.Net.Sockets để lập trình cho giao tiếp sockets.
sử dụng lớp udpClient (cung cấp phương thức cho việc gởi và nhận thông điệp không có kết nối UDP) và lớp IPEndPoint (đối tượng sẽ cho phép chúng ta đọc datagrams gửi từ bất kỳ nguồn nào) của lớp net.sockets
udpClient.Send(sendBytes, sendBytes.Length, txtRemoteHost.Text, Convert.ToInt16(txtRemotePort.Text)); // dùng để gởi thông điêp đến cổng định sẵn
RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);// bị khóa cho đến khi có dữ liệu từ 1 địa chỉ bất kỳ gởi đến
SetText(returnData, RemoteIpEndPoint.Address.ToString()); // Dữ liệu nhận được và Địa chỉ IP nơi gửi
Mong thầy và các bạn góp ý thêm!
- Giao diện: có 4 textbox: gởi, nhận, địa chỉ máy tính cần kết nối, port kết nối. 1 nút gởi dữ liệu, khi nhận dữ liệu thì dữ liệu đó sẽ hiện lên trong textbox nhận, và có tooltipball hiện lên nội dung vừa nhận. khi muốn gởi thông điệp thì nhập nội dung vào ô gởi và nhấn nút gửi
cách mở ứng dụng: vào thư mục: ...\HeDieuHanh\Tu hoc\Lap trinh Da luong voi .NET\UDPClient C# .NET 2005 (Remote)\WindowsApplication1 mở file udpPeerClient.sln rồi dịch lại chương trình (F5 hoặc bấm nút mũi tên màu xanh).
chương trình sử dụng using System.Net.Sockets để lập trình cho giao tiếp sockets.
sử dụng lớp udpClient (cung cấp phương thức cho việc gởi và nhận thông điệp không có kết nối UDP) và lớp IPEndPoint (đối tượng sẽ cho phép chúng ta đọc datagrams gửi từ bất kỳ nguồn nào) của lớp net.sockets
udpClient.Send(sendBytes, sendBytes.Length, txtRemoteHost.Text, Convert.ToInt16(txtRemotePort.Text)); // dùng để gởi thông điêp đến cổng định sẵn
RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);// bị khóa cho đến khi có dữ liệu từ 1 địa chỉ bất kỳ gởi đến
SetText(returnData, RemoteIpEndPoint.Address.ToString()); // Dữ liệu nhận được và Địa chỉ IP nơi gửi
Mong thầy và các bạn góp ý thêm!
luthioanh-I12A- Tổng số bài gửi : 29
Join date : 17/02/2012
Age : 39
Re: Thi Kiểm tra Giữa kỳ Lần 2
RÚT KINH NGHIỆM THI LẦN 1, LẦN 2 BÁM SÁT DIỄN ĐÀN LÀM CŨNG ĐƯỢC 2 CÂU VÀ HẾT GIỜ. CÓ LẼ VIẾT DÀI QUÁ LẦN SAU CHẮC PHẢI VIẾT Ý CHÍNH, NGẮN GỌN MỚI ĐƯỢC.
TỪ GIỜ ĐẾN KHI THI HẾT MÔN PHẢI TÍCH CÓP THÊM KIẾN THỨC MỚI ĐƯỢC.
TỪ GIỜ ĐẾN KHI THI HẾT MÔN PHẢI TÍCH CÓP THÊM KIẾN THỨC MỚI ĐƯỢC.
trinhvanminh_11h1010077- Tổng số bài gửi : 90
Join date : 15/02/2012
Age : 39
Đến từ : tphcm
Câu 1: Giải Thích và cho ví dụ minh hoa các khái niem sau:
Thread: (luồng ) là một tiến trình nhung khác với tiến trình truyền thống luồng là một tiến trình nhẹ hay nói cách khác luồng là một bộ phận của tiến trình truyền thống
Còn tiến trình truyền thống là một tiến trình nặng((HWP - Heavy Weight Process)
bên trong nó có nhiều luồng và một luồng chính
vd: Lớp TinI12A là một tiến trình nặng bên trong lớp tinI12a bao gồm nhiều sinh viên của lớp tinI12a ( là các luồng ) thầy dóng vai trò là luồng chính.
Còn tiến trình truyền thống là một tiến trình nặng((HWP - Heavy Weight Process)
bên trong nó có nhiều luồng và một luồng chính
vd: Lớp TinI12A là một tiến trình nặng bên trong lớp tinI12a bao gồm nhiều sinh viên của lớp tinI12a ( là các luồng ) thầy dóng vai trò là luồng chính.
BuiPhamAnBinh(I12A)- Tổng số bài gửi : 20
Join date : 16/02/2012
Age : 35
Re: Thi Kiểm tra Giữa kỳ Lần 2
Câu 1:
-Process: là tiến trình chạy dưới sự quản lý của HDH.
Vd: Các bạn sinh viên đang làm bài kiểm tra(tiến trình), dưới sự quản lý của thầy giáo(Hệ điều hành).
-Theard: là luồng, đơn vị cơ bản sử dụng CPU.
Vd: mỗi bạn học sinh trong lớp là mỗi luồng, thầy giáo là luồng chính.
-Process Pool:là 1 tập luồng luôn sẵn sàng chờ công việc
Vd: khi nộp bài kiểm tra trên lớp, mỗi bạn sinh viên(mỗi luồng trong 1 tập luồng) sẽ sẵn sàng lên nộp bài khi được thầy gọi tên(Process).
-Mutual Exclusion:là tính loại trừ lẫn nhau hay loại trừ tương hỗ, tức là tại mỗi thời điểm chỉ có 1 Process được phép truy cập và sử dụng tài nguyên.
Vd: viết 1 đơn xin việc, nếu có 2 người(process) cùng sửa 1 nội dung tại 1 thời điểm sẽ gây ra sai sót trong dơn xin việc đó.
Hoặc 1 ví dụ khác: khi thầy giáo gọi sinh viên lên bảng làm bài tập, tại 1 thời điểm chỉ có 1 bạn được phép lên làm, nếu có 2 bạn cùng lên làm bài 1 lúc thì sẽ dẫn sai sót.
-Semaphore: là đèn hiệu với 2 tác nguyên là Wait, Signal.
Vd: Tại ngã tư, khi gặp đèn đỏ, tất cả mọi người đều phải dừng lại(wait), sau khi nhận được tín hiệu của cảnh sát giao thông hay thông báo đèn xanh (Signal) thì mới được đi tiếp.
Mong thầy và các bạn góp ý!
-Process: là tiến trình chạy dưới sự quản lý của HDH.
Vd: Các bạn sinh viên đang làm bài kiểm tra(tiến trình), dưới sự quản lý của thầy giáo(Hệ điều hành).
-Theard: là luồng, đơn vị cơ bản sử dụng CPU.
Vd: mỗi bạn học sinh trong lớp là mỗi luồng, thầy giáo là luồng chính.
-Process Pool:là 1 tập luồng luôn sẵn sàng chờ công việc
Vd: khi nộp bài kiểm tra trên lớp, mỗi bạn sinh viên(mỗi luồng trong 1 tập luồng) sẽ sẵn sàng lên nộp bài khi được thầy gọi tên(Process).
-Mutual Exclusion:là tính loại trừ lẫn nhau hay loại trừ tương hỗ, tức là tại mỗi thời điểm chỉ có 1 Process được phép truy cập và sử dụng tài nguyên.
Vd: viết 1 đơn xin việc, nếu có 2 người(process) cùng sửa 1 nội dung tại 1 thời điểm sẽ gây ra sai sót trong dơn xin việc đó.
Hoặc 1 ví dụ khác: khi thầy giáo gọi sinh viên lên bảng làm bài tập, tại 1 thời điểm chỉ có 1 bạn được phép lên làm, nếu có 2 bạn cùng lên làm bài 1 lúc thì sẽ dẫn sai sót.
-Semaphore: là đèn hiệu với 2 tác nguyên là Wait, Signal.
Vd: Tại ngã tư, khi gặp đèn đỏ, tất cả mọi người đều phải dừng lại(wait), sau khi nhận được tín hiệu của cảnh sát giao thông hay thông báo đèn xanh (Signal) thì mới được đi tiếp.
Mong thầy và các bạn góp ý!
ngothihanHC11TH2A- Tổng số bài gửi : 23
Join date : 16/02/2012
Re: Thi Kiểm tra Giữa kỳ Lần 2
ngothihanHC11TH2A đã viết:Câu 1:
-Process: là tiến trình chạy dưới sự quản lý của HDH.
Vd: Các bạn sinh viên đang làm bài kiểm tra(tiến trình), dưới sự quản lý của thầy giáo(Hệ điều hành).
-Theard: là luồng, đơn vị cơ bản sử dụng CPU.
Vd: mỗi bạn học sinh trong lớp là mỗi luồng, thầy giáo là luồng chính.
-Process Pool:là 1 tập luồng luôn sẵn sàng chờ công việc
Vd: khi nộp bài kiểm tra trên lớp, mỗi bạn sinh viên(mỗi luồng trong 1 tập luồng) sẽ sẵn sàng lên nộp bài khi được thầy gọi tên(Process).
-Mutual Exclusion:là tính loại trừ lẫn nhau hay loại trừ tương hỗ, tức là tại mỗi thời điểm chỉ có 1 Process được phép truy cập và sử dụng tài nguyên.
Vd: viết 1 đơn xin việc, nếu có 2 người(process) cùng sửa 1 nội dung tại 1 thời điểm sẽ gây ra sai sót trong dơn xin việc đó.
Hoặc 1 ví dụ khác: khi thầy giáo gọi sinh viên lên bảng làm bài tập, tại 1 thời điểm chỉ có 1 bạn được phép lên làm, nếu có 2 bạn cùng lên làm bài 1 lúc thì sẽ dẫn sai sót.
-Semaphore: là đèn hiệu với 2 tác nguyên là Wait, Signal.
Vd: Tại ngã tư, khi gặp đèn đỏ, tất cả mọi người đều phải dừng lại(wait), sau khi nhận được tín hiệu của cảnh sát giao thông hay thông báo đèn xanh (Signal) thì mới được đi tiếp.
Mong thầy và các bạn góp ý!
Theo mình thì về ví dụ của Semaphore là:
Vd: xe qua cầu yếu, thì phải lập trình công việc để tại mỗi thời điểm chỉ có 1 xe được phép qua cầu. khi gặp tín hiệu đèn đỏ thì xe B phải chờ(Wait) cho xe A qua cầu trước sau đó có tín hiệu đèn xanh tức là Signal thì xe B mới được qua.
nguyenthanhphongHC11TH2A- Tổng số bài gửi : 26
Join date : 16/02/2012
Câu 3:
IntPtr hApp = FindWindow(null, "Speaking VN");
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", "");
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", "");
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3));
Giải:
IntPtr hApp = FindWindow(null, "Speaking VN"); //Tìm cửa sổ có tiêu đề là Speaking VN rồi gán cho biến hApp (cửa sổ chính của chương trình)
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", ""); //Tìm cửa sổ mở rộng của cửa sổ cha với lớp của cửa sổ là AfxFrameOrView42s và tiêu đề của sổ là ""
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", ""); // Tiếp tục tìm cửa sổ mở rộng của cửa sổ cha với lớp của cửa sổ là RICHEDIT và tiêu đề của cửa sổ là ""
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3)); // gửi đoạn văn bản strTCVN3 đã được chuyển sang kiểu Marshal đến cửa sổ RICHEDIT.
Bài này mình mới tham khảo của các bạn khóa trên nên Post lên đây để các bạn tham khảo chứ bữa thi mình làm không tốt như vậy.....hjxhjx
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", "");
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", "");
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3));
Giải:
IntPtr hApp = FindWindow(null, "Speaking VN"); //Tìm cửa sổ có tiêu đề là Speaking VN rồi gán cho biến hApp (cửa sổ chính của chương trình)
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", ""); //Tìm cửa sổ mở rộng của cửa sổ cha với lớp của cửa sổ là AfxFrameOrView42s và tiêu đề của sổ là ""
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", ""); // Tiếp tục tìm cửa sổ mở rộng của cửa sổ cha với lớp của cửa sổ là RICHEDIT và tiêu đề của cửa sổ là ""
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3)); // gửi đoạn văn bản strTCVN3 đã được chuyển sang kiểu Marshal đến cửa sổ RICHEDIT.
Bài này mình mới tham khảo của các bạn khóa trên nên Post lên đây để các bạn tham khảo chứ bữa thi mình làm không tốt như vậy.....hjxhjx
luthioanh-I12A- Tổng số bài gửi : 29
Join date : 17/02/2012
Age : 39
Re: Thi Kiểm tra Giữa kỳ Lần 2
luthioanh-I12A đã viết:IntPtr hApp = FindWindow(null, "Speaking VN");
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", "");
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", "");
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3));
Giải:
IntPtr hApp = FindWindow(null, "Speaking VN"); //Tìm cửa sổ có tiêu đề là Speaking VN rồi gán cho biến hApp (cửa sổ chính của chương trình)
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", ""); //Tìm cửa sổ mở rộng của cửa sổ cha với lớp của cửa sổ là AfxFrameOrView42s và tiêu đề của sổ là ""
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", ""); // Tiếp tục tìm cửa sổ mở rộng của cửa sổ cha với lớp của cửa sổ là RICHEDIT và tiêu đề của cửa sổ là ""
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3)); // gửi đoạn văn bản strTCVN3 đã được chuyển sang kiểu Marshal đến cửa sổ RICHEDIT.
Bài này mình mới tham khảo của các bạn khóa trên nên Post lên đây để các bạn tham khảo chứ bữa thi mình làm không tốt như vậy.....hjxhjx
Mình cũng chưa làm được bài này.
Cảm ơn bạn đã Post bài này lên
ngothihanHC11TH2A- Tổng số bài gửi : 23
Join date : 16/02/2012
Re: Thi Kiểm tra Giữa kỳ Lần 2
luthioanh-I12A đã viết:- Chức năng: gởi nhận thông điệp giữa các tiến trình
- Giao diện: có 4 textbox: gởi, nhận, địa chỉ máy tính cần kết nối, port kết nối. 1 nút gởi dữ liệu, khi nhận dữ liệu thì dữ liệu đó sẽ hiện lên trong textbox nhận, và có tooltipball hiện lên nội dung vừa nhận. khi muốn gởi thông điệp thì nhập nội dung vào ô gởi và nhấn nút gửi
cách mở ứng dụng: vào thư mục: ...\HeDieuHanh\Tu hoc\Lap trinh Da luong voi .NET\UDPClient C# .NET 2005 (Remote)\WindowsApplication1 mở file udpPeerClient.sln rồi dịch lại chương trình (F5 hoặc bấm nút mũi tên màu xanh).
chương trình sử dụng using System.Net.Sockets để lập trình cho giao tiếp sockets.
sử dụng lớp udpClient (cung cấp phương thức cho việc gởi và nhận thông điệp không có kết nối UDP) và lớp IPEndPoint (đối tượng sẽ cho phép chúng ta đọc datagrams gửi từ bất kỳ nguồn nào) của lớp net.sockets
udpClient.Send(sendBytes, sendBytes.Length, txtRemoteHost.Text, Convert.ToInt16(txtRemotePort.Text)); // dùng để gởi thông điêp đến cổng định sẵn
RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);// bị khóa cho đến khi có dữ liệu từ 1 địa chỉ bất kỳ gởi đến
SetText(returnData, RemoteIpEndPoint.Address.ToString()); // Dữ liệu nhận được và Địa chỉ IP nơi gửi
Mong thầy và các bạn góp ý thêm!
Cảm ơn bạn đã post bài!
Mình chỉ mới nói được về chức năng của UDP Client C#.NET 2005 thôi, không biết như vậy có điểm không nữa. hihi
nguyenthanhphongHC11TH2A- Tổng số bài gửi : 26
Join date : 16/02/2012
Ví dụ về tập luồng
Trong một siêu thị có nhiều quầy thu ngân, mỗi quầy như là 1 luồng, khi có khách hàng tính tiền thì một quầy sẽ chịu trách nhiệm về việc đó, Nếu số lượng khách hàng đông hơn số lượng quầy thu thì phải đợi cho đến khi một quầy nào đó tính tiền xong.
huynhtamhaoI12A- Tổng số bài gửi : 24
Join date : 17/02/2012
Age : 34
Re: Thi Kiểm tra Giữa kỳ Lần 2
IntPtr hApp = FindWindow(null, "Speaking VN");//Tìm cửa sổ mang tên "Speaking VN" đó là cửa sổ chạy chương trình vnvoice
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", "");//tìm frame chứa cửa sổ lưu đoạn văn bản cần đọc
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", "");//định vị vùng chứa đoạn văn bản cần đọc
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3));//gửi đoạn văn bản cần đọc đến vùng chứa đoạn văn bản cần đọc, để phần mềm vnvoice đọc thành tiếng việt phát ra loa
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", "");//tìm frame chứa cửa sổ lưu đoạn văn bản cần đọc
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", "");//định vị vùng chứa đoạn văn bản cần đọc
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3));//gửi đoạn văn bản cần đọc đến vùng chứa đoạn văn bản cần đọc, để phần mềm vnvoice đọc thành tiếng việt phát ra loa
TranThiMyKhanh(I12A)- Tổng số bài gửi : 24
Join date : 02/03/2012
Age : 34
Re: Thi Kiểm tra Giữa kỳ Lần 2
luthioanh-I12A đã viết:IntPtr hApp = FindWindow(null, "Speaking VN");
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", "");
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", "");
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3));
Giải:
IntPtr hApp = FindWindow(null, "Speaking VN"); //Tìm cửa sổ có tiêu đề là Speaking VN rồi gán cho biến hApp (cửa sổ chính của chương trình)
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", ""); //Tìm cửa sổ mở rộng của cửa sổ cha với lớp của cửa sổ là AfxFrameOrView42s và tiêu đề của sổ là ""
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", ""); // Tiếp tục tìm cửa sổ mở rộng của cửa sổ cha với lớp của cửa sổ là RICHEDIT và tiêu đề của cửa sổ là ""
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3)); // gửi đoạn văn bản strTCVN3 đã được chuyển sang kiểu Marshal đến cửa sổ RICHEDIT.
Bài này mình mới tham khảo của các bạn khóa trên nên Post lên đây để các bạn tham khảo chứ bữa thi mình làm không tốt như vậy.....hjxhjx
mình cũng chưa làm xong câu này.Hôm trước ngồi xa quá nên không nghe rõ thầy giảng. Cảm ơn bạn đã đóng góp.
nguyenthanhphongHC11TH2A- Tổng số bài gửi : 26
Join date : 16/02/2012
Re: Thi Kiểm tra Giữa kỳ Lần 2
Thread (luồng) còn gọi là tiến trình nhẹ, 1 đơn vị cơ bản sử dụng CPU, luồng cũng có thông tin trạng thái như của tiến trình.
Ví dụ: nếu có nhiều người dùng cùng chương trình, lập trình viên có thể viết ứng dụng sao cho ứng với mỗi người dùng sẽ có 1 luồng mới được tạo ra.
Ví dụ: nếu có nhiều người dùng cùng chương trình, lập trình viên có thể viết ứng dụng sao cho ứng với mỗi người dùng sẽ có 1 luồng mới được tạo ra.
NguyenTuanHai_I12A- Tổng số bài gửi : 14
Join date : 15/02/2012
Age : 34
Đến từ : Long An
Re: Thi Kiểm tra Giữa kỳ Lần 2
luthioanh-I12A đã viết:- Chức năng: gởi nhận thông điệp giữa các tiến trình
- Giao diện: có 4 textbox: gởi, nhận, địa chỉ máy tính cần kết nối, port kết nối. 1 nút gởi dữ liệu, khi nhận dữ liệu thì dữ liệu đó sẽ hiện lên trong textbox nhận, và có tooltipball hiện lên nội dung vừa nhận. khi muốn gởi thông điệp thì nhập nội dung vào ô gởi và nhấn nút gửi
cách mở ứng dụng: vào thư mục: ...\HeDieuHanh\Tu hoc\Lap trinh Da luong voi .NET\UDPClient C# .NET 2005 (Remote)\WindowsApplication1 mở file udpPeerClient.sln rồi dịch lại chương trình (F5 hoặc bấm nút mũi tên màu xanh).
chương trình sử dụng using System.Net.Sockets để lập trình cho giao tiếp sockets.
sử dụng lớp udpClient (cung cấp phương thức cho việc gởi và nhận thông điệp không có kết nối UDP) và lớp IPEndPoint (đối tượng sẽ cho phép chúng ta đọc datagrams gửi từ bất kỳ nguồn nào) của lớp net.sockets
udpClient.Send(sendBytes, sendBytes.Length, txtRemoteHost.Text, Convert.ToInt16(txtRemotePort.Text)); // dùng để gởi thông điêp đến cổng định sẵn
RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);// bị khóa cho đến khi có dữ liệu từ 1 địa chỉ bất kỳ gởi đến
SetText(returnData, RemoteIpEndPoint.Address.ToString()); // Dữ liệu nhận được và Địa chỉ IP nơi gửi
Mong thầy và các bạn góp ý thêm!
mình chỉ làm được phần chức năng của UDP client C#.NET 2005 là gửi và nhận thông điệp giữa các tiến trình. Không biết như vậy có đúng không? Bạn nào hiểu rõ thì giải thích thêm cho mọi người với nhé! Thanks !
nguyenthanhphongHC11TH2A- Tổng số bài gửi : 26
Join date : 16/02/2012
Re: Thi Kiểm tra Giữa kỳ Lần 2
Còn mình cho ví dụ như sau: Trong 1 rạp chiếu phim có nhiều nhân viên bán vé, mỗi nhân viên được xem như là 1 luồng, khi khách hàng lại mua vé thì 1 nhân viên sẽ phục vụ việc bán vé cho khách hàng đó, khi số lượng khách hàng nhiều hơn số lượng nhân viên thì phải đợi cho đến khi bán vé xong cho 1 khách hàng rồi mới tới khách hàng tiếp theo.huynhtamhaoI12A đã viết:Trong một siêu thị có nhiều quầy thu ngân, mỗi quầy như là 1 luồng, khi có khách hàng tính tiền thì một quầy sẽ chịu trách nhiệm về việc đó, Nếu số lượng khách hàng đông hơn số lượng quầy thu thì phải đợi cho đến khi một quầy nào đó tính tiền xong.
TranThiMyKhanh(I12A)- Tổng số bài gửi : 24
Join date : 02/03/2012
Age : 34
bổ sung câu 3
dòng 1: tìm cửa sổ có tên "Speaking VN"
dòng 2: tìm frame chứa cửa sổ có đoạn văn bản cần phát ra
dòng 3: tìm vị trí của vùng chứa đoạn văn bản phát ra
dòng 4: gửi đoạn văn bản cần phát ra đến vùng chứa đoạn văn bản, sau đó sẽ phát ra loa bằng chương trình vnvoice
dòng 2: tìm frame chứa cửa sổ có đoạn văn bản cần phát ra
dòng 3: tìm vị trí của vùng chứa đoạn văn bản phát ra
dòng 4: gửi đoạn văn bản cần phát ra đến vùng chứa đoạn văn bản, sau đó sẽ phát ra loa bằng chương trình vnvoice
NguyenAnhTan15 (I12C)- Tổng số bài gửi : 17
Join date : 16/02/2012
bổ sung Câu 3
IntPtr hApp = FindWindow(null, "Speaking VN");
/* tìm những chương trình đang chạy có chương trình nào có tên "Speaking VN" hay không? Nếu có thì trả về giá trị Mục quản của cửa sổ tìm được cho biến hApp còn không thì trả về NULL */
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", "");
/* với chương trình vừa tìm được thì tiếp tục tìm kiếm mở rộng trong chương trình đó có frame nào tên là “AfxFrameOrView42s” hay không? Nếu có thì trả Mục quản của nó về cho biến hFrame còn nếu không thì trả về NULL */
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", "");
/*với frame vừa tìm được thì tiếp tục lại tìm kiếm mở rộng trong đó có đối tượng nào tên là “RICHEDIT” hay không? Nếu có thì trả Mục quản của nó về cho biến hFrame còn nếu không thì trả về NULL*/
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3));
/* Gửi đoạn văn bản chứa bởi strTCVN3 tới đối tượng RICHEDIT của chương trình "Speaking VN" */
Admin
Đơn giản-Rõ ràng-Thuyết phục !
/* tìm những chương trình đang chạy có chương trình nào có tên "Speaking VN" hay không? Nếu có thì trả về giá trị Mục quản của cửa sổ tìm được cho biến hApp còn không thì trả về NULL */
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", "");
/* với chương trình vừa tìm được thì tiếp tục tìm kiếm mở rộng trong chương trình đó có frame nào tên là “AfxFrameOrView42s” hay không? Nếu có thì trả Mục quản của nó về cho biến hFrame còn nếu không thì trả về NULL */
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", "");
/*với frame vừa tìm được thì tiếp tục lại tìm kiếm mở rộng trong đó có đối tượng nào tên là “RICHEDIT” hay không? Nếu có thì trả Mục quản của nó về cho biến hFrame còn nếu không thì trả về NULL*/
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3));
/* Gửi đoạn văn bản chứa bởi strTCVN3 tới đối tượng RICHEDIT của chương trình "Speaking VN" */
Admin
Đơn giản-Rõ ràng-Thuyết phục !
nguyenthaihiep (I11C)- Tổng số bài gửi : 34
Join date : 31/08/2011
Trả lời bài kiểm tra
Ví dụ về tập luồng, một phòng học có nhiều cửa, nếu cửa này bị nghẽn do có quá nhiều sinh viên chen vào thì các sinh viên đến sau có thể chọn một cửa khác để vào phòng học.
TRANTHUYOANH_10H1010066- Tổng số bài gửi : 8
Join date : 23/02/2012
hay wa !
TranThiMyKhanh(I12A) đã viết:IntPtr hApp = FindWindow(null, "Speaking VN");//Tìm cửa sổ mang tên "Speaking VN" đó là cửa sổ chạy chương trình vnvoice
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", "");//tìm frame chứa cửa sổ lưu đoạn văn bản cần đọc
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", "");//định vị vùng chứa đoạn văn bản cần đọc
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3));//gửi đoạn văn bản cần đọc đến vùng chứa đoạn văn bản cần đọc, để phần mềm vnvoice đọc thành tiếng việt phát ra loa
ThuyDuong23 (I12A)- Tổng số bài gửi : 35
Join date : 17/02/2012
Age : 34
Đến từ : DakLak
Re: Thi Kiểm tra Giữa kỳ Lần 2
Semaphore: là đèn hiệu với giá trị 0 là đèn đỏ, và 1 là đèn xanh. Có đèn hiệu các tiến trình sẽ chạy có thứ tự hơn và tránh tình trạn hỗn loạn.Đó là cách hiểu của mình!nguyenthanhphongHC11TH2A đã viết:ngothihanHC11TH2A đã viết:Câu 1:
-Process: là tiến trình chạy dưới sự quản lý của HDH.
Vd: Các bạn sinh viên đang làm bài kiểm tra(tiến trình), dưới sự quản lý của thầy giáo(Hệ điều hành).
-Theard: là luồng, đơn vị cơ bản sử dụng CPU.
Vd: mỗi bạn học sinh trong lớp là mỗi luồng, thầy giáo là luồng chính.
-Process Pool:là 1 tập luồng luôn sẵn sàng chờ công việc
Vd: khi nộp bài kiểm tra trên lớp, mỗi bạn sinh viên(mỗi luồng trong 1 tập luồng) sẽ sẵn sàng lên nộp bài khi được thầy gọi tên(Process).
-Mutual Exclusion:là tính loại trừ lẫn nhau hay loại trừ tương hỗ, tức là tại mỗi thời điểm chỉ có 1 Process được phép truy cập và sử dụng tài nguyên.
Vd: viết 1 đơn xin việc, nếu có 2 người(process) cùng sửa 1 nội dung tại 1 thời điểm sẽ gây ra sai sót trong dơn xin việc đó.
Hoặc 1 ví dụ khác: khi thầy giáo gọi sinh viên lên bảng làm bài tập, tại 1 thời điểm chỉ có 1 bạn được phép lên làm, nếu có 2 bạn cùng lên làm bài 1 lúc thì sẽ dẫn sai sót.
-Semaphore: là đèn hiệu với 2 tác nguyên là Wait, Signal.
Vd: Tại ngã tư, khi gặp đèn đỏ, tất cả mọi người đều phải dừng lại(wait), sau khi nhận được tín hiệu của cảnh sát giao thông hay thông báo đèn xanh (Signal) thì mới được đi tiếp.
Mong thầy và các bạn góp ý!
Theo mình thì về ví dụ của Semaphore là:
Vd: xe qua cầu yếu, thì phải lập trình công việc để tại mỗi thời điểm chỉ có 1 xe được phép qua cầu. khi gặp tín hiệu đèn đỏ thì xe B phải chờ(Wait) cho xe A qua cầu trước sau đó có tín hiệu đèn xanh tức là Signal thì xe B mới được qua.
phamduyI12A- Tổng số bài gửi : 20
Join date : 19/02/2012
Age : 34
Đến từ : TPHCM
cảm ơn bạn đã post lời giải của câu 2 trong đề kiểm, mình thấy câu trả lời của bạn rất hay
luthioanh-I12A đã viết:- Chức năng: gởi nhận thông điệp giữa các tiến trình
- Giao diện: có 4 textbox: gởi, nhận, địa chỉ máy tính cần kết nối, port kết nối. 1 nút gởi dữ liệu, khi nhận dữ liệu thì dữ liệu đó sẽ hiện lên trong textbox nhận, và có tooltipball hiện lên nội dung vừa nhận. khi muốn gởi thông điệp thì nhập nội dung vào ô gởi và nhấn nút gửi
cách mở ứng dụng: vào thư mục: ...\HeDieuHanh\Tu hoc\Lap trinh Da luong voi .NET\UDPClient C# .NET 2005 (Remote)\WindowsApplication1 mở file udpPeerClient.sln rồi dịch lại chương trình (F5 hoặc bấm nút mũi tên màu xanh).
chương trình sử dụng using System.Net.Sockets để lập trình cho giao tiếp sockets.
sử dụng lớp udpClient (cung cấp phương thức cho việc gởi và nhận thông điệp không có kết nối UDP) và lớp IPEndPoint (đối tượng sẽ cho phép chúng ta đọc datagrams gửi từ bất kỳ nguồn nào) của lớp net.sockets
udpClient.Send(sendBytes, sendBytes.Length, txtRemoteHost.Text, Convert.ToInt16(txtRemotePort.Text)); // dùng để gởi thông điêp đến cổng định sẵn
RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);// bị khóa cho đến khi có dữ liệu từ 1 địa chỉ bất kỳ gởi đến
SetText(returnData, RemoteIpEndPoint.Address.ToString()); // Dữ liệu nhận được và Địa chỉ IP nơi gửi
Mong thầy và các bạn góp ý thêm!
lamtienkhoa(102c)- Tổng số bài gửi : 43
Join date : 28/02/2011
Re: Thi Kiểm tra Giữa kỳ Lần 2
mình thấy bạn chỉ cần trình bày chức năng và giao diện của ứng dụng UDPClient C#.NET 2005 là được rồi, còn phần giải thích code ,mở chương trình thế nào thì hơi dư,vì đề chỉ yêu cầu giới thiệu chức năng và giao diện của ứng dụng thôi màluthioanh-I12A đã viết:- Chức năng: gởi nhận thông điệp giữa các tiến trình
- Giao diện: có 4 textbox: gởi, nhận, địa chỉ máy tính cần kết nối, port kết nối. 1 nút gởi dữ liệu, khi nhận dữ liệu thì dữ liệu đó sẽ hiện lên trong textbox nhận, và có tooltipball hiện lên nội dung vừa nhận. khi muốn gởi thông điệp thì nhập nội dung vào ô gởi và nhấn nút gửi
cách mở ứng dụng: vào thư mục: ...\HeDieuHanh\Tu hoc\Lap trinh Da luong voi .NET\UDPClient C# .NET 2005 (Remote)\WindowsApplication1 mở file udpPeerClient.sln rồi dịch lại chương trình (F5 hoặc bấm nút mũi tên màu xanh).
chương trình sử dụng using System.Net.Sockets để lập trình cho giao tiếp sockets.
sử dụng lớp udpClient (cung cấp phương thức cho việc gởi và nhận thông điệp không có kết nối UDP) và lớp IPEndPoint (đối tượng sẽ cho phép chúng ta đọc datagrams gửi từ bất kỳ nguồn nào) của lớp net.sockets
udpClient.Send(sendBytes, sendBytes.Length, txtRemoteHost.Text, Convert.ToInt16(txtRemotePort.Text)); // dùng để gởi thông điêp đến cổng định sẵn
RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);// bị khóa cho đến khi có dữ liệu từ 1 địa chỉ bất kỳ gởi đến
SetText(returnData, RemoteIpEndPoint.Address.ToString()); // Dữ liệu nhận được và Địa chỉ IP nơi gửi
Mong thầy và các bạn góp ý thêm!
Admin
- Góp ý đúng !
- Sau khi trình bày Chức năng và Giao diện, còn thời gian mới đề cập đến mã, mà không cần cụ thể thế đâu, vì sao mà nhớ chính xác được !
PhamDucPhuong(I12A)- Tổng số bài gửi : 17
Join date : 19/02/2012
Re: Thi Kiểm tra Giữa kỳ Lần 2
Bài giải của bạn đơn giản, ngắn gọn thật.nguyenthaihiep (I11C) đã viết:IntPtr hApp = FindWindow(null, "Speaking VN");
/* tìm những chương trình đang chạy có chương trình nào có tên "Speaking VN" hay không? Nếu có thì trả về giá trị Mục quản của cửa sổ tìm được cho biến hApp còn không thì trả về NULL */
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", "");
/* với chương trình vừa tìm được thì tiếp tục tìm kiếm mở rộng trong chương trình đó có frame nào tên là “AfxFrameOrView42s” hay không? Nếu có thì trả Mục quản của nó về cho biến hFrame còn nếu không thì trả về NULL */
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", "");
/*với frame vừa tìm được thì tiếp tục lại tìm kiếm mở rộng trong đó có đối tượng nào tên là “RICHEDIT” hay không? Nếu có thì trả Mục quản của nó về cho biến hFrame còn nếu không thì trả về NULL*/
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3));
/* Gửi đoạn văn bản chứa bởi strTCVN3 tới đối tượng RICHEDIT của chương trình "Speaking VN" */
Admin
Đơn giản-Rõ ràng-Thuyết phục !
Mình làm chỉ tìm trong windown với chương trình có tên: "Speaking VN" còn không có trả về giá trị Null,....
Mình không nói rõ mục quản giống như bạn
post
ban co the cho them 1 vi du minh hoa
lamtienkhoa(102c) đã viết:luthioanh-I12A đã viết:- Chức năng: gởi nhận thông điệp giữa các tiến trình
- Giao diện: có 4 textbox: gởi, nhận, địa chỉ máy tính cần kết nối, port kết nối. 1 nút gởi dữ liệu, khi nhận dữ liệu thì dữ liệu đó sẽ hiện lên trong textbox nhận, và có tooltipball hiện lên nội dung vừa nhận. khi muốn gởi thông điệp thì nhập nội dung vào ô gởi và nhấn nút gửi
cách mở ứng dụng: vào thư mục: ...\HeDieuHanh\Tu hoc\Lap trinh Da luong voi .NET\UDPClient C# .NET 2005 (Remote)\WindowsApplication1 mở file udpPeerClient.sln rồi dịch lại chương trình (F5 hoặc bấm nút mũi tên màu xanh).
chương trình sử dụng using System.Net.Sockets để lập trình cho giao tiếp sockets.
sử dụng lớp udpClient (cung cấp phương thức cho việc gởi và nhận thông điệp không có kết nối UDP) và lớp IPEndPoint (đối tượng sẽ cho phép chúng ta đọc datagrams gửi từ bất kỳ nguồn nào) của lớp net.sockets
udpClient.Send(sendBytes, sendBytes.Length, txtRemoteHost.Text, Convert.ToInt16(txtRemotePort.Text)); // dùng để gởi thông điêp đến cổng định sẵn
RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);// bị khóa cho đến khi có dữ liệu từ 1 địa chỉ bất kỳ gởi đến
SetText(returnData, RemoteIpEndPoint.Address.ToString()); // Dữ liệu nhận được và Địa chỉ IP nơi gửi
Mong thầy và các bạn góp ý thêm!
lequanghanh(102c)- Tổng số bài gửi : 61
Join date : 18/02/2011
Age : 38
Đến từ : Phương Đông - Trà Đông - Bắc Trà My - Quảng Nam
Đóng góp đề thi giữa kì Lần II
Đề thi giữa kì lần này có nội dung cũng tương đối khó ; khó ở câu 3. câu 1 và câu 2 có thể làm theo sự hiểu biết + với chú ý nghe bài giảng các câu ví dụ thực tế của thầy đã nói trên lớp là làm cũng được kha khá. Mong rằng đề thi học phần sắp tới thầy sẽ cho nội dung thi sát với bài ôn.để Mở cho chung em được Một con đường bước tiếp đến chân trời Mới. " Đại Học Mở Muôn Năm"
Trân trọng cám ơn thầy !!!
Admin
- Câu 3 đã được giảng kỹ trên lớp và có mục riêng thảo luận trên Diễn đàn.
- Tự hào về trường của mình là đúng !
Trân trọng cám ơn thầy !!!
Admin
- Câu 3 đã được giảng kỹ trên lớp và có mục riêng thảo luận trên Diễn đàn.
- Tự hào về trường của mình là đúng !
huynhvanhung(I12A)- Tổng số bài gửi : 43
Join date : 17/02/2012
Age : 36
Đến từ : TP.HCM
Trang 1 trong tổng số 2 trang • 1, 2
Similar topics
» Thi Kiểm tra Giữa kỳ Lần 3
» Thi Kiểm tra Giữa kỳ
» Thi Kiểm tra Giữa kỳ Lần 1+
» Thi kiểm tra giữa kỳ lần 3
» Làm Bài Thi Kiểm Tra Giữa Kỳ Lần 3
» Thi Kiểm tra Giữa kỳ
» Thi Kiểm tra Giữa kỳ Lần 1+
» Thi kiểm tra giữa kỳ lần 3
» Làm Bài Thi Kiểm Tra Giữa Kỳ Lần 3
Trang 1 trong tổng số 2 trang
Permissions in this forum:
Bạn không có quyền trả lời bài viết