Từ 1 tới 9 trên tổng số 9 kết quả

Đề tài: Làm thế nào play nhạc từ resource của project trong C#

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

    Mặc định Làm thế nào play nhạc từ resource của project trong C#

    Các bạn ơi cho mình hỏi tí:
    Mình có 1 project, mình add file nhạc, ảnh, icon vào project. Nếu sử dụng ảnh hay icon thì chỉ việc add đường dẫn dễ dàng nhờ control nó hỗ trở thao tác kéo thả. Những với file nhạc(.wav) thì ko có hỗ trợ vẫn đề này. (không phải cách để file nhạc ở ngoài nha các bạn, để trong project để khi xuất ra file .exe thì kèm theo luôn dung lượng lớn theo file resource)

    SoundPlayer sp = new SoundPlayer();
    sp.SoundLocation = ????

    Mong các bạn chỉ giúp ??

  2. #2
    Ngày gia nhập
    03 2009
    Bài viết
    149

    copy vô debug là ok
    Sharing for success!

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

    Trùi ui. Ý mình là ko để file nhạc ở ngoài khi chạy chương trình. Để khi xuất ra file .exe thì chỉ cần chạy 1 file duy nhất là có thể run đc chương trình không cần phải kèm theo các file nhạc trong cùng 1 thư mục hay 1 đường dẫn ở nào đó.

  4. #4
    Ngày gia nhập
    09 2006
    Nơi ở
    /usr/share/.hack@
    Bài viết
    1,433

    cho user input file location
    rồi chạy
    None!

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

    Vào Project Properties --> Resources --> Add File như hình bên dưới để kèm file nhạc vào resources.



    Còn để bung file từ resource ra lại thì có một đoạn code tương tự xem ở đây (cuối bài, block code đầu):
    http://rongchaua.net/blog/c-how-to-e...f-an-assembly/

  6. #6
    Ngày gia nhập
    12 2008
    Bài viết
    198

    Mặc định Làm thế nào play nhạc từ resource của project trong C#

    Mình cũng không thấy C# có FIle .rc nhỉ,vậy muốn Add thêm dữ liệu vào File .rc thì làm thế nào,như bạn ấy cần nói ấy,muốn add thêm 1 bản nhạc vào File rc để khi nào muốn nghe là xuất ra để nghe rồi lại xóa đi

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

    Trong .Net, .rc chuyển thành .resources. Còn cách làm thì đã nêu ở bài viết trên.

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

    Trích dẫn Nguyên bản được gửi bởi Xcross87 Xem bài viết
    cho user input file location
    rồi chạy
    Ý mình là kèm file .wav vào file .exe lun..

    Trích dẫn Nguyên bản được gửi bởi rongchaua Xem bài viết
    Vào Project Properties --> Resources --> Add File như hình bên dưới để kèm file nhạc vào resources.



    Còn để bung file từ resource ra lại thì có một đoạn code tương tự xem ở đây (cuối bài, block code đầu):
    http://rongchaua.net/blog/c-how-to-e...f-an-assembly/
    English mình không tốt bạn ơi hic hic.

    Để mình mô tả chi tiết hơn: Mình mún tạo nhạc nền cho 1 game, thay gì để source nhạc ở ngoài trong cùng 1 thư mục chứa file .exe (hay định vị ở đâu đó trong máy hay internet) mình mún attach nó vào resource để khi xuất ra file .exe duy nhất vẫn có nhạc nền.

    P/s: tiện cho mình hỏi thêm khi ct chạy nhạc nền chạy, nhưng khi gặp 1 sự kiện (phát ra 1 âm thanh khác) thì tự nhiện nhạc nền tắt lun.

  9. #9
    Ngày gia nhập
    03 2008
    Bài viết
    36

    Bạn có thể extract resource ra với hàm sau:
    PHP Code:
    //======================================================
            //Recreate all executable resources
            //======================================================
            
    private void mRecreateAllExecutableResources() {
                
    // Get Current Assembly refrence
                
    Assembly currentAssembly Assembly.GetExecutingAssembly();
                
    // Get all imbedded resources
                
    string[] arrResources currentAssembly.GetManifestResourceNames();

                foreach (
    string resourceName in arrResources) {
                    if (
    resourceName.EndsWith(".exe")) { //or other extension desired
                        //Name of the file saved on disk
                        
    string saveAsName resourceName;
                        
    FileInfo fileInfoOutputFile = new FileInfo(saveAsName);
                       
    //CHECK IF FILE EXISTS AND DO SOMETHING DEPENDING ON YOUR NEEDS
                        
    if (fileInfoOutputFile.Exists) {
                            
    //overwrite if desired  (depending on your needs)
                            //fileInfoOutputFile.Delete();
                        
    }
                        
    //OPEN NEWLY CREATING FILE FOR WRITTING
                        
    FileStream streamToOutputFile fileInfoOutputFile.OpenWrite();
                        
    //GET THE STREAM TO THE RESOURCES
                        
    Stream streamToResourceFile =
                                            
    currentAssembly.GetManifestResourceStream(resourceName);

                        
    //---------------------------------
                        //SAVE TO DISK OPERATION
                        //---------------------------------
                        
    const int size 4096;
                        
    byte[] bytes = new byte[4096];
                        
    int numBytes;
                        while ((
    numBytes streamToResourceFile.Read(bytes0size)) > 0) {
                            
    streamToOutputFile.Write(bytes0numBytes);
                        }

                        
    streamToOutputFile.Close();
                        
    streamToResourceFile.Close();
                    }
    //end_if

                
    }//end_foreach
            
    }//end_mRecreateAllExecutableResources 
    Tham khảo ở đây:
    Code:
    http://www.cs.nyu.edu/~vs667/articles/embed_executable_tutorial/

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

  1. Sử dụng ảnh trong Resource như thế nào?
    Gửi bởi nganthuvinhbiet trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 26-09-2012, 11:05 PM
  2. Algorithm Set Interval cho timer sau 5s play một đoạn nhạc như thế nào?
    Gửi bởi datinh_o0o7 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 10
    Bài viết cuối: 13-04-2012, 12:08 AM
  3. play nhạc bằng ax windows media trong Visual C# như thế nào?
    Gửi bởi pur trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 10-01-2011, 09:40 AM
  4. Cách copy file resource của project này sang project khác?
    Gửi bởi chuong01 trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 4
    Bài viết cuối: 28-10-2010, 05:42 PM
  5. how to play sound wav from resource in C#
    Gửi bởi zstar trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 6
    Bài viết cuối: 10-10-2009, 06:04 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