コード例 #1
0
def get_version_number(filename):
    info = GetFileVersionInfo(filename, "\\")
    ms = info['FileVersionMS']
    ls = info['FileVersionLS']
    return '.'.join(map(str, [HIWORD(ms), LOWORD(ms), HIWORD(ls), LOWORD(ls)]))
コード例 #2
0
def _get_version_number(filename):
    info = GetFileVersionInfo(filename, "\\")
    ms = info['FileVersionMS']
    ls = info['FileVersionLS']
    return (HIWORD(ms), LOWORD(ms), HIWORD(ls), LOWORD(ls))
コード例 #3
0
ファイル: testy_v1.py プロジェクト: Xallal/ZJPG
        shutil.copytree(os.path.join(a, item), os.path.join(karmel, item),
                        symlinks, ignore)
    else:
        shutil.copy2(os.path.join(a, item), os.path.join(karmel, item))
i = 0

shutil.copy(ciastko1, karmel)
shutil.copy(ciastko2, karmel)
shutil.copy(ciastko3, karmel)

for root, dirs, files in os.walk(a):
    for filename in files:
        czekolada.append(filename)

for file in czekolada:
    c = GetFileVersionInfo(os.path.join(ciastko, file), "\\")
    d = GetFileVersionInfo(os.path.join(karmel, file), "\\")

    if c != d:
        i = i + 1

c = GetFileVersionInfo(ciastko1, "\\")
d = GetFileVersionInfo(karmel1, "\\")
if c != d:
    i = i + 1
c = GetFileVersionInfo(ciastko2, "\\")
d = GetFileVersionInfo(karmel2, "\\")
if c != d:
    i = i + 1
c = GetFileVersionInfo(ciastko3, "\\")
d = GetFileVersionInfo(karmel3, "\\")
コード例 #4
0
ファイル: __main__.py プロジェクト: tamada007/digicon
                optImportForTrace = True
            elif o == "-E":
                optImportForText = True
            elif o == "-G":
                json_label_file = v
                get_label = True
            elif o == '-v':
                # print "version: " + VERSION
                info = None
                paths = os.path.split(sys.argv[0])
                exe_name = os.path.join(common.get_current_directory(),
                                        paths[1])
                if not exe_name.lower().endswith(".exe"):
                    exe_name += ".exe"
                try:
                    info = GetFileVersionInfo(exe_name, "\\")
                except:
                    pass

                if info:
                    ms = info['ProductVersionMS']
                    ls = info['ProductVersionLS']
                    print "Version: {0}.{1}.{2}.{3} ".format(
                        HIWORD(ms), LOWORD(ms), HIWORD(ls), LOWORD(ls))
                else:
                    print "unknown version"

                print "Shanghai Teraoka Co,. Ltd"
                sys.exit(0)
            else:
                sys.exit(1)
コード例 #5
0
ファイル: ibslib.py プロジェクト: radtek/HsnIntegration
def getVersionNumber (filename):
  info = GetFileVersionInfo (filename, "\\")
  ms = info['FileVersionMS']
  ls = info['FileVersionLS']
  return str(HIWORD (ms)) + "." + str(LOWORD (ms)) + "." + str(HIWORD (ls)) + "." + str(LOWORD (ls))
コード例 #6
0
def get_version_number(filename):
    info = GetFileVersionInfo (filename, "\\")
    ms = info['FileVersionMS']
    ls = info['FileVersionLS']
    return ("%d.%02d.%02d.%02d" % (ms / 65536, ms % 65536, ls / 65536, ls % 65536), "%d.%02d" % (ms / 65536, ms % 65536))
コード例 #7
0
ファイル: show_ver.py プロジェクト: jasonivey/scripts
def PrintFileVersionInfo(name):
    if not os.path.exists(name):
        return

    print('VERSIONINFO for file "{0}": '.format(os.path.abspath(name)))
    versionStrings = (
        'Comments',
        'InternalName',
        'ProductName',
        'CompanyName',
        'LegalCopyright',
        'ProductVersion',
        'FileDescription',
        'LegalTrademarks',
        'PrivateBuild',
        'FileVersion',
        'OriginalFilename',
        'SpecialBuild',
    )

    try:
        info = GetFileVersionInfo(name, "\\")
    except:
        print(
            'ERROR ({0}): Unable to call GetFileVersionInfo because no version information exists.'
            .format(GetLastError()))
        sys.exit(0)

    PrintStr('Signature', '{0}'.format(ToHex(info['Signature'])))
    PrintStr(
        'StrucVersion', '{0:d}.{1:d}'.format(HIWORD(info['StrucVersion']),
                                             LOWORD(info['StrucVersion'])))
    PrintStr(
        'FileVersion',
        '{0:d}.{1:d}.{2:d}.{3:d}'.format(HIWORD(info['FileVersionMS']),
                                         LOWORD(info['FileVersionMS']),
                                         HIWORD(info['FileVersionLS']),
                                         LOWORD(info['FileVersionLS'])))
    PrintStr(
        'ProductVersion',
        '{0:d}.{1:d}.{2:d}.{3:d}'.format(HIWORD(info['ProductVersionMS']),
                                         LOWORD(info['ProductVersionMS']),
                                         HIWORD(info['ProductVersionLS']),
                                         LOWORD(info['ProductVersionLS'])))
    if info['FileFlagsMask'] != 0:
        PrintStr('FileFlagsMask', '{0:#x}'.format(info['FileFlagsMask']))
    else:
        PrintStr('FileFlagsMask', '{0:#x}'.format(info['FileFlagsMask']))
    if info['FileFlags'] != 0:
        PrintStr(
            'FileFlags',
            '{0:#04x} ({1})'.format(info['FileFlags'],
                                    showFileFlags(info['FileFlags'])))
    else:
        PrintStr('FileFlags', '{0:#04x}'.format(info['FileFlags']))
    PrintStr('FileOS', '{0}'.format(showFileOS(info['FileOS'])))
    PrintStr(
        'FileType',
        '{0}{1}'.format(showFileType(info['FileType']),
                        showFileSubtype(info['FileType'],
                                        info['FileSubtype'])))
    if info['FileDate']:
        PrintStr('FileDate', '{0:x}'.format(info['FileDate']))
    else:
        PrintStr('FileDate', 'Not Specified')

    pairs = GetFileVersionInfo(name, r'\VarFileInfo\Translation')
    for lang, codepage in pairs:
        #print 'lang: ', lang, 'codepage:', codepage
        for versionString in versionStrings:
            block = r'\StringFileInfo\{0:04X}{1:04X}\{2}'.format(
                lang, codepage, versionString)
            #print block
            try:
                info = GetFileVersionInfo(name, block)
            except:
                continue
            PrintStr(versionString, info)
    print('\n')
コード例 #8
0
def get_pe_version(path):
    info = GetFileVersionInfo(path, "\\")
    ms = info['FileVersionMS']
    ls = info['FileVersionLS']
    return '{}.{}.{}.{}'.format(HIWORD(ms), LOWORD(ms), HIWORD(ls), LOWORD(ls))
コード例 #9
0
def bind(path, version_range=None, opts=None, parser=None):
    if platform_.name != 'windows':
        raise EnvironmentError('Only binds on windows at the moment')

    # find executable, determine version
    if opts and opts.root:
        bin_path = opts.root
    else:
        installed_versions = []
        autodesk_root = r'C:\Program Files\Autodesk'
        for app_folder in os.listdir(autodesk_root):
            if app_folder.startswith('Mudbox'):
                installed_versions.append(
                    (app_folder,
                     Version(app_folder.replace('Mudbox', '').strip())))
        if len(installed_versions) < 1:
            raise EnvironmentError(
                'Unable to find any installed version of Mudbox under "{}"'.
                format(autodesk_root))

        app_folder, version = sorted(installed_versions,
                                     key=lambda v: v[1])[-1]

        bin_path = os.path.join(autodesk_root, app_folder)

    from win32api import GetFileVersionInfo, LOWORD, HIWORD
    try:
        info = GetFileVersionInfo(os.path.join(bin_path, 'mudbox.exe'), "\\")
        ms = info['FileVersionMS']
        ls = info['FileVersionLS']
        version = Version('{}.{}.{}.{}'.format(HIWORD(ms), LOWORD(ms),
                                               HIWORD(ls), LOWORD(ls)))
    except:
        raise EnvironmentError('Unknown version')

    check_version(version, version_range)

    def make_root(resources_path, variant, path):
        import shutil
        shutil.copy(os.path.join(resources_path, 'mudbox_icon.png'),
                    os.path.join(path, 'mudbox_icon.png'))

    make_root_partial = functools.partial(
        make_root,
        resource_filename(Requirement.parse('rez'), "rez/bind/resources"))

    with make_package("mudbox", path, make_root=make_root_partial) as pkg:
        pkg.version = version
        pkg.tools = ["mudbox"]
        pkg.description = 'Scupting application'
        pkg.authors = ['Autodesk']
        pkg.requires = ['roaming_user']
        pkg.nice_name = 'Mudbox'

        pkg.tools_info = {
            'mudbox': {
                'command': ['mudbox'],
                'nice_name': 'Mudbox',
                'priority': 89,
                'icon': '{root}/mudbox_icon.png',
                'launch_in_prompt': False
            }
        }
        pkg.commands = win_commands(bin_path)
        pkg.variants = [system.variant]

    return "mudbox", version
コード例 #10
0
def bind(path, version_range=None, opts=None, parser=None):
    if platform_.name != 'windows':
        raise EnvironmentError('Only binds on windows at the moment')

    # # find executable, determine version
    # if opts and opts.root:
    #     root_path = opts.root
    #     try:
    #         info = GetFileVersionInfo(os.path.join(root_path, 'bin', 'deadlinecommand.exe'), "\\")
    #         ms = info['FileVersionMS']
    #         ls = info['FileVersionLS']
    #         version = Version('{}.{}.{}.{}'.format(HIWORD(ms), LOWORD(ms), HIWORD(ls), LOWORD(ls)))
    #     except:
    #         raise EnvironmentError('Unknown version')
    # else:
    installed_versions = []
    thinkbox_root = r'C:\Program Files\Thinkbox'
    app_folder_prefix = 'Deadline7'  # previous value was 'Deadline' with no number
    for app_folder in os.listdir(thinkbox_root):
        if app_folder.startswith(app_folder_prefix):
            app_exe = os.path.join(thinkbox_root, app_folder, 'bin',
                                   'deadlinecommand.exe')
            if os.path.exists(app_exe):
                try:
                    info = GetFileVersionInfo(app_exe, "\\")
                    ms = info['FileVersionMS']
                    ls = info['FileVersionLS']
                    version = Version('{}.{}.{}.{}'.format(
                        HIWORD(ms), LOWORD(ms), HIWORD(ls), LOWORD(ls)))
                except:
                    raise EnvironmentError('Unknown version')
                installed_versions.append((app_folder, version))

    if len(installed_versions) < 1:
        raise EnvironmentError(
            'Unable to find any installed version of Deadline under "{}"'.
            format(thinkbox_root))

    app_folder, version = sorted(installed_versions, key=lambda v: v[1])[-1]

    root_path = os.path.join(thinkbox_root, app_folder, 'bin')

    check_version(version, version_range)

    def make_root(resources_path, variant, path):
        import shutil
        shutil.copy(os.path.join(resources_path, 'deadline_monitor_icon.png'),
                    os.path.join(path, 'deadline_monitor_icon.png'))

    make_root_partial = functools.partial(
        make_root,
        resource_filename(Requirement.parse('rez'), "rez/bind/resources"))

    with make_package("deadline", path, make_root=make_root_partial) as pkg:
        pkg.version = version
        pkg.tools = ["monitor"]
        pkg.description = 'Render Manager'
        pkg.authors = ['Thinkbox']
        pkg.requires = []
        pkg.nice_name = 'Deadline'

        pkg.tools_info = {
            'monitor': {
                'command': ['deadlinemonitor.exe'],
                'nice_name': 'Monitor',
                'priority': 89,
                'icon': '{root}/deadline_monitor_icon.png',
                'launch_in_prompt': False
            }
        }
        pkg.commands = win_commands(root_path, version.major)
        pkg.variants = [system.variant]

    return "deadline", version
コード例 #11
0
def bind(path, version_range=None, opts=None, parser=None):
    if platform_.name != 'windows':
        raise EnvironmentError('Only binds on windows at the moment')

    # find executable, determine version
    if opts and opts.root:
        bin_path = opts.root
        try:
            info = GetFileVersionInfo(
                os.path.join(bin_path, 'Support Files', 'AfterFX.exe'), "\\")
            ms = info['FileVersionMS']
            ls = info['FileVersionLS']
            version = Version('{}.{}.{}.{}'.format(HIWORD(ms), LOWORD(ms),
                                                   HIWORD(ls), LOWORD(ls)))
        except:
            raise EnvironmentError('Unknown version')
    else:
        installed_versions = []
        adobe_root = r'C:\Program Files\Adobe'
        app_folder_prefix = 'Adobe After Effects'
        for app_folder in os.listdir(adobe_root):
            if app_folder.startswith(app_folder_prefix):
                app_exe = os.path.join(adobe_root, app_folder, 'Support Files',
                                       'AfterFX.exe')
                if os.path.exists(app_exe):
                    try:
                        info = GetFileVersionInfo(app_exe, "\\")
                        ms = info['FileVersionMS']
                        ls = info['FileVersionLS']
                        version = Version('{}.{}.{}.{}'.format(
                            HIWORD(ms), LOWORD(ms), HIWORD(ls), LOWORD(ls)))
                    except:
                        raise EnvironmentError('Unknown version')
                    installed_versions.append((app_folder, version))

        if len(installed_versions) < 1:
            raise EnvironmentError(
                'Unable to find any installed version of  After Effects under "{}"'
                .format(adobe_root))

        app_folder, version = sorted(installed_versions,
                                     key=lambda v: v[1])[-1]

        bin_path = os.path.join(adobe_root, app_folder)

    check_version(version, version_range)

    def make_root(resources_path, variant, path):
        import shutil
        shutil.copy(os.path.join(resources_path, 'aftereffects_icon.png'),
                    os.path.join(path, 'aftereffects_icon.png'))

    make_root_partial = functools.partial(
        make_root,
        resource_filename(Requirement.parse('rez'), "rez/bind/resources"))

    with make_package("aftereffects", path,
                      make_root=make_root_partial) as pkg:
        pkg.version = version
        pkg.tools = ["aftereffects"]
        pkg.description = 'Animation and effects application'
        pkg.authors = ['Adobe']
        pkg.requires = []
        pkg.nice_name = 'After Effects'

        pkg.tools_info = {
            'aftereffects': {
                'command': [
                    'start', '^"AfterEffects^"', '/D', '%REZ_PHOTOSHOP_ROOT%',
                    '/wait', '/B', 'AfterFX.exe'
                ],
                'nice_name':
                'AfterEffects',
                'priority':
                89,
                'icon':
                '{root}/aftereffects_icon.png',
                'launch_in_prompt':
                False
            }
        }
        pkg.commands = win_commands(bin_path)
        pkg.variants = [system.variant]

    return "aftereffects", version