Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 18 kết quả

Đề tài: Xuất âm thanh khi bắt đầu chương trình C#

  1. #1
    Ngày gia nhập
    01 2007
    Bài viết
    412

    Smile Xuất âm thanh khi bắt đầu chương trình C#

    Cứ mỗi lần mở Windows lên, tức thì có âm thanh chào mừng đưa ta vào 1 phiên làm việc (căng thẳng). Dựa trên sự việc này, mình nghĩ là phải làm 1 cách nào đó để phát ra âm thanh khi mở 1 ứng dụng. Ngồi mày mò + tham khảo trên mạng, mình đã tìm ra cách làm này, nay post lên xin chia sẻ cùng anh em đang học c#
    - Bước 1: tạo project dạng Windows Forms
    - Bước 2: Double click chuột vào thanh tiêu đề (tittle bar) của Form để bắt đầu thụ lý tình huống Load của nó.
    Visual C# Code:
    1.         private void Form1_Load(object sender, EventArgs e)
    2.         {
    3.             // khởi tạo đối tượng sp, tham chiếu đến đường dẫn C:\WINDOWS\MEDIA nơi có chứa file wav
    4.             // bộ khởi tạo này chỉ thao tác với file wav
    5.             // nếu không tồn tại tập tin wav, sẽ báo lỗi!
    6.             System.Media.SoundPlayer sp = new System.Media.SoundPlayer(@"C:\WINDOWS\MEDIA\Windows XP Startup.wav");
    7.             // cho phát âm thanh từ file wav đã được tham chiếu tới
    8.             sp.Play(); //lưu ý: sp.PlayLooping() --> chơi liên tục, lặp lại á
    9.         }
    Xong, bây giờ bạn nhớ vặn loa lên nhé, sau đó nhấn F5 để nghe được âm thanh chào mừng khi mình đăng nhập Windows XP
    Thế là chỉ với 1 thủ thuật nhỏ, chúng ta đã có 1 lời chào mừng không gì tuyệt hơn cho ứng dụng của mình.
    Chúc các bạn thành công!

  2. #2
    Ngày gia nhập
    12 2007
    Bài viết
    7

    mình đã làm thử nhưng không được .Nó báo lỗi The type or namespace name 'Media' does not exist in the class or namespace 'System' (are you missing an assembly reference?)
    Nghèo mà có T... thì cao quý hơn

  3. #3
    Ngày gia nhập
    10 2006
    Nơi ở
    In Your Bugs
    Bài viết
    823

    Cái này đã được kiểm chứng rồi, Cậu coi lại thử nào ?
    Thử test với :

    using namespace system.media
    soundplayer t = new soundplayer();

  4. #4
    Ngày gia nhập
    11 2007
    Bài viết
    17

    Cho Mình hỏi chút ha , nếu mình muốn file sound đó luôn chạy cùng chương trình thì mình phải làm sao ?
    + Nếu mình add file sound đó vào Resx của chương trình thì mình gọi như thế nào ?

  5. #5
    Ngày gia nhập
    11 2008
    Bài viết
    77

    làm sao để cho chạy được MP3 hoặc wma được vậy bạn
    thanks nhiều

  6. #6
    Ngày gia nhập
    10 2006
    Nơi ở
    In Your Bugs
    Bài viết
    823

    Mặc định Xuất âm thanh khi bắt đầu chương trình C#

    Mình đang ở tiệm nên không code giúp bạn được, đây là hướng dẫn trong MFC từ codeproject bạn đọc thử nhé :
    Help Text Code:
    1. 1) Resource->New->NewType
    2. 2) Type in "ID_SOUND" or "ID_WAVE".
    3. 3) If you type yes for creating a resource id make
    4. sure you have access to that symbol. For now
    5. press No.
    6. 4) Resource->New and choose "SOUND" resource type.
    7. This will bring up a text editor. Edit the text to
    8. look similar to the syntax mentioned in the
    9. section above.
    10.  
    11. NOTE: Wave files usually takes a lot of memory which means you might have very large resource files.
    12. Now, let us examine how to access the wave file and play it
    13. from the application. The following code can be used to load
    14. and play the resource.
    15.  
    16. LPCSTR sound;   // A pointer to the binary wave file.hResource = LoadResource( hInst,FindResource( hInst,MAKEINTRESOURCE(ID_SOUND),"SOUND" ) );sound = ( LPCSTR )LockResource( hResource );sndPlaySound( sound, SND_MEMORY );UnlockResource( hResource );FreeResource( hResource );
    17. In the code above our resource type is "SOUND" and the resource
    18. identifier ID_SOUND. We first use FindResource API function to
    19. find the resource. This function returns a handle to the
    20. resource. This handle is passed to the LoadResource which
    21. returns a handle to a copy of the resource in memory. The
    22. LockResource is next used to get a pointer to the resource. Once
    23. a pointer is available, the latter can be used in a call to the
    24. sndPlaySound() function. The second parameter, SND_MEMORY, is
    25. used to denote that the first parameter is a pointer an in memory
    26. copy of the wave file.
    27.  
    28. You have to include mmsystem.h header and link to winmm.lib library


    @ File MP3 và vAM cũng có hướng dẫn rồi đó bạn, search với key name của Zcoder.

  7. #7
    Ngày gia nhập
    04 2009
    Bài viết
    8

    xuất âm thanh thì có nhiều cách:

    hoặc từ tập tin trên đĩa, hoặc từ resource của c#(ở đây chỉ chấp nhận file wav pcm, bạn có thể dùng xilisoft để chuyển sang wav)

    mình nêu ví dụ trong 2 trường hợp trên như sau:
    Visual C# Code:
    1.         //am thanh
    2.         static public SoundPlayer mediaSoundPlayer = new SoundPlayer();
    3.         //(1)static public string amthanh = @"C:\WINDOWS\Media\EXITPROG.wav";
    4.         private void amthanh()
    5.         {
    6.             //(2) sau khi đã đưa vào resource thì dùng lệnh sau để nạp nó vào
    7.             mediaSoundPlayer.Stream = Properties.Resources.ResourceManager.GetStream("EXITPROG");
    8.             //Còn dùng như sau nếu từ file trên đĩa            
    9.             //(1) mediaSoundPlayer.SoundLocation = amthanh ;
    10.            
    11.             mediaSoundPlayer.Play();
    12.            //mediaSoundPlayer.Stop();
    13.         }

    Ngoài ra muốn dùng bất kỳ định dạng nào thì cách thứ ba như sau:

    -đưa đối tượng Mediaplayer vào form, rồi ẩn hiện tùy bạn.
    - tiếp theo làm tương tự code sau( bạn có thể chuyển sang switch)

    Visual C# Code:
    1.                 if (File.Exists(duongdan + bai + ".mp3"))
    2.                     axWindowsMediaPlayer1.URL = (duongdan + bai + ".mp3");
    3.                 else if (File.Exists(duongdan + bai + ".ram"))
    4.                     axWindowsMediaPlayer1.URL = (duongdan + bai + ".ram");
    5.                 else if (File.Exists(duongdan + bai + ".wav"))
    6.                     axWindowsMediaPlayer1.URL = (duongdan + bai + ".wav");
    7.                 else if (File.Exists(duongdan + bai + ".avi"))
    8.                     axWindowsMediaPlayer1.URL = (duongdan + bai + ".avi");
    9.                 else if (File.Exists(duongdan + bai + ".mpeg"))
    10.                     axWindowsMediaPlayer1.URL = (duongdan + bai + ".mpeg");
    11.                 else if (File.Exists(duongdan + bai + ".wmv"))
    12.                     axWindowsMediaPlayer1.URL = (duongdan + bai + ".wmv");
    13.                 else if (File.Exists(duongdan + bai + ".mid"))
    14.                     axWindowsMediaPlayer1.URL = (duongdan + bai + ".mid");
    15.                 else if (File.Exists(duongdan + bai + ".asf"))
    16.                     axWindowsMediaPlayer1.URL = (duongdan + bai + ".asf");
    17.                 else if (File.Exists(duongdan + bai + ".au"))
    18.                     axWindowsMediaPlayer1.URL = (duongdan + bai + ".au");
    19.                 else vv...

    Tương tự cho các file flash luôn.

  8. #8
    Ngày gia nhập
    04 2009
    Nơi ở
    Hà Nội
    Bài viết
    733

    Hay đó! Thế còn cho âm thanh tắt hay mở bằng nút lệng on/off thì sao? các bác làm chưa??

  9. #9
    Ngày gia nhập
    10 2007
    Bài viết
    11

    Cài này hay đây. Bác nào có thể chỉ rõ cách đưa MP3 vào Form được không? Và có cả nút on/off nữa. Thank nhiều!

  10. #10
    Ngày gia nhập
    04 2009
    Nơi ở
    Gầm cầu
    Bài viết
    2,230

    Trích dẫn Nguyên bản được gửi bởi snake_programmer Xem bài viết
    Hay đó! Thế còn cho âm thanh tắt hay mở bằng nút lệng on/off thì sao? các bác làm chưa??
    dùng COM , gì cũng có

Các đề tài tương tự

  1. Thay đổi chiều rộng của datagridview khi xuất hiện thanh cuộn
    Gửi bởi dotritiep trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 07-10-2011, 04:52 PM
  2. Làm cách nào khi thu nhỏ kích thước của form thì sẽ xuất hiện 2 thanh cuộn
    Gửi bởi henxui_nobita_00 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 11
    Bài viết cuối: 21-04-2011, 12:00 PM
  3. Đọc âm thanh từ mic >>> xuất ra loa vằng VC++?
    Gửi bởi Joker trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 12
    Bài viết cuối: 10-01-2011, 09:26 PM
  4. xuất âm thanh trong c++
    Gửi bởi trungtin trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 5
    Bài viết cuối: 17-02-2008, 06:01 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn