Название в БД + | Тип ПО + | Лицензия + | Стоимость + |
' + s['Name'] + '\n' + ' | ' + s['TipPO'] + '\n' + s1 = s1 + ' | ' + s['License'] + '\n' + ' | ' + s['Cena'] + '\n' + SbHTML = SbHTML + s1 + s2 = """ + |
Официальный сайт: КонтинентСвободы.рф
+ + """ + SbHTML = SbHTML + s2 + ftypes = [('HTML', '.html')] #Указываю тип расширение + #options = QFileDialog.Options() + #fileName = 'D:\\Public\\1.html' + fileName = sys.argv[2] + if fileName == 'default': + sdf = socket.gethostname() + datetime.strftime(datetime.now(), "_%d-%m-%Y_%H-%M-%S") + fileName = str(os.path.dirname(os.path.abspath(__file__))) +'\\' + 'auto_' + sdf +'.html' + try: + f = open(fileName,'w+') + f.write(SbHTML) #Записываем в файл + f.close() + except: + sdf = socket.gethostname() + datetime.strftime(datetime.now(), "_%d-%m-%Y_%H-%M-%S") + fileName = str(os.path.dirname(os.path.abspath(__file__))) +'\\' + 'auto_' + sdf +'.html' + f = open(fileName,'w+') + f.write(SbHTML) #Записываем в файл + f.close() +def RuchHidden(self=None): + """Ручной поиск при запуске с параметрами""" + slovarSave= {} + size_list=[] + dirlist = [] + dir = sys.argv[2] + #dir = 'C:\\Program Files' + spisok=[] + slovar={} + for root, dirs, files in os.walk(dir): # пройти по директории рекурсивно + for name in files: + if name[-4:]=='.exe': + fullname = os.path.join(root, name) # получаем полное имя файла + fullname = fullname.replace("/", "\\") + slovar[name]=fullname + spisok.append(name) + BaseLproRuch = sqlite3.connect(r"data\Lpro.db", uri=True) + BaseLproRuch.row_factory = sqlite3.Row #подключаем базу данных и курсор + CurBLproRuch = BaseLproRuch.cursor() + data = [] + added = False #Для отслеживания добавлен вариант из списка или нет + for itemsoft in spisok: #В списке имена файлом с расширением exe + NameP=itemsoft + NamePF = NameP.replace((NameP[NameP.find('.exe'):]), '') + s = 'SELECT * FROM program WHERE (file LIKE "' + NamePF + '")' + CurBLproRuch.execute(s) + records = CurBLproRuch.fetchall() + for row in records: + h = row[4] + h = h.replace("\n", "") + data.append((slovar[itemsoft], row[1], row[2], row[3], h)) + size_list.append(((len(slovar[itemsoft]))*6)) + #Создаю словари внутри словаря + slovarSave[row[1]] = {'Address':slovar[itemsoft], 'Name':row[1], 'TipPO':row[2], 'License':row[3], 'Cena':row[4]} + added = True + if added == False: + #Если не найдено в поле file, тогда ищем в поле name + s = 'SELECT * FROM program WHERE (name LIKE "' + NamePF + '%%")' + CurBLproRuch.execute(s) + records = CurBLproRuch.fetchall() + for row in records: + h = row[4] + h = h.replace("\n", "") + data.append((slovar[itemsoft], row[1], row[2], row[3], h)) + size_list.append(((len(slovar[itemsoft]))*6)) + #Создаю словари внутри словаря + slovarSave[row[1]] = {'Address':slovar[itemsoft], 'Name':row[1], 'TipPO':row[2], 'License':row[3], 'Cena':row[4]} + added = True + CurBLproRuch.close() #Закрываю соединение с базой и с курсором для базы + BaseLproRuch.close() + SbHTML = """ + + + +Название в БД + | Путь + | Тип ПО + | Лицензия + | Стоимость + |
' + s['Name'] + '\n' + ' | ' + s['Address'] + '\n' + ' | ' + s['TipPO'] + '\n' + s1 = s1 + ' | ' + s['License'] + '\n' + ' | ' + s['Cena'] + '\n' + SbHTML = SbHTML + s1 + s2 = """ + |
Официальный сайт: КонтинентСвободы.рф
+ + """ + SbHTML = SbHTML + s2 + ftypes = [('HTML', '.html')] #Указываю тип расширение + fileName = sys.argv[3] + if fileName == 'default': + sdf = socket.gethostname() + datetime.strftime(datetime.now(), "_%d-%m-%Y_%H-%M-%S") + fileName = str(os.path.dirname(os.path.abspath(__file__))) +'\\' + 'ruch_' + sdf +'.html' + try: + f = open(fileName,'w+') + f.write(SbHTML) #Записываем в файл + f.close() + except: + sdf = socket.gethostname() + datetime.strftime(datetime.now(), "_%d-%m-%Y_%H-%M-%S") + fileName = str(os.path.dirname(os.path.abspath(__file__))) +'\\' + 'ruch_' + sdf +'.html' + f = open(fileName,'w+') + f.write(SbHTML) #Записываем в файл + f.close() diff --git a/reestr.py b/reestr.py index 43f983b..5ae2352 100644 --- a/reestr.py +++ b/reestr.py @@ -26,13 +26,19 @@ def foo(hive, flag): software['publisher'] = 'undefined' try: software['InstallLocation'] = winreg.QueryValueEx(asubkey, "InstallLocation")[0] + if software['InstallLocation'] == '' or software['InstallLocation'] == None: + software['InstallLocation'] = 'undefined' #except EnvironmentError: except: try: software['InstallLocation'] = winreg.QueryValueEx(asubkey, "InstallDir")[0] + if software['InstallLocation'] == '' or software['InstallLocation'] == None: + software['InstallLocation'] = 'undefined' except: try: software['InstallLocation'] = winreg.QueryValueEx(asubkey, "DisplayIcon")[0] + if software['InstallLocation'] == '' or software['InstallLocation'] == None: + software['InstallLocation'] = 'undefined' except: software['InstallLocation'] = 'undefined' #try: