- 1
- 2
- 3
- 4
- 5
- 6
import ctypes, sys
if ctypes.windll.shell32.IsUserAnAdmin():
if __name__ == "__main__":
main()
else:
ctypes.windll.shell32.ShellExecuteW(None, "runas", sys.executable, __file__, None, 1)
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+2
import ctypes, sys
if ctypes.windll.shell32.IsUserAnAdmin():
if __name__ == "__main__":
main()
else:
ctypes.windll.shell32.ShellExecuteW(None, "runas", sys.executable, __file__, None, 1)
Ав тозапуск с пра вами адми нис тра тора
Для авто запус ка мы будем исполь зовать сле дующий код:
Те перь при попыт ке запус тить скрипт вызов будет передан на UAC (если акти‐
вен) и откро ется новое окно тер минала, где наш код выпол нится от име ни
адми нис тра тора.
Ес ли такой вари ант не устра ивает, то всег да мож но вос поль зовать ся
готовы ми решени ями.
--------------
Ксакеп. if __name__ == "__main__" не там стоит, автор не понял что это такое.
syoma 26.02.2019 06:19 # +1
Ну хоть в правильном порядке расставил.
guest8 26.02.2019 10:33 # −999
bormand 26.02.2019 06:46 # 0
bormand 26.02.2019 06:49 # +1
Зато если эту херню зацепить как модуль, то права тоже повысятся.
Правда запустит оно не тот скрипт.
6E3yMHblu_nemyx 26.02.2019 17:27 # 0
syoma 26.02.2019 07:07 # 0
guest8 26.02.2019 09:15 # −999
guest8 26.02.2019 17:07 # −999
6E3yMHblu_nemyx 26.02.2019 17:23 # 0
guest8 26.02.2019 17:34 # −999
6E3yMHblu_nemyx 26.02.2019 17:39 # 0
Я бы е щё у да лял сло ва DROP, ALTER, UPDATE, REPLACE, INSERT, а так же точ ку с за пя той и а пос троф.
6E3yMHblu_nemyx 26.02.2019 18:00 # 0
Я безумный петух. sys.executable уже содержит готовый путь к интерпретатору.
guest8 26.02.2019 18:04 # −999
syoma 26.02.2019 18:40 # 0
guest8 26.02.2019 18:43 # −999
syoma 26.02.2019 18:57 # 0
6E3yMHblu_nemyx 26.02.2019 19:01 # 0
guest8 26.02.2019 19:07 # −999
Rooster 26.02.2019 15:07 # +1
guest8 26.02.2019 17:07 # −999
6E3yMHblu_nemyx 26.02.2019 17:22 # 0
guest8 26.02.2019 17:34 # −999
6E3yMHblu_nemyx 26.02.2019 17:42 # 0
Rooster 26.02.2019 18:11 # 0
syoma 26.02.2019 18:41 # 0
Rooster 27.02.2019 11:17 # 0
6E3yMHblu_nemyx 27.02.2019 15:04 # +1
Постскрипт, сгенерированный некоторыми текстовыми процессорами, содержит массив кусков текста с координатами привязки левого нижнего угла, чтобы можно было точно управлять кернингом и шириной пробелов. На «JSON» (просто для наглядности) это выглядело бы примерно так:
Понять, что «автозапуск» пишется слитно, а «с» от него отделено пробелами, можно только померив координаты x и сравнив шаг сетки с суммой ширин букв текущего шрифта. Заметив, что между «пуск» и «с» необычно большой интервал, поймём, что между ними должен быть пробел.
6E3yMHblu_nemyx 27.02.2019 15:09 # +1
bormand 27.02.2019 15:14 # 0
Ещё не факт, что эти буквы вообще имеют отношение друг к другу... Вдруг это сноска какая-нибудь внизу листа. Или так сильно прыгать нельзя?
6E3yMHblu_nemyx 27.02.2019 15:37 # 0
Давно не ковырял эти форматы, придётся уточнять. Можно посмотреть исходники «XPDF» (в комплекте есть программа pdftotext). Вот именно там, если ничего не путаю, я и увидел попытку смоделировать сетку текста: сначала эти фрагменты текста сортируются по координатам, потом квантуется вертикальная координата, чтобы разбить текст на строки (у надстрочных и подстрочных индексов получаются дробные координаты), потом исследуется горизонтальная координата в пределах каждой строки, чтобы выделить слова.
В общем, нужна сегментация текста, почти как в OCR.
6E3yMHblu_nemyx 27.02.2019 15:56 # +1
HoBblu_nemyx 01.03.2019 18:15 # 0
nEPBO6blTHblu_nemyx 01.03.2019 19:18 # 0
А если серьёзно, «.cc» –— это просто одно из расширений имени файла для «C++» наряду с «.cpp», «.c++», «.cxx», «.C» (да, в некоторых unix-подобных системах заглавная буква «C» означает «C++», а строчная означает сишку, из-за чего случается какой багор при попытке передать такие файлы на носителе с «FAT» или с ещё какой-нибудь регистронезависимой файловой системой).
Hu3KoypoBHeBblunemyx 01.03.2019 21:36 # 0
Именно поэтому я против файловых систем. В S" Forth" файлы не обязательны, можно хранить данные на диске в пронумерованных 1-кидобайтных блоках, гдк нет никаких имен и расгирений. Именно поэтрму я за S" Forth".
nEPBO6blTHblu_nemyx 01.03.2019 21:45 # +1
На слух искали свободное место и включали запись?
HoBblu_nemyx 02.03.2019 00:15 # +1
cmepmop 01.03.2019 19:00 # 0
nEPBO6blTHblu_nemyx 01.03.2019 19:14 # 0
К слову, у MS есть программа Publisher (в некоторые версии MS Office её включали, а в некоторых нужно ставить отдельно). Так вот Publisher –— противоположность Ворда в том смысле, что ему важны координаты фрагментов текста (как и PDF).
А почему возникли ассоциации с GDIP?
6E3yMHblu_nemyx 26.02.2019 17:44 # 0
guest8 26.02.2019 17:55 # −999
6E3yMHblu_nemyx 26.02.2019 17:57 # 0
guest8 26.02.2019 17:59 # −999
guest8 26.02.2019 18:00 # −999
Hu3KoypoBHeBblunemyx 01.03.2019 21:37 # 0
cmepmop 26.02.2019 18:41 # 0
guest8 26.02.2019 18:44 # −999