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

Đề tài: Lấ́y File Path ở menu Open with của Windows??

  1. #1
    Ngày gia nhập
    10 2007
    Nơi ở
    Huế
    Bài viết
    11

    Mặc định Lấ́y File Path ở menu Open with của Windows??

    Mình viết 1 ứng dụng đọc 1 loại file do chương trình qui định, và mình muốn khi click phải lên file này, chọn (open with) và trỏ đến chương trình mình vừa xây dựng, vấn đề là làm sao có thể lấy được path của file này cho chương trình mình có thể đọc file ??
    Nó giống như việc mình mở file Text bằng NotePad vậy
    Mong được chỉ giáo !!!!
    [COLOR="RoyalBlue"]Mẹ đời cho ta ngã để dạy ta nên người[/COLOR]

    My blog: [URL="http://mucdongblog.wordpress.com"]http://mucdongblog.wordpress.com[/URL]

  2. #2
    Ngày gia nhập
    01 2008
    Nơi ở
    Gameloft Studio
    Bài viết
    294

    Khi bạn openwith như vậy thì hệ điều hành sẽ kiểm tra trong registry xem ứng dụng nào sẽ được gọi và send cho chương trình đó tham số của file.

    Như vậy cái path mà bạn đang cần nó nằm trong hàm ở main(argv[] )

    Nếu mình ko nhầm thì là argv[1] chính là path.

  3. #3
    Ngày gia nhập
    11 2007
    Nơi ở
    Biết để làm gì?
    Bài viết
    827

    Đăng ký trong regedit.
    You'll need to create a key under HKEY_CLASSES_ROOT with the name set to your file extension (eg: ".txt"). Set the default value of this key to a unique name for your file type, such as "Acme.TextFile". Then create another key under HKEY_CLASSES_ROOT with the name set to "Acme.TextFile". Add a subkey called "DefaultIcon" and set the default value of the key to the file containing the icon you wish to use for this file type. Add another sibling called "shell". Under the "shell" key, add a key for each action you wish to have available via the Explorer context menu, setting the default value for each key to the path to your executable followed by a space and "%1" to represent the path to the file selected.
    For instance, here's a sample registry file to create an association between .txt files and EmEditor:
    PHP Code:
    [HKEY_CLASSES_ROOT\.txt]
    @=
    "emeditor.txt"

    [HKEY_CLASSES_ROOT\emeditor.txt]
    @=
    "Text Document"

    [HKEY_CLASSES_ROOT\emeditor.txt\DefaultIcon]
    @=
    "%SystemRoot%\\SysWow64\\imageres.dll,-102"

    [HKEY_CLASSES_ROOT\emeditor.txt\shell]

    [
    HKEY_CLASSES_ROOT\emeditor.txt\shell\open]

    [
    HKEY_CLASSES_ROOT\emeditor.txt\shell\open\command]
    @=
    "\"C:\\Program Files\\EmEditor\\EMEDITOR.EXE\" \"%1\""

    [HKEY_CLASSES_ROOT\emeditor.txt\shell\print]

    [
    HKEY_CLASSES_ROOT\emeditor.txt\shell\print\command]
    @=
    "\"C:\\Program Files\\EmEditor\\EMEDITOR.EXE\" /p \"%1\"" 
    Cánh Chym ứ mỏi

  4. #4
    Ngày gia nhập
    10 2007
    Nơi ở
    Huế
    Bài viết
    11

    OK, cảm ơn các bạn, mình đã giải quyết được vấn đề

    string[] args = Environment.GetCommandLineArgs();

    args[0] là đường dẫn file ứng dụng của mình, [1][2] ... là các tham số
    [COLOR="RoyalBlue"]Mẹ đời cho ta ngã để dạy ta nên người[/COLOR]

    My blog: [URL="http://mucdongblog.wordpress.com"]http://mucdongblog.wordpress.com[/URL]

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

  1. Không đọc được file ini khi path có ký tự unicode
    Gửi bởi hungdlbk trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 4
    Bài viết cuối: 25-08-2012, 11:06 AM
  2. Tách file name khỏi path và đọc ghi file theo dòng trong MFC như thế nào?
    Gửi bởi Athrun trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 3
    Bài viết cuối: 14-12-2011, 12:34 PM
  3. Lấy Path của thư mục Application trong Windows?
    Gửi bởi Click8A4 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 5
    Bài viết cuối: 15-05-2011, 03:01 PM
  4. Làm sao để open file bằng cách double click vào file trong windows explorer?
    Gửi bởi Batchuoc_09 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 11
    Bài viết cuối: 18-07-2010, 01:12 PM
  5. Lỗi access to the Path is denied trong Windows 7?
    Gửi bởi so0_lanhlung trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 9
    Bài viết cuối: 25-04-2010, 10:20 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