RU2815924C1 - Method of installing programs which does not require multiple requests for permission, electronic device and computer-readable data medium - Google Patents
Method of installing programs which does not require multiple requests for permission, electronic device and computer-readable data medium Download PDFInfo
- Publication number
- RU2815924C1 RU2815924C1 RU2023108673A RU2023108673A RU2815924C1 RU 2815924 C1 RU2815924 C1 RU 2815924C1 RU 2023108673 A RU2023108673 A RU 2023108673A RU 2023108673 A RU2023108673 A RU 2023108673A RU 2815924 C1 RU2815924 C1 RU 2815924C1
- Authority
- RU
- Russia
- Prior art keywords
- command
- installation
- program
- launcher
- installing
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000009434 installation Methods 0.000 claims abstract description 53
- 230000006870 function Effects 0.000 claims description 20
- 238000013515 script Methods 0.000 claims description 20
- 238000003384 imaging method Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 abstract description 15
- 230000000694 effects Effects 0.000 abstract description 4
- 239000000126 substance Substances 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 13
- 238000005516 engineering process Methods 0.000 description 4
- 238000011900 installation process Methods 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000002730 additional effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
Abstract
Description
Область техникиField of technology
Настоящее изобретение относится к области технологии установки (инсталляции) программ и, в частности, к способу установки программ, не требующему многократных запросов разрешения, электронному устройству и машиночитаемому носителю данных.The present invention relates to the field of software installation technology and, in particular, to a software installation method that does not require multiple permission requests, an electronic device, and a computer-readable storage medium.
Предпосылки создания изобретенияPrerequisites for creating the invention
В некоторых операционных системах, когда в одном процессе установки программ требуется установить разные типы функциональных модулей, может понадобиться, чтобы системное окно всплывало множество раз для запрашивания пользователя ввести пароли логического входа, что повышает сложность эксплуатации и снижает качество взаимодействия с пользователем.On some operating systems, when different types of feature modules need to be installed in the same software installation process, a system window may need to pop up multiple times to prompt the user for login passwords, which increases operational complexity and reduces the quality of the user experience.
Сущность изобретенияThe essence of the invention
Цель настоящего изобретения заключается в устранении дефектов предшествующего уровня техники, которые выражаются в том, что при установке разных типов функциональных модулей требуется многократный запрос разрешения.The purpose of the present invention is to eliminate the defects of the prior art in that installation of different types of function modules requires multiple permission requests.
Согласно первому аспекту настоящего изобретения обеспечивается способ установки программ, не требующий многократных запросов разрешения, который включает в себя: исполнение первой команды после запуска первой запускающей программы без прав администратора, причем первая команда используется для запуска второй запускающей программы с правами администратора; и запуск по меньшей мере одного установочного модуля посредством второй команды после запуска второй запускающей программы, причем вторая команда сконфигурирована для исполнения запускающих программ с правами администратора.According to a first aspect of the present invention, there is provided a method for installing programs that does not require multiple permission requests, which includes: executing a first command after running a first launcher without administrator rights, the first command being used to launch a second launcher with administrator rights; and launching the at least one installation module by a second command after launching the second launcher, the second command being configured to execute the launchers with administrator rights.
В необязательном порядке, установочный модуль включает в себя по меньшей мере одну функцию, выбираемую из реализации установки драйверов устройства создания изображений, настройки беспроводной сети устройства создания изображений и осуществления добавления устройства создания изображений.Optionally, the installation module includes at least one function selected from installing imaging device drivers, setting up a wireless network of the imaging device, and performing adding the imaging device.
В необязательном порядке, способ установки используется в системе MacOS.Optionally, the installation method is used on the MacOS system.
В необязательном порядке, первая и вторая команды являютсякомандами API (интерфейса прикладного программирования, Application Programming Interface) или скриптов в стандартной библиотеке.Optionally, the first and second commands are API (Application Programming Interface) commands or scripts in the standard library.
В необязательном порядке, интерфейс первой запускающей программы скрывается после запуска второй запускающей программы; и/или интерфейс второй запускающей программы скрывается после запуска установочного модуля.Optionally, the first launcher's interface is hidden after the second launcher is launched; and/or the interface of the second launcher is hidden after the installation module is launched.
Согласно второму аспекту настоящего изобретения обеспечивается способ установки программ, не требующий многократных запросов разрешения, который включает в себя: многократное исполнение третьей команды вплоть до завершения установки после запуска первой запускающей программы без прав администратора, причем третья команда сконфигурирована для исполнения команды установки в файле по предварительно заданному пути с правами администратора; и, всякий раз перед тем первая запускающая программа исполнит третью команду, очистку файла и запись команды установки, соответствующей следующему модулю, который должен быть установлен, в файл посредством первой записывающей программы.According to a second aspect of the present invention, there is provided a method for installing programs that does not require multiple permission requests, which includes: repeatedly executing a third command until the installation is completed after running the first launching program without administrator rights, the third command being configured to execute the install command in a file by specified path with administrator rights; and, each time before, the first writing program will execute the third command, clearing the file and writing the installation command corresponding to the next module to be installed to the file by the first writing program.
В необязательном порядке, установочный модуль включает в себя по меньшей мере одну функцию, выбираемую из реализации установки драйверов устройства создания изображений, настройки беспроводной сети устройства создания изображений и осуществления добавления устройства обработки изображений.Optionally, the installation module includes at least one function selected from installing imaging apparatus drivers, configuring a wireless network of the imaging apparatus, and performing adding an imaging apparatus.
В необязательном порядке, способ установки используется для системы MacOS.Optionally, the installation method is used for MacOS system.
В необязательном порядке, третья команда является командами API или скриптов в стандартной библиотеке.Optionally, the third command is the API or script commands in the standard library.
Согласно третьему аспекту настоящего изобретения обеспечивается электронное устройство, которое включает в себя:According to a third aspect of the present invention, there is provided an electronic device that includes:
память, приспособленную для хранения компьютерной программы; и процессор, подключенный к памяти с возможностью обмена данными, и при исполнении компьютерной программы процессор конфигурируется выполнять способ установки, не требующий многократных запросов разрешения, согласно первому и второму аспектам настоящего изобретения.memory adapted to store a computer program; and a processor communicatably coupled to the memory, and when executing a computer program, the processor is configured to execute a setting method that does not require multiple permission requests according to the first and second aspects of the present invention.
Согласно четвертому аспекту настоящего изобретения обеспечивается машиночитаемый носитель данных, содержащий компьютерную программу, которая при её исполнении предписывает процессору выполнять способ установки, не требующий многократных запросов разрешения, согласно первому или второму аспектам настоящего изобретения.According to a fourth aspect of the present invention, there is provided a computer-readable storage medium containing a computer program that, when executed, causes a processor to execute an installation method that does not require multiple permission requests according to the first or second aspects of the present invention.
Технический результат настоящего изобретения заключается в том, что для осуществления процесса установки разных модулей потребуется только однократный запрос разрешения.The technical result of the present invention is that only a one-time permission request is required to carry out the process of installing different modules.
Прочие характеристики и преимущества настоящего изобретения станут очевидными из следующего подробного описания иллюстративных вариантов осуществления настоящего изобретения со ссылкой на прилагаемые чертежи.Other features and advantages of the present invention will become apparent from the following detailed description of illustrative embodiments of the present invention with reference to the accompanying drawings.
Краткое описание графических материаловBrief description of graphic materials
Прилагаемые чертежи, которые включены в это описание изобретения и составляют его часть, иллюстрируют варианты осуществления, согласующиеся с изобретением, и, совместно с описанием, служат для объяснения принципов изобретения.The accompanying drawings, which are included in and constitute a part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.
Фиг.1 - схема, демонстрирующая всплывающее окно, когдаFig. 1 is a diagram showing a pop-up window when
запрашивается разрешение;permission is requested;
Фиг.2 - логическая блок-схема, демонстрирующая вариантFIG. 2 is a logic block diagram showing an embodiment
осуществления настоящего изобретения;implementation of the present invention;
Фиг.3 – схематическое изображение, демонстрирующая интерфейс монитора активности после запуска второй запускающей программы, согласно варианту осуществления настоящего изобретения;FIG. 3 is a schematic diagram showing an activity monitor interface after launching a second launcher according to an embodiment of the present invention; FIG.
Фиг.4 – схематическое изображение, демонстрирующее сигнальную взаимосвязь между модулями согласно варианту осуществления настоящего изобретения;FIG. 4 is a schematic diagram showing signal interconnection between modules according to an embodiment of the present invention; FIG.
Фиг.5 - логическая блок-схема иллюстративного применения варианта осуществления настоящего изобретения;FIG. 5 is a logic block diagram of an exemplary application of an embodiment of the present invention; FIG.
Фиг.6 - логическая блок-схема, демонстрирующая другойFIG. 6 is a logic block diagram showing another
вариант осуществления настоящего изобретения;an embodiment of the present invention;
Фиг.7 – схематическое изображение, демонстрирующая сигнальную взаимосвязь между модулями согласно другому варианту осуществления изобретения;FIG. 7 is a schematic diagram showing signal interconnection between modules according to another embodiment of the invention; FIG.
Фиг.8 - логическая блок-схема иллюстративного применения другого варианта осуществления изобретения.FIG. 8 is a logic block diagram of an illustrative application of another embodiment of the invention.
Подробное описание вариантов осуществленияDetailed Description of Embodiments
Далее будет представлено подробное описание различных иллюстративных вариантов осуществления настоящего изобретения со ссылкой на прилагаемые чертежи. Следует отметить, что: относительное расположение элементов и этапов, числовые выражения и значения, изложенные в данных вариантах осуществления, не ограничивают объем настоящего изобретения, если не указано обратное.Various exemplary embodiments of the present invention will now be described in detail with reference to the accompanying drawings. It should be noted that the relative arrangement of elements and steps, numerical expressions and meanings set forth in these embodiments do not limit the scope of the present invention unless otherwise stated.
Нижеследующее описание иллюстративных вариантов осуществления служит только для иллюстрации и пояснения и ни в коем случае не ограничивает применение или использование настоящего изобретения.The following description of illustrative embodiments is for purposes of illustration and explanation only, and in no way limits the application or use of the present invention.
Технологии, способы и устройства, известные специалистам в данной области техники, могут подробно не обсуждаться, однако в соответствующих случаях технологии, способы и устройства следует рассматривать как часть настоящего описания.Technologies, methods and devices known to those skilled in the art may not be discussed in detail, however, when appropriate, technologies, methods and devices should be considered part of the present description.
Во всех примерах, которые приводятся и обсуждаются здесь, любые конкретные значения должны интерпретироваться в качестве пояснений и не должны рассматриваться как ограничения. Ввиду этого, прочие примеры иллюстративных вариантов осуществления могут иметь разные значения.In all examples given and discussed here, any specific values are to be interpreted as illustrative and should not be construed as limitations. Therefore, other examples of illustrative embodiments may have different meanings.
Следует отметить, что аналогичные знаки и буквы обозначают аналогичные элементы, которые будут представлены на следующих фигурах, следовательно, после определения элемента на одной фигуре, дальнейшее определение элемента на последующих фигурах не потребуется.It should be noted that similar signs and letters indicate similar elements that will be presented in the following figures, therefore, after defining an element in one figure, further definition of the element in subsequent figures is not required.
Целью вариантов осуществления настоящего изобретения является предоставление способа установки программ, который не требует от пользователя многократного ввода пароля для логического входа в систему. Например, при использовании некоторых типичных операционных систем Unix (таких как система Ubuntu или MacOS), когда прикладная программа устанавливается, окно будет всплывать, если прикладной программе потребуется модифицировать системные файлы. Интерфейс всплывающего окна показан на Фиг.1. Когда в устанавливаемой программе имеется несколько функциональных модулей, которым требуется модифицировать системные файлы, то перед установкой каждого модуля в системе будет всплывать интерактивный интерфейс, запрашивающий пользователя ввести пароль; в противном случае установка не может быть продолжена. Например, при установке сервисной программы для принтеров, модуль драйвера, сетевой модуль и модуль добавления устройства все могут запрашиватьThe purpose of embodiments of the present invention is to provide a method for installing programs that does not require the user to repeatedly enter a password to log into the system. For example, when using some typical Unix operating systems (such as Ubuntu or MacOS), when an application program is installed, a window will pop up if the application program needs to modify system files. The pop-up window interface is shown in Figure 1. When the program being installed has several functional modules that need to modify system files, then before installing each module in the system, an interactive interface will pop up asking the user to enter a password; otherwise the installation cannot continue. For example, when installing a printer utility, the driver module, network module, and add device module may all prompt
разрешения от системы. При возникновении данной ситуации множественные всплывающие окна будут возникать последовательно, тем самым снижая качество взаимодействия с пользователем.permissions from the system. When this situation occurs, multiple pop-up windows will appear sequentially, thereby reducing the quality of the user experience.
Существует несколько способов пропуска ввода пароля; например, на сайте developer.apple.com представлен способ записи имени пользователя и пароля в текстовой форме в команду для исполнения, либо записи имени пользователя и пароля в скрипт для считывания. Однако данные способы несомненно создают угрозу безопасности; следовательно, чтобы разрешить вышеуказанную проблему необходимо прибегнуть к более безопасному и удобному способу.There are several ways to skip password entry; for example, developer.apple.com provides a way to write the username and password in text form into a command for execution, or to write the username and password into a script for reading. However, these methods undoubtedly pose a security risk; Therefore, to solve the above problem, it is necessary to resort to a safer and more convenient method.
Для разрешения вышеуказанной проблемы ниже представлено подробное описание двух вариантов осуществления.To solve the above problem, a detailed description of two embodiments is provided below.
<Вариант осуществления I><Embodiment I>
Как показано на Фиг.1, данный вариант осуществления, в котором обеспечивается способ установки программ, не требующий многократных запросов разрешения, включает в себя:As shown in FIG. 1, this embodiment, which provides a method for installing programs without requiring multiple permission requests, includes:
Этап S101: первая команда исполняется после запускаStep S101: The first command is executed after startup
первой запускающей программы без прав администратора.the first program to launch without administrator rights.
Первая запускающая программа может быть программой для приема взаимодействия с пользователем. Например, пользователь может запустить первую запускающую программу посредством щелчка (клика) по значку первой запускающей программы, посредством ввода рабочей команды в командной строке, либо посредством использования горячей клавиши. Первую запускающую программу можно рассматривать в качестве интерфейса для реализации пользователем процесса установки. Первая запускающая программа сама по себе не содержит установочные файлы.The first launcher may be a program for receiving user interaction. For example, the user can launch the first launcher by clicking on the first launcher icon, by entering an operating command at the command line, or by using a hotkey. The first launcher can be considered as an interface for the user to carry out the installation process. The first program that launches does not itself contain installation files.
Первая команда сконфигурирована для запуска второй запускающей программы с правами администратора. Например, в системе MacOS в качестве первой команды может использоваться функция, предусмотренная в стандартной библиотеке Apple для получения разрешения, а входным параметром этой функции может быть путь туда, где размещена вторая запускающая программа. Учитывая, что среди функций API, используемых для запуска программ с правами администратора или исполнения команд, есть некоторые функции, которые когда-то широко использовались, однако затем были официально определены как устаревшие функции по мере обновления библиотеки, в настоящей заявке не приводятся имена конкретных функций во избежание непреднамеренного выбора устаревших функций пользователями. Специалисты в данной области техники могут использовать такие ключевые слова, как разрешение (permission), для осуществления поиска в технических руководствах, таких как руководства разработчиков, и выбора функций, рекомендуемых на текущий момент для фактического использования, и т. д.The first command is configured to run the second launcher with administrator rights. For example, on MacOS, the first command might use the function provided in Apple's standard library to obtain permission, and the input parameter to that function might be the path to where the second launcher is located. Given that among the API functions used to run programs with administrative privileges or execute commands, there are some functions that were once widely used but were then officially designated as deprecated functions as the library was updated, specific function names are not provided in this application to prevent users from inadvertently selecting deprecated features. Those skilled in the art can use keywords such as permission to search technical manuals such as developer guides and select features currently recommended for actual use, etc.
Этап S102: вторая команда запускает по меньшей мере один установочный модуль после запуска второй запускающей программы.Step S102: The second command starts the at least one installation module after starting the second launcher.
Поскольку первая запускающая программа запускается с правами администратора в этот раз, то вторая запускающая программа может не выполнять многократный запрос разрешений при использовании команд с привилегией root опять. Схема одного примера варианта осуществления показана Фиг.3, где процесс с идентификатором процесса (PID) 59439 представляет собой первую запускающую программу. Как видно, первая запускающая программа запускается без прав администратора (имя пользователя соответствует имени пользователя с обычными правами), и процесс с PID 44007 — это вторая запускающая программа. Как видно, вторая запускающая программа имеет права с привилегией root после её запуска посредством первой команды, и вторая запускающая программа всегда имеет права с привилегией root на протяжении всего процесса установки, то есть для второй запускающей программы не требуется многократно вводить пароль, независимо от того, сколько команд с привилегией root будет введено впоследствии. Для разных типов установочных модулей конкретные инструкции исполнения могут отличаться. Например, могут отличаться имена установочных модулей или выполняемые операции по модификации. В некоторых вариантах осуществления, когда количество установочных модулей составляет не менее 2, то удовлетворяется то, что каждому установочному модулю требуется запрашивать разрешение, и разрешение, которое требуется запрашивать каждому установочному модулю, отличается от других.Because the first launcher is running with administrator rights this time, the second launcher may not prompt for permissions multiple times when using commands with root privilege again. A diagram of one example embodiment is shown in FIG. 3, where a process with a process ID (PID) of 59439 is the first launcher. As you can see, the first launcher runs without administrator rights (the username is the same as a normal username), and the process with PID 44007 is the second launcher. As you can see, the second launcher has root privileges after running it with the first command, and the second launcher always has root privileges throughout the installation process, meaning the second launcher does not need to enter a password multiple times, no matter how many commands with root privilege will be entered subsequently. For different types of installation modules, specific execution instructions may differ. For example, the names of the installation modules or the modification operations performed may differ. In some embodiments, when the number of installation modules is at least 2, it is satisfied that each installation module needs to request permission, and the permission that each installation module needs to request is different from others.
Вторая команда сконфигурирована для исполнения запускающих программ с правами администратора. Например, в системе MacOS инструкции запуска могу исполняться через функцию API, предусмотренного в стандартной библиотеке Apple, или команды скрипта shell. Аналогично, специалисты в данной области техники могут использовать соответствующие ключевые слова для осуществления поиска в библиотеке, чтобы выбрать наиболее рекомендуемые функции или скрипты для использования, и конкретные имена функций не приведены в настоящей заявке.The second command is configured to execute launch programs with administrator rights. For example, on MacOS, startup instructions can be executed through an API function provided in the Apple standard library or shell script commands. Likewise, those skilled in the art can use appropriate keywords to search the library to select the most recommended functions or scripts to use, and specific function names are not provided herein.
В некоторых вариантах осуществления различия между первой и второй командами может заключаться в том, что входными параметрами первой команды являются исполняемые файлы (например, вторая запускающая программа), тогда как вторая команда может быть конкретной операцией добавления, удаления, изменения или проверки.In some embodiments, the differences between the first and second commands may be that the first command's input parameters are executable files (eg, a second launcher), while the second command may be a specific add, delete, change, or check operation.
На Фиг.4 представлено схематическое изображение сигнальной взаимосвязи между модулями согласно иллюстративному варианту осуществления. Как видно, первая запускающая программа запускает вторую запускающую программу посредством первой команды, а вторая запускающая программа запускает несколько установочных модулей посредством второй команды.FIG. 4 is a schematic diagram of a signaling relationship between modules according to an exemplary embodiment. As can be seen, the first launcher launches the second launcher via the first command, and the second launcher launches several installation modules via the second command.
Блока-схема иллюстративного применения согласно данному варианту осуществления представлена на Фиг.5. На этапе S501 запускается первая запускающая программа. В этом время первая команда исполняется незамедлительно. На этапе S502 система обеспечивает всплытие окна для ввода имени пользователя/пароля, чтобы пользователь осуществил ввод. На этапе S503 запускается вторая запускающая программа. На этапе S504 исполняется команда 1 с привилегией root (т.е. оператор во второй команде). На последующих этапах S505-S507 несколько команд с привилегией root исполняются посредством второй запускающей программы. Во время процессов выполнения этапов S504-S507 окно, представленное на Фиг.1, может не всплывать, то есть в данном примерном варианте осуществления на протяжении всего процесса требуется только однократный запрос разрешения.A block diagram of an exemplary application according to this embodiment is shown in FIG. 5. In step S501, the first startup program is started. At this time, the first command is executed immediately. In step S502, the system causes the username/password input window to pop up for the user to input. In step S503, the second startup program is started. In step S504, command 1 is executed with root privilege (ie, the operator in the second command). In subsequent steps S505 to S507, several commands with root privilege are executed by the second launcher. During the processes of steps S504 to S507, the window shown in FIG. 1 may not pop up, that is, in this exemplary embodiment, only a one-time permission request is required throughout the entire process.
Следует отметить, что данный вариант осуществления нелегко составить, основываясь на имеющихся на сегодняшний день технических руководствах или спецификациях применения операторов команд. Напротив, в технических руководствах могут быть представлены совершенно противоположные указания. На странице «Technical Note TN2065 do shell script in AppleScript» сайта developer.apple.com упоминается, что многократные запросы разрешений не требуются и не дают каких- либо дополнительных преимуществ, и разработчикам рекомендуется избегать подобного способа применения. До некоторой степени, данная страница может служить только для обеспечения общего понимания для специалистов в данной области техники; то есть, только требуется выбрать одну из этих команд, чтобы запросить разрешение, и их совместное использование будет иметь аналогичный результат без каких-либо дополнительных эффектов. Следовательно, у специалистов в данной области техники отсутствует стимул к многократному использованию команд. В настоящей заявке обнаружено, что комбинация первой команды и второй команды может сделать так, что вторая запускающая программа всегда будет иметь права с привилегией root, и не требуется многократно запрашивать разрешение. Первая и вторая запускающие программы, а также первая и вторая команды рационально разработаны в настоящей заявке таким образом, чтобы вторая запускающая программа, будучи запущенной, имела права с привилегией root, с тем чтобы при запуске нескольких установочных пакетов второй запускающей программой не потребовалось вводить пароль, что значительно упрощает рабочий процесс.It should be noted that this embodiment is not easily constructed based on currently available technical guidance or application specifications for command statements. On the contrary, technical manuals may provide completely opposite instructions. The page "Technical Note TN2065 do shell script in AppleScript" on developer.apple.com mentions that multiple permission requests are not required or provide any additional benefit, and developers are advised to avoid this practice. To some extent, this page may only serve to provide a general understanding to those skilled in the art; that is, you only need to select one of these commands to request permission, and using them together will have the same result without any additional effects. Consequently, there is no incentive for those skilled in the art to reuse commands. The present application has discovered that the combination of the first command and the second command can make the second running program always have root privileges without having to repeatedly request permission. The first and second launchers and the first and second commands are rationally designed herein such that the second launcher, when launched, has root privileges so that when running multiple installation packages, the second launcher will not be required to enter a password, which greatly simplifies the workflow.
В некоторых вариантах осуществления, установочный модуль на этапе S102 имеет по меньшей мере одну функцию, выбираемую из реализации установки драйверов устройства создания изображений, настройки беспроводной сети устройства создания изображений и осуществления добавления устройства создания изображений. Если установочный модуль включает в себя по меньшей мере две функции, то с помощью способа согласно настоящему раскрытию можно выполнить установку драйверов устройства создания изображений (например, принтера) за один клик, без необходимости множества запросов разрешений, и по меньшей мере две операции из установки драйверов, настройки сети и добавления устройства могут быть осуществлены, что обеспечивает удобство пользователю в плане оперативного использования устройства создания изображений с компьютера.In some embodiments, the installation module in step S102 has at least one function selected from performing installation of imaging device drivers, setting up the wireless network of the imaging device, and performing adding of the imaging device. If the installation module includes at least two functions, then using the method according to the present disclosure, it is possible to install drivers of an imaging device (eg, a printer) in one click, without the need for multiple permission requests, and at least two operations from installing drivers , network settings and device additions can be made, which provides convenience for the user to quickly use the imaging device from a computer.
В некоторых вариантах осуществления, на этапе S102 вторая команда запускает по меньшей мере один установочный модуль после запуска второй запускающей программы, что соответствует тому, в частности, что сначала может быть начата установка программы настройки сети, далее начинается установка драйверов устройства создания изображений, а затем начинается установка по добавлению устройства создания изображений в операционную систему компьютера. Последовательность этих трех установочных процессов не ограничивается. В связи с этим, согласно этапу 102, больше не требуется вводить пароль при запуске нескольких установочных модулей, которые желательно запустить, или запуске установочных пакетов с привилегией root, чем значительно упрощается рабочий процесс и обеспечивается эффект завершения всех установочных операций после однократного ввода пароля в один клик.In some embodiments, in step S102, the second command starts the at least one installer after starting the second launcher, which corresponds to, inter alia, starting the installation of the network setup program, then starting the installation of the imaging device drivers, and then The installation begins to add the imaging device to the computer's operating system. The sequence of these three installation processes is not limited. In this regard, according to step 102, it is no longer necessary to enter a password when running multiple installation modules that you want to run, or running installation packages with root privilege, which greatly simplifies the workflow and ensures the effect of completing all installation operations after entering the password once in one cry.
Более того, чтобы сделать интерфейс установки простым и наглядным, согласно данному варианту осуществления интерфейс первой запускающей программы скрывается после запуска второй запускающей программы и/или интерфейс второй запускающей программы скрывается после запуска установочного модуля. Так как для первой запускающей программы и второй запускающей программы не предусмотрен стандартный интерфейс установки, и они только выполняют функцию вызова команд, то если первая и вторая запускающие программы всегда отображаются, они могут мешать пользователю наблюдать за ходом процесса установки. Следовательно, первая запускающая программа может быть скрыта, с тем чтобы в системном интерфейсе отображалась только одна программа единовременно.Moreover, in order to make the installation interface simple and clear, according to this embodiment, the interface of the first launcher is hidden after the second launcher is launched and/or the interface of the second launcher is hidden after the installation module is launched. Since the first launcher and second launcher do not have a standard installation interface and only serve as command functions, if the first and second launchers are always displayed, they may interfere with the user's ability to observe the installation process. Therefore, the first launching program can be hidden so that only one program is displayed at a time in the system interface.
<Вариант осуществления II><Embodiment II>
Согласно другому варианту осуществления, предоставлен способ установки программ, не требующий многократных запросов разрешений. Как показано на Фиг.6, данный способ включает в себя этапы S201 и S202.According to another embodiment, a method for installing programs is provided that does not require multiple permission requests. As shown in FIG. 6, this method includes steps S201 and S202.
На этапе S201 третья команда многократно исполняется вплоть до завершения установки после запуска первой запускающей программы без прав администратора. Первая запускающая программа может представлять собой программу для приема взаимодействия с пользователем. Например, пользователь может запустить первую запускающую программу посредством щелчка по значку первой запускающей программы, посредством ввода рабочей инструкции в командной строке, либо посредством использования горячей клавиши.In step S201, the third command is executed repeatedly until the installation is completed after the first startup program is launched without administrator rights. The first launcher may be a program for receiving user interaction. For example, the user may launch the first launcher by clicking on the first launcher icon, by entering an operating instruction at the command line, or by using a hotkey.
Третья команда сконфигурирована для исполнения команд установки в файлах по предварительно заданному пути с правами администратора, а также сконфигурирована для обеспечения запуска процесса третьей команды с правами администратора.The third command is configured to execute installation commands on files in a predefined path with administrative rights, and is also configured to allow the third command process to run with administrative rights.
Например, в системе MacOS инструкции запуска могут исполняться через API, предусмотренный в стандартной библиотеке Apple, или команды скрипта shell. Аналогично, специалисты в данной области техники могут использовать соответствующие ключевые слова для осуществления поиска в библиотеке, чтобы выбрать наиболее рекомендуемые функции или скрипты, и конкретные имена функций не ограничиваются в данной заявке.For example, on MacOS, startup instructions can be executed through the API provided in the Apple standard library or shell script commands. Likewise, those skilled in the art can use appropriate keywords to search the library to select the most recommended functions or scripts, and specific function names are not limited herein.
Третья команда отличается от первой и второй команд тем, что входным параметром третьей команды является путь, и она сконфигурирована для исполнения скрипта по этому пути. В данном варианте осуществления, после получения разрешения, может не осуществляться многократное всплытие окна для ввода пароля с многократным исполнением одной и той же команды. На основании этого, в данном варианте осуществления, первая запускающая программа многократно исполняет третью команду во избежание многократных запросов на разрешения. Наряду с этим, в данном варианте осуществления также требуется реализовать процесс установки разных установочных модулей с помощью одной и той же команды, и данный процесс может быть осуществлен посредством этапа S202.The third command differs from the first and second commands in that the input parameter of the third command is a path, and it is configured to execute a script along that path. In this embodiment, once permission is granted, the password entry window may not pop up repeatedly to execute the same command multiple times. Based on this, in this embodiment, the first launcher repeatedly executes the third command to avoid multiple requests for permissions. Along with this, in this embodiment, it is also required to implement the process of installing different installation modules using the same command, and this process can be implemented by step S202.
На этапе S202, всякий раз перед тем, как первая запускающая программа исполнит третью команду, функция, заданная в первой запускающей программе, может очистить файл и записать в файл команду установки, соответствующую следующему модулю, который должен быть установлен. Например, файл может быть пустым в исходном состоянии. До того, как третья команда будет исполнена в первый раз, третья команда записывает в пустой файл команду для запуска первого установочного модуля. После завершения установки первого установочного модуля первая записывающая программа выполняет очистку файла, а затем записывает команду для запуска второго установочного модуля. После завершения установки второго установочного модуля первая записывающая программа выполняет очистку файла, а затем записывает команду для запуска третьего установочного модуля. Данный процесс осуществляется до тех пор, пока не будут запущены все установочные модули.In step S202, whenever before the first launcher executes the third command, the function specified in the first launcher may clear the file and write an installation command corresponding to the next module to be installed into the file. For example, the file may be empty in its original state. Before the third command is executed for the first time, the third command writes to an empty file a command to run the first installation module. After the installation of the first installer is complete, the first writer cleans up the file and then writes a command to run the second installer. After the installation of the second installer is complete, the first writer cleans up the file and then writes a command to run the third installer. This process continues until all installation modules have been launched.
То есть, идея данного варианта осуществления заключается в многократном исполнении одной и той же команды скрипта, так что окно для ввода пароля может не всплывать множество раз. Кроме этого, чтобы по факту добиться эффекта выполнения разных операции, используется еще один, записывающий модуль для постоянного модифицирования содержимого скрипта, чтобы достичь этой цели.That is, the idea of this embodiment is to repeatedly execute the same script command so that the password input window does not have to pop up multiple times. In addition, in order to actually achieve the effect of performing different operations, another writing module is used to constantly modify the contents of the script in order to achieve this goal.
Схематическое изображение сигнальной взаимосвязи между модулями согласно данному варианту осуществления представлено на Фиг.7. Как видно, первая запускающая программа исполняет несколько установочных модулей путем изменения файла скрипта раз за разом.A schematic diagram of the signal relationship between modules according to this embodiment is shown in FIG. 7. As you can see, the first launcher executes several installation modules by changing the script file over and over again.
Логическая блок-схема иллюстративного применения данного варианта осуществления представлена на Фиг.8. На этапе S601 запускается первая запускающая программа, а затем незамедлительно исполняется третья команда. На этапе S602 создается пустой файл скрипта. На этапе S603 в файл скрипта записывается команда 1. На этапе S604 файл скрипта исполняется с привилегией root. На этапе S605 всплывает окно для ввода имени пользователя/пароля, и после осуществления пользователем ввода исполняется команда 1. На этапе S606 выполняется очистка файла скрипта и команда 2 записывается в файл скрипта. На этапе S607 файла скрипт исполняется с привилегией root. Этот процесс повторяется до тех пор, пока процесс записи по этапу S608 и процесс исполнения по этапу S609, соответствующие последней команде, не будут завершены. На этапах S606-S609 окно, представленное на Фиг.1, может повторно не всплывать, то есть на протяжении всего процесса согласно данному варианту осуществления требуется только однократный запрос разрешения.A logic block diagram of an exemplary application of this embodiment is shown in FIG. 8. In step S601, the first startup program is started, and then the third instruction is immediately executed. In step S602, an empty script file is created. In step S603, command 1 is written to the script file. In step S604, the script file is executed with root privilege. In step S605, the username/password input window is popped up, and after the user inputs, command 1 is executed. In step S606, the script file is cleared, and command 2 is written to the script file. At step S607 of the file, the script is executed with root privilege. This process is repeated until the writing process of step S608 and the execution process of step S609 corresponding to the last command are completed. In steps S606 to S609, the window shown in FIG. 1 may not pop up again, that is, only a one-time permission request is required throughout the entire process of this embodiment.
Следует отметить, что данный вариант осуществления нелегко составить, основываясь на имеющихся на сегодняшний день технических руководствах или спецификациях применения операторов команд. В примерах технического применения, представленных на сайте developer.apple.com, не содержатся какие-либо технические разъяснения о том, как использовать свойства операторов, чтобы обеспечить запуск нескольких программ с разными именами без многократных запросов разрешений.It should be noted that this embodiment is not easily constructed based on currently available technical guidance or application specifications for command statements. The technical use cases provided on developer.apple.com do not provide any technical explanation of how to use operator properties to allow multiple programs with different names to run without asking for permission multiple times.
В некоторых вариантах осуществления, настоящей заявкой также обеспечивается электронное устройство, которое включает в себя один или несколько процессоров, память, а также одну или несколько компьютерных программ, хранящихся в памяти. Одна или несколько компьютерных программ содержат инструкции, которые при их исполнении посредством электронного устройства предписывают электронному устройству выполнять некоторые или все из этапов в способе согласно настоящему раскрытию.In some embodiments, this application also provides an electronic device that includes one or more processors, a memory, and one or more computer programs stored in the memory. One or more computer programs contain instructions that, when executed by an electronic device, cause the electronic device to perform some or all of the steps in the method of the present disclosure.
В некоторых вариантах осуществления настоящей заявки также предусмотрен машиночитаемый носитель данных, который может хранить программу, при исполнении которой могут выполняться некоторые или все из этапов в способе согласно настоящему раскрытию. В качестве вышеуказанного машиночитаемого носителя данных могут использоваться магнитный диск, оптический диск, постоянное запоминающее устройство (read-only memory, ROM), оперативное запоминающее устройство (random access memory, RAM) и т.д.Some embodiments of the present application also provide a computer-readable storage medium that can store a program that, when executed, can perform some or all of the steps in the method of the present disclosure. As the above-mentioned computer-readable storage medium, a magnetic disk, an optical disk, a read-only memory (ROM), a random access memory (RAM), etc. can be used.
В некоторых вариантах осуществления настоящей заявки также обеспечивается компьютерный программный продукт, который содержит исполняемые инструкции, которые при их исполнении на компьютере предписывают компьютеру выполнять некоторые или все из этапов в способе согласно настоящему раскрытию.In some embodiments of the present application, a computer program product is also provided that contains executable instructions that, when executed on a computer, cause the computer to perform some or all of the steps in the method of the present disclosure.
В вариантах осуществления настоящей заявки «по меньшей мере один» указывает на один или более, а «несколько» указывает на два или более. Выражение «и/или» описывает отношение ассоциации, указывая, что может быть три типа взаимосвязей. Например, A и/или B может выражать следующие ситуации: отдельно существует A, одновременно существуют A и B, отдельно существует B, при этом А и В могут быть как в единственном, так и во множественном числе. Символ «/» обычно указывает на то, что связываемые им объекты имеют отношение «или». Такие выражения как «по меньшей мере одно из следующего» соответствуют любой комбинации элементов, включая любую комбинацию одиночных элементов или множественных элементов. Например, по меньшей мере один из a, b и c может представлять: a, b, c, a-b, a-c, b-c или a-b-c, где a, b и c могут быть как одиночными, так и множественными.In embodiments of the present application, “at least one” indicates one or more, and “several” indicates two or more. The expression “and/or” describes a relationship of association, indicating that there can be three types of relationships. For example, A and/or B can express the following situations: A exists separately, A and B exist simultaneously, B exists separately, while A and B can be either singular or plural. The "/" symbol usually indicates that the objects it links have an "or" relationship. Expressions such as “at least one of the following” correspond to any combination of elements, including any combination of single elements or multiple elements. For example, at least one of a, b, and c may represent: a, b, c, a-b, a-c, b-c, or a-b-c, where a, b, and c may be single or multiple.
Несмотря на то, что некоторые конкретные варианты осуществления настоящего изобретения были подробно описаны с помощью примеров, специалисты в данной области техники должны понимать, что приведенные выше примеры предназначены только для иллюстрации и понимания, но не для ограничения объема настоящего изобретения. Специалисты в данной области техники должны понимать, что в вышеуказанные варианты осуществления могут быть внесены изменения без отступления от объема и сущности настоящего изобретения. Объем настоящего изобретения определяется прилагаемой формулой изобретения.Although certain specific embodiments of the present invention have been described in detail by way of examples, those skilled in the art should understand that the above examples are intended for illustration and understanding only and not to limit the scope of the present invention. Those skilled in the art will understand that changes may be made to the above embodiments without departing from the scope and spirit of the present invention. The scope of the present invention is defined by the appended claims.
Claims (17)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210369865X | 2022-04-08 | ||
CN2022112885744 | 2022-10-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2815924C1 true RU2815924C1 (en) | 2024-03-25 |
Family
ID=
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100332594A1 (en) * | 2004-12-30 | 2010-12-30 | Prabakar Sundarrajan | Systems and methods for automatic installation and execution of a client-side acceleration program |
US9183380B2 (en) * | 2011-10-11 | 2015-11-10 | Citrix Systems, Inc. | Secure execution of enterprise applications on mobile devices |
RU2584447C2 (en) * | 2013-10-21 | 2016-05-20 | Общество С Ограниченной Ответственностью "Яндекс" | Method and system for simultaneous installation of plurality of applications using false backup archive recovery |
US20160196126A1 (en) * | 2013-07-16 | 2016-07-07 | Dropbox, Inc. | System and method for installing a client application using a light installer |
US20190005267A1 (en) * | 2017-06-30 | 2019-01-03 | Vmware, Inc. | Dynamic privilege management in a computer system |
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100332594A1 (en) * | 2004-12-30 | 2010-12-30 | Prabakar Sundarrajan | Systems and methods for automatic installation and execution of a client-side acceleration program |
US9183380B2 (en) * | 2011-10-11 | 2015-11-10 | Citrix Systems, Inc. | Secure execution of enterprise applications on mobile devices |
US20160196126A1 (en) * | 2013-07-16 | 2016-07-07 | Dropbox, Inc. | System and method for installing a client application using a light installer |
RU2584447C2 (en) * | 2013-10-21 | 2016-05-20 | Общество С Ограниченной Ответственностью "Яндекс" | Method and system for simultaneous installation of plurality of applications using false backup archive recovery |
US20190005267A1 (en) * | 2017-06-30 | 2019-01-03 | Vmware, Inc. | Dynamic privilege management in a computer system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8464252B2 (en) | Per process virtual machines | |
US10379824B2 (en) | Method for static security enforcement of a DSL | |
US8151206B2 (en) | Modifying an order of processing of a task performed on a plurality of objects | |
KR101424303B1 (en) | A method for providing a thin client software development environment, a method for sharing a server-based software development project, and a computer-readable medium | |
TWI420338B (en) | Secure browser-based applications | |
EP3704689A1 (en) | Chat-based application interface for automation | |
JP7228751B2 (en) | Method and apparatus for authority management, computer equipment and storage medium | |
US10289397B2 (en) | Silent installation of software with dependencies | |
US7707558B2 (en) | Operating system loader modification | |
WO2017166448A1 (en) | Kernel vulnerability repair method and device | |
RU2815924C1 (en) | Method of installing programs which does not require multiple requests for permission, electronic device and computer-readable data medium | |
EP3191943B1 (en) | Memory privilege of a computing system | |
US10248534B2 (en) | Template-based methodology for validating hardware features | |
EP3005094B1 (en) | Information processing device, information processing method, and program | |
US9235427B2 (en) | Operating system load device resource selection | |
JP6307956B2 (en) | Information processing apparatus and information processing method | |
Gunasekera et al. | Rooting your android device | |
RU2638000C1 (en) | Method of monitoring execution system of programmable logic controller | |
GB2619793A (en) | Installation method needless of multiple requests for permissions, electronic device, and computer readable storage medium | |
EP4258103A1 (en) | Installation method needless of multiple requests for permissions, electronic device, and computer readable storage medium | |
WO2022031275A1 (en) | Detection of memory modification | |
Shepard et al. | PowerShell: Automating Administrative Tasks | |
US11915013B2 (en) | Operating system service for persistently executing programs | |
Wu et al. | IsolateGPT: An Execution Isolation Architecture for LLM-Based Agentic Systems | |
Ilijason et al. | Running in Production |