regsetup.py 文件源码

python
阅读 22 收藏 0 点赞 0 评论 0

项目:CodeReader 作者: jasonrbr 项目源码 文件源码
def LocateFileName(fileNamesString, searchPaths):
    """Locate a file name, anywhere on the search path.

       If the file can not be located, prompt the user to find it for us
       (using a common OpenFile dialog)

       Raises KeyboardInterrupt if the user cancels.
    """
    import regutil, string, os
    fileNames = fileNamesString.split(";")
    for path in searchPaths:
        for fileName in fileNames:
            try:
                retPath = os.path.join(path, fileName)
                os.stat(retPath)
                break
            except os.error:
                retPath = None
        if retPath:
            break
    else:
        fileName = fileNames[0]
        try:
            import win32ui, win32con
        except ImportError:
            raise error("Need to locate the file %s, but the win32ui module is not available\nPlease run the program again, passing as a parameter the path to this file." % fileName)
        # Display a common dialog to locate the file.
        flags=win32con.OFN_FILEMUSTEXIST
        ext = os.path.splitext(fileName)[1]
        filter = "Files of requested type (*%s)|*%s||" % (ext,ext)
        dlg = win32ui.CreateFileDialog(1,None,fileName,flags,filter,None)
        dlg.SetOFNTitle("Locate " + fileName)
        if dlg.DoModal() != win32con.IDOK:
            raise KeyboardInterrupt("User cancelled the process")
        retPath = dlg.GetPathName()
    return os.path.abspath(retPath)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号