public static string OpenSelectFile([In] string defExt)
    {
        ZOpenFileName ofn = new ZOpenFileName();

        ofn.structSize   = Marshal.SizeOf(ofn);
        ofn.filter       = defExt;
        ofn.file         = new string(new char[256]);
        ofn.maxFile      = ofn.file.Length;
        ofn.fileTitle    = new string(new char[64]);
        ofn.maxFileTitle = ofn.fileTitle.Length;
        ofn.initialDir   = UnityEngine.Application.dataPath;//默认路径
        ofn.title        = "Select File";
        ofn.defExt       = defExt;
        //注意 一下项目不一定要全选 但是0x00000008项不要缺少
        ofn.flags = 0x00080000 | 0x00001000 | 0x00000800 | 0x00000200 | 0x00000008;//OFN_EXPLORER|OFN_FILEMUSTEXIST|OFN_PATHMUSTEXIST| OFN_ALLOWMULTISELECT|OFN_NOCHANGEDIR
        if (GetOpenFileName(ofn))
        {
            return(ofn.file);
        }
        return(string.Empty);
    }
 public static extern bool GetOpenFileName([In, Out] ZOpenFileName ofn);