代码之家  ›  专栏  ›  技术社区  ›  twk Mark Adler

确定已注册的延期申请

  •  2
  • twk Mark Adler  · 技术社区  · 17 年前

    我有一个文件扩展名,我想得到应用程序的名称(如果有的话),当我执行这种类型的文件时,它将被调用。这是一个WTL/C++应用程序。有没有这样的示例代码?

    谢谢!

    4 回复  |  直到 17 年前
        1
  •  3
  •   Robert Harvey    17 年前

    泰克,


    http://msdn.microsoft.com/en-us/library/bb773473(VS.85).aspx

    指定要返回的字符串类型的ASSOCSTR值:

    typedef enum {
        ASSOCSTR_COMMAND = 1,
        ASSOCSTR_EXECUTABLE,
        ASSOCSTR_FRIENDLYDOCNAME,
        ASSOCSTR_FRIENDLYAPPNAME,
        ASSOCSTR_NOOPEN,
        ASSOCSTR_SHELLNEWVALUE,
        ASSOCSTR_DDECOMMAND,
        ASSOCSTR_DDEIFEXEC,
        ASSOCSTR_DDEAPPLICATION,
        ASSOCSTR_DDETOPIC,
        ASSOCSTR_INFOTIP,
        ASSOCSTR_QUICKTIP,
        ASSOCSTR_TILEINFO,
        ASSOCSTR_CONTENTTYPE,
        ASSOCSTR_DEFAULTICON,
        ASSOCSTR_SHELLEXTENSION,
        ASSOCSTR_DROPTARGET,
        ASSOCSTR_DELEGATEEXECUTE,
        ASSOCSTR_MAX
    } ASSOCSTR;
    

    我猜你想要一个朋友的名字。

        2
  •  2
  •   LPL user462990    14 年前
    DWORD dwSize = 255;
    TCHAR sBuffer[MAX_PATH] = {0};
    HRESULT hr = AssocQueryString(0, ASSOCSTR_EXECUTABLE, _T(".htm"), _T("Open"), sBuffer, &dwSize);
    CString csExt;
    csExt.Format(_T("%s"), sBuffer);
    AfxMessageBox(csExt);
    
        4
  •  0
  •   novel novel    17 年前

    这是一个自1995年以来的Win32常见问题解答(Shell,请参阅googlegroups,Win32)