2009-09-28 39 views
6

Ứng dụng của tôi cần tiếng bíp khi xác nhận không thành công để người dùng (có thể cách xa vài feet) có thể nghe thấy. Tôi muốn sử dụng số Console.Beep() nhưng đây là unavailable in a x64 environment (see the remarks). Có thể hoặc không thể là loa trong/tại máy tính, vì vậy tôi không thể sử dụng System.Media.SystemSounds.Beep.Play()..Net WinForm System Beep trên hệ điều hành 64 bit

Nền tảng đích hiện tại là môi trường x86, nhưng tôi cũng muốn có khả năng chạy ứng dụng trong x64.

Có cách nào để thực hiện việc này hay tôi nên từ bỏ?

Chỉnh sửa: Đã thêm liên kết vào phương thức.

+0

thể vui lòng cho, tại sao Console.Beep() sẽ không hoạt động trên x64 môi trường? –

Trả lời

7

Beep has been removed làm chức năng gốc từ tất cả nền tảng x64 (vì vậy không có phiên bản được quản lý nào), there is a connect phát hành bản kiến ​​nghị trả lại.

Chúng tôi sử dụng một thủ thuật khác nhau để khám phá máy chủ, chúng tôi từ xa eject ổ đĩa dvd, và ổ đĩa với khay mở là một đang tìm kiếm :)

[EDIT]
Larry Osterman có bài viết tuyệt vời về điều này: What's up with the beep driver in Windows 7

+0

Vì vậy, không có cách nào để buộc một Beep trong một nền tảng x64? – Stevoni

+1

trông giống như nó, có thể có một trình điều khiển bíp bên thứ 3 ra khỏi đó nhưng tôi không thể tìm thấy một. –

0

Phát một trong các âm thanh của cửa sổ chuẩn có thể là cách tiếp cận tốt hơn. Bài viết sau đây cho thấy cách (nó chỉ mất một vài dòng):

http://msdn.microsoft.com/en-us/library/4y171b18(VS.100).aspx

Nếu bạn muốn ở lại trong chủ đề, bạn có thể kiểm tra các cửa sổ đăng ký cho chương trình âm thanh hiện tại, và phát âm thanh thích hợp để phù hợp với nhu cầu của bạn.

+0

Tôi không biết liệu máy sẽ được sử dụng sẽ có loa hay không bị tắt tiếng (như máy của tôi), nếu không điều này sẽ phù hợp. – Stevoni

+0

Xuất phát từ góc độ người dùng, nếu tôi không có tùy chọn tắt âm thanh ứng dụng gây phiền nhiễu, tôi sẽ khá thất vọng. Tôi sẽ gọi có tùy chọn một tiền thưởng HUGE cho người dùng. Đó là một ý tưởng tồi để thử và kiểm soát những gì người dùng nghe và những gì bật lên trên màn hình người dùng. Microsoft đã dành nhiều năm tinh chỉnh những khả năng đó để cung cấp cho người dùng quyền kiểm soát tối đa những điều gây phiền nhiễu như thế. – jrista

+1

Đây là yêu cầu từ người dùng. Họ phàn nàn rằng họ không thể nghe thấy khi có lỗi trong phiên bản trước. Bây giờ tôi đã được giao nhiệm vụ cập nhật, tôi cần phải đáp ứng các vấn đề đó. – Stevoni

0

Bạn có thể sử dụng Console.Beep() phương pháp mô tả ở đây: https://msdn.microsoft.com/en-us/library/8hftfeyw(v=vs.110).aspx

Hãy chắc chắn rằng bạn chạy file thực thi như một quản trị viên (đặc quyền leo thang)

+0

Hãy để tôi trích dẫn OP: * "Tôi muốn sử dụng Console.Beep() nhưng đây là __unavailable__ trong môi trường x64 (xem nhận xét)" *. Lần sau đọc câu hỏi trước. – Axalo

+0

http://i.imgur.com/Sse3LxD.png Điều này có đủ điều kiện làm hệ điều hành x64 không? Làm thế nào về bạn thử phương pháp gợi ý của tôi trước khi giả sử tôi đã không đọc câu hỏi đầu tiên. Cấp cho tôi không chạy Vista hoặc XP nhưng .Beep() đang chạy trên hệ điều hành x64. – FatherlyNick

Các vấn đề liên quan