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

Đề tài: Làm sao để soft của mình tự nhận được kiểu file.

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

    Mặc định Làm sao để soft của mình tự nhận được kiểu file.

    Trước hết tôi muốn xin lỗi về cái topic name hơi khó hiểu. Vấn đề là tôi có làm một cái trình soạn thảo văn bản đơn giản kiểu WordPad. Tôi muốn là khi click 1 file text và chọn Open With = soft của tôi thì nó có thể hiểu và hiển thị ra được (chứ không phải bật soft lên rồi Open file đó) . Các bạn có thể giúp tôi vấn đề này đc không?
    Xin cám ơn đã quan tâm.

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

    Trích dẫn Nguyên bản được gửi bởi martinx Xem bài viết
    Trước hết tôi muốn xin lỗi về cái topic name hơi khó hiểu. Vấn đề là tôi có làm một cái trình soạn thảo văn bản đơn giản kiểu WordPad. Tôi muốn là khi click 1 file text và chọn Open With = soft của tôi thì nó có thể hiểu và hiển thị ra được (chứ không phải bật soft lên rồi Open file đó) . Các bạn có thể giúp tôi vấn đề này đc không?
    Xin cám ơn đã quan tâm.
    Tiêu đề một đằng, bài viết hỏi một nẻo......bó tay

    Trả lời: câu hỏi của bạn trả lời luôn rồi còn gì -_-;;
    None!

  3. #3
    Ngày gia nhập
    09 2008
    Nơi ở
    Ở nhà chứ đâu... nhìn cái gì?!?!
    Bài viết
    218

    ý bạn ấy là double click vào file do soft bạn ấy tạo ra thì OS sẽ tự mở soft của bạn ấy và load file đó. Chứ kô cần phải mở soft rùi chọn menu Open... gì gì đó rùi mới mở file. (Giống double click vào file *.doc thì MS Word tự mở và load file *.doc đó).

    Theo mình thì cái này liên quan đến registry. Ban thử nghiên cứu xem.

    Cheer!

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

    Cám ơn các bạn. Ý câu hỏi của mình đúng như bạn Cáo nói đó.
    Mình sẽ thử tìm hiểu về cái registry xem.

  5. #5
    Ngày gia nhập
    09 2008
    Nơi ở
    Ở nhà chứ đâu... nhìn cái gì?!?!
    Bài viết
    218

    Chào bạn martin, cũng lâu rồi nhỉ, mình vừa tìm được một cách nhưng app dụng cho soft của mình vẫn chưa được. Nếu bạn đã tìm hiểu được rồi thì vào trao đổi với mình nhé. Sau đây là cách của mình:

    Do tool mà mình viết có chứa năng ghi ra file, cho nên mình đã làm cho file xuất ra này cũng có một Icon tương ứng với ý muốn của mình như sau:

    phải có sử dụng thư viện:

    Visual C# Code:
    1. using Microsoft.Win32

    Đăng ký registry cho file của mình

    Visual C# Code:
    1. public static void RegisterAppMsgFile()
    2.         {
    3.             RegistryKey key;
    4.  
    5. // Dòng 1*
    6.             string subkey = @"ApplicationMessage.File\shell\open\command";
    7.  
    8.             using (key = Registry.ClassesRoot.CreateSubKey(subkey))
    9.             {
    10.                 key.SetValue(null, System.Windows.Forms.Application.ExecutablePath);
    11.             }
    12.  
    13. // Dòng 2*
    14.             subkey = @"ApplicationMessage.File\DefaultIcon";
    15.  
    16.             using (key = Registry.ClassesRoot.CreateSubKey(subkey))
    17.             {
    18.                 key.SetValue(null, System.Windows.Forms.Application.ExecutablePath);
    19.             }
    20.  
    21.             subkey = ".amf";
    22.  
    23.             using (key = Registry.ClassesRoot.CreateSubKey(subkey))
    24.             {
    25.                 key.SetValue(null, "ApplicationMessage.File");
    26.             }
    27.         }

    Dòng 1*: Bạn vào Start->Run->gõ regedit rồi Enter -> Cửa sổ Regístry sẽ mở ra. Bạn hảy Ctrl+F rùi gõ thữ xmlfile để tìm kiếm thì nó sẽ hiện ra hình như vậy:



    Bạn chú ý thư mục shell/open/command thôi. Nó có một Register key cho file XML dùng để khi double click vào một file *.xml bất kỳ nó sẽ tự mở = IE (theo đường dẫn ở cột Data).

    Tương tự như vậy bạn cũng đăng kí như Dòng 1* để có thể open file của bạn chỉ với 1 cú double-click.

    Tiếc là mình làm chưa được đối với tool của mình

    Dòng 2*: Thư mục DefaultIcon trên hình dùng để lưu một file Icon cho chính file của bạn. Do đó nếu bạn muốn file của mình có Icon thế nào thì chỉ việc cho đường dẫn tới Icon đó thôi. Ở đây do tool của mình (file *.exe) đã đc chính mình cho nó một Icon rùi nên mình chỉ việc cho đường dẫn tới thư mục Application.ExecutablePath = Bin\Debug để lấy chính Icon của file *.exe lun.

    Code cho Program.cs

    Visual C# Code:
    1. private static void Main(string[] args)
    2.         {
    3.             if (Registry.ClassesRoot.OpenSubKey(".amf", false) == null)
    4.                 //Gọi hàm RegisterAppMsgFile();
    5.  
    6.             if (args.Length < 1)
    7.             {
    8.                 Application.EnableVisualStyles();
    9.                 Application.SetCompatibleTextRenderingDefault(false);
    10.                 Application.Run(new mainForm());
    11.             }
    12.             else if (args[0] == "-register")
    13.                 FileShellExtension.RegisterAppMsgFile();
    14.             ....
    15.         }

    Sau khi build và chạy, bạn xem hình để bít kết quả.



    Chúc bạn có thể thực hiện được nhé

    Cheer
    Đã được chỉnh sửa lần cuối bởi OWickedFox : 22-11-2008 lúc 11:49 PM. Lý do: chưa đầy đủ nội dung cần viết

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

    Mặc định Làm sao để soft của mình tự nhận được kiểu file.

    tôi đã tìm ra cách làm như vậy rồi, và rất là ok.
    Nếu như có thể bạn hãy liên hệ với tôi qua nick yahoo: dang_viet_anh_hp
    chúng ta sẽ cùng thảo luận

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

    Cách làm của bạn là gì vậy. Xin hãy chia sẻ với mọi người. Mình cũng đang cần
    mà ko biết search trên mạng ra sao nữa.
    Keep It Simple, Stupid

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

    mình có làm qua cái này và chạy rất ổn.bạn thử làm theo cách này xem sao?
    Visual C# Code:
    1. RegistryKey rkApp = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\FileExts", true);
    2.                 rkApp.CreateSubKey(".min");
    3.                 RegistryKey rkApp1 = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\FileExts\\.min", true);
    4.                 rkApp1.CreateSubKey("OpenWithList");
    5.                 RegistryKey rkApp2 = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\FileExts\\.min\\OpenWithList", true);
    6.                 rkApp2.SetValue("a", Application.ExecutablePath.ToString().Substring(Application.ExecutablePath.ToString().LastIndexOf("\\") + 1, Application.ExecutablePath.ToString().Length - Application.ExecutablePath.ToString().LastIndexOf("\\") - 1));
    bạn paste cái đoạn code này trong Form load sau lần chạy đầu tiên thì những file .min khi double click vào nó sẽ mở trương trình với đường dẫn mình thiết lập trong form load. bên trên đó.
    những gì bạn cần thay đổi chính là phần mở rộng của file (bài này của tôi là .min)
    good luck

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

  1. Soft nghe nhạc và quản lý playlist C# (Từ trang mp3.zing.vn)
    Gửi bởi vkprofessional trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 11
    Bài viết cuối: 27-03-2013, 03:41 PM
  2. Trả lời: 0
    Bài viết cuối: 29-04-2012, 08:22 PM
  3. cần gấp người ***** soft có thưởng hậu hĩnh
    Gửi bởi thinhlv.vhc trong diễn đàn Việc làm IT(tự do)
    Trả lời: 29
    Bài viết cuối: 13-05-2011, 01:41 PM
  4. Ghost Windows XPSP3 update 27/12/2010 + Full Soft + Tự nhận Driver + Ổn định.......
    Gửi bởi digiman87 trong diễn đàn Software (Phần mềm) | Ebooks
    Trả lời: 0
    Bài viết cuối: 14-02-2011, 01:12 AM
  5. làm sao để lấy đc path của file hay folder đã chọn lúc soft bắt đầu mở
    Gửi bởi fellpassion trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 11
    Bài viết cuối: 13-10-2009, 11:49 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