战魂小筑

讨论群:309800774 知乎关注:http://zhihu.com/people/sunicdavy 开源项目:https://github.com/davyxu

   :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  257 随笔 :: 0 文章 :: 506 评论 :: 0 Trackbacks

如果你用过GetOpenFileName中的OPENFILENAME的lpstrFilter参数,你会发现很无语

Pointer to a buffer containing pairs of null-terminated filter strings. The last string in the buffer must be terminated by two NULL characters.

看似没问题,但是在使用中却弊病很多:

1. 像脚本这类以0结尾,默认就根本不能传字符串给这个函数进行filter的配置

2. 即便lua这类函数提供了lstring的支持,但也极为麻烦,需要在buffer后添加一个\0

3. 调试器里只能看到第一个\0结尾的字符串

 

真不知道这是MS哪个脑残写的API,为什么不定制下filter,或者干脆用别的方式来传递。。。

posted on 2009-07-21 14:19 战魂小筑 阅读(905) 评论(1)  编辑 收藏 引用 所属分类: 脚本技术

评论

# re: 对GetOpenFileName函数很无语 2009-07-21 17:00 陈梓瀚(vczh)
那你可以提供一个纯C的iterator或者叫enumerator接口试试看……  回复  更多评论
  


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理