使用PYthon获取当前计算机安装的NX

最近总觉得C/c++太麻烦了,想试试Python,总体来讲比C还是要方便很多滴。还没涉及到NXopen 先小试一下。
我的电脑上只装了一个NX12,但是理论上来讲正常安装的NX应该都可以获取到。
因为是遍历遍历了StartMenu目录,所以免安装的和绿色版应该是获取不到,之所以没做全盘遍历是因为Py多线程我还没学会,单线程全盘遍历又会耗时太久。
比较麻烦的是通过快捷方式获取真实路径,百度根本搜不到,卡了好几天,在隔壁404网站才找到的。
因为只有几十行,就没有写类,但是注释里面是包含类的写法,可能缩进改一下就OK了,有兴趣可以自己看看吧!

# -*- coding:utf-8 -*-
'''
Created on 2018年12月19日
@author: Yang
'''
import os,re

def GetShortcutRealPath(LnkPtah):
    import sys
    import win32com.client 
    shell = win32com.client.Dispatch("WScript.Shell")
    shortcut = shell.CreateShortCut(LnkPtah)
    return shortcut.Targetpath

#os.popen(StartMenuPath)
#os.environ.get(ProgramData)
#os.system("start explorer "+StartMenuPath)
#class Getlnk(object):
def GetAllLnk(StartPath,Keyword):
    LnkFile=[]
    TmpLnk=[]
    for AllLnkfile in os.walk(StartPath):
        StrTmpLnkfile = str(AllLnkfile)
        TmpLnkpath = re.findall(r'[a-zA-Z]:\\{2}[\w*\\{2}\s\d.[\u4e00-\u9fa5]+]*', StrTmpLnkfile) #取路径,正则匹配到的是list
        TmpLnk=re.findall(r'[A-Za-z0-9_\-\u4e00-\u9fa5+\s+\d+\w+.]+.lnk', StrTmpLnkfile)#取lnk后缀        
        for i in range(len(TmpLnk)):
            TmpLnkFile=str(TmpLnkpath[0])+"\\"+str(TmpLnk[i])#合并
            TmpLnkFile=TmpLnkFile.replace('\\\\','\\')
            TmpLnkFile=GetShortcutRealPath(TmpLnkFile)
            if Keyword in TmpLnkFile:
                LnkFile.append(TmpLnkFile)
            LnkFile=list(set(LnkFile))
    for i in range(len(LnkFile)):
        #print(i)
        print(LnkFile[i])

if __name__ == '__main__':
    StartPath=os.environ.get('ProgramData')+r"\Microsoft\Windows\Start Menu"
    Keyword="ugraf"
    GetAllLnk(StartPath,Keyword)

使用PYthon获取当前计算机安装的NX

相关文章:

  • 2022-12-23
  • 2021-09-04
  • 2022-12-23
  • 2021-11-23
  • 2021-11-23
  • 2021-11-23
猜你喜欢
  • 2021-11-16
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-28
相关资源
相似解决方案