Форум программистов, компьютерный форум, киберфорум
VBScript/JScript/WSH/WMI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
11 / 11 / 0
Регистрация: 07.10.2016
Сообщений: 196
VBS

Скрипт запуска программы, нажатия кнопки, копирования данных из окна и записи их в файл

29.07.2022, 06:56. Показов 3814. Ответов 36
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет.

В общем задача такая, необходимо запустить файл .exe в нём нажать кнопку

и в открывшемся окне считать данные и записать в файл.

С первым пунктом (открытие файла .exe) и последним (запись данных в файл) проблем нет, выполню сам. Но вот не знаю, как нажать кнопку и в открытом окне считать нужную информацию, т. е. инфа нужна не вся, а только та, что указана стрелкой (серийный номер ключа). Для того, чтобы в программе нажать определенную кнопку, необходимо знать её идентификатор, а вот как этого добиться в VBS я не знаю, да и потом с данными тоже, где-то встречал скрипт для копирования данных из определенного окна, но потерял ссыль.
Кто, что знает поделитесь опытом, либо, если есть примеры, направьте.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.07.2022, 06:56
Ответы с готовыми решениями:

Создать команду для записи данных после нажатия кнопки
Помогите не могу создать команду для записи даных после нажатия кнопки

Не включается ноутбук Acer после нажатия кнопки запуска
Сломался ноутбук. Мне переустановили windows 7. Затем 2 дня он работал на этой Windows. Потом ночью выключил ноут лег спать. Утром...

Запуск компьютера через 5 минут после нажатия кнопки запуска
компьютер запускается через 5 минут после нажатия кнопки запуска (и блок питания пищит когда запустился уже)

36
7690 / 2887 / 1110
Регистрация: 06.06.2017
Сообщений: 9,817
01.08.2022, 14:13
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от VKont Посмотреть сообщение
но оказалось нет
через FSO такое не работает (может я ошибаюсь), но упорно вылетает ошибка, если указывать %temp%\xxx.html.
Только на днях человеку снизу объяснял.
Для получения папки Temp используется FSO.GetSpecialFolder(2). Только повторяю, парсить (нет такого слова "парсировать") надо не с FSO, а с htmlfile.

Цитата Сообщение от VKont Посмотреть сообщение
По поводу библиотеки опять ничего не понял
Я вам 2 ссылки дал. Там всё чётко и подробно расписано, что это за библиотека и что с ней можно делать.

Цитата Сообщение от VKont Посмотреть сообщение
чуть-чуть поправил код:
А зачем вы всё убираете в условие? Вдруг у человека уже открыта программа? И что такое ACTIVE? Где значение?
Попробуйте такой вариант в скрытом режиме:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Const Name = "Утилита диагностики Guardant"
With CreateObject("AutoItX3.Control")
   If .ProcessExists("grddiag.exe") = 0 Then
      .Run "C:\Program Files\Common Files\Guardant\Drivers\grddiag.exe",, 0
      .WinWait Name
      .Sleep 2000
   End If
   .Opt "WinDetectHiddenText", 1
   .ControlClick Name,"","Button7"
   .WinWait "[CLASS:IEFrame]"
   .WinKill "[CLASS:IEFrame]"
   .ProcessClose "iexplore.exe"
   .ProcessClose "grddiag.exe"
End With
Цитата Сообщение от VKont Посмотреть сообщение
Даже не знаю, как с этим моментом быть
А надо бы знать. Я вам в конце 15 поста привёл решение без регистрации. Вы до сих пор его не испробовали?

P. S.: Я до вечера отлучаюсь, так что ответа cразу не ждите.
1
11 / 11 / 0
Регистрация: 07.10.2016
Сообщений: 196
01.08.2022, 14:40  [ТС]
Цитата Сообщение от FlasherX Посмотреть сообщение
Я вам в конце 15 поста привёл решение без регистрации. Вы до сих пор его не испробовали?
Я даже не догнал, что там к чему. Т. е. мне нужно из архива запустить wscript.exe с моим скриптом? Тогда что ли и в скрипте отработает AutoItX3 на любом ПК без регистрации?

Цитата Сообщение от FlasherX Посмотреть сообщение
И что такое ACTIVE? Где значение?
На счёт ACTIVE не понял. Вы мне дали пример .ControlClick "[ACTIVE]","","Button2". Из описания ControlClick я узнал, что первое значения это заголовок окна, либо класс, либо состояние, либо координаты, либо экземпляр. Т. к. Ваш пример не сработал, я убрал кавычки и квадратные скобки и всё заработало, т. е. всё же нужно указывать без них

Цитата Сообщение от FlasherX Посмотреть сообщение
Я вам 2 ссылки дал.
Спасибо, разобрался, когда прочитал. До этого был не в курсе, и прочитал недостоверную информацию о библиотеке.

Цитата Сообщение от FlasherX Посмотреть сообщение
Для получения папки Temp используется FSO.GetSpecialFolder
Понял, попробую этим методом.

Цитата Сообщение от FlasherX Посмотреть сообщение
парсить надо не с FSO, а с htmlfile.
Это я понимаю, возможно не так выразился.
0
7690 / 2887 / 1110
Регистрация: 06.06.2017
Сообщений: 9,817
02.08.2022, 00:12
Цитата Сообщение от VKont Посмотреть сообщение
Т. е. мне нужно из архива запустить wscript.exe с моим скриптом?
Зачем из архива? Его полностью распаковать требуется в оригинальном виде.
Цитата Сообщение от VKont Посмотреть сообщение
Тогда что ли и в скрипте отработает AutoItX3 на любом ПК без регистрации?
Конечно.

Цитата Сообщение от VKont Посмотреть сообщение
Из описания ControlClick я узнал, что первое значения это заголовок окна, либо класс, либо состояние, либо координаты, либо экземпляр.
Не только. См. Расширенные установки поиска окна или Advanced Window Descriptions. Поскольку в моём первом коде я ожидаю активации окна, то сразу после этого логично задействоовать "[ACTIVE]". В принципе, при активном окне она и необязательна, можно и "" писать и пустую переменную (A, Z, ACTIVE, ABRACADABRA, без разницы). Но лучше вообще отправлять нажатие в окно в любом состоянии, поэтому я и привёл второй вариант.

Цитата Сообщение от VKont Посмотреть сообщение
Ваш пример не сработал
А второй?

Цитата Сообщение от VKont Посмотреть сообщение
Это я понимаю
Ну и как успехи?
0
11 / 11 / 0
Регистрация: 07.10.2016
Сообщений: 196
02.08.2022, 02:57  [ТС]
Цитата Сообщение от FlasherX Посмотреть сообщение
А второй?
Второй попробовал, не работает. В виду того, что Вы окна вообще скрываете, то не понятно, что там происходит. Как итог в диспетчере задач висит процесс WBS.

Тут необходимо учитывать такую вещь, чтобы скрипт отрабатывал правильно, кнопку нужно нажимать, когда окно полностью открыто. А при открытии, ПО считывает ключи и это происходит не мгновенно, соответственно нужная кнопка ещё не доступна, если в это время скриптом произвести эмуляцию нажатия, то соответственно ничего не произойдёт. Поэтому тут следует правильно выдержать паузу, секунды 4-5 точно нужно, потому как считывание ключей порой происходит чуть дольше или наоборот чуть быстрее.

В итоге, вот такой вот скрипт отрабатывает у меня отлично:
Visual Basic
1
2
3
4
5
6
7
8
9
With CreateObject("AutoItX3.Control")
    If Not .ProcessExists("grddem32.exe") Then
        .Run "C:\Program Files\Common Files\Guardant\Drivers\grddem32.exe",, .SW_SHOWNORMAL
        WScript.Sleep 4000
        .ControlClick ACTIVE,"","Button7"
    End If
    WScript.Sleep 2000
    .ProcessClose "grddem32.exe"
End With
Также в зависимости, видимо от версии драйвера, одно и тоже ПО может называться по-разному, у одних grddiag.exe, у меня grddem32.exe. Это в своём скрипте тоже буду учитывать. Вообще скрывать окно мне нет необходимости, пользователь просто запустит скрипт и будет ждать соответствующего сообщения, что работа скрипта завершена, поэтому пусть на рабочий стол всё выводится. Теперь буду пробовать парсить html, я уже посчитал нужно мне значение это 5-ый тег <table>, 3-ий тег <tr>, 4-ый тег <td>.
0
7690 / 2887 / 1110
Регистрация: 06.06.2017
Сообщений: 9,817
02.08.2022, 03:55
Цитата Сообщение от VKont Посмотреть сообщение
Второй попробовал, не работает.
А если Sleep увеличить? У меня с Button4 работает.

Цитата Сообщение от VKont Посмотреть сообщение
Тут необходимо учитывать такую вещь
Ошибаетесь. Нажатие можно посылать в любое окно с заданным заголовком/классом, а с учётом 8 строки и в скрытое.

Цитата Сообщение от VKont Посмотреть сообщение
А при открытии, ПО считывает ключи и это происходит не мгновенно
Это приложение и первые 2 кнопки долго отрисовывает. Я это ещё в начале тестов наметил.
0
11 / 11 / 0
Регистрация: 07.10.2016
Сообщений: 196
02.08.2022, 04:26  [ТС]
Цитата Сообщение от FlasherX Посмотреть сообщение
Ошибаетесь. Нажатие можно посылать в любое окно с заданным заголовком/классом
Серьёзно? Я что-то этого не заметил, если паузы нет, то кнопка не нажимается уже после того, как становится активной. И наоборот, если пауза выдержана как надо, то всё нажимается.

Не могу что-то понять, как из окна IE считать данные? Нужно ли мне отдельный объект IE при этом создавать или как-то можно уже из окна считывать? Пока не получается.

Добавлено через 14 минут
Насколько понял, вообще сначала создается объект IE
Visual Basic
1
Set objIE = CreateObject( "InternetExplorer.Application" )
а далее соответствующая страница в него загружается путём
Visual Basic
1
objIE.Navigate "about:blank"
но мне то уже ничего загружать не нужно, она открыта. Как передать в объект эту страницу?
0
7690 / 2887 / 1110
Регистрация: 06.06.2017
Сообщений: 9,817
02.08.2022, 04:30
Цитата Сообщение от VKont Посмотреть сообщение
Серьёзно?
Абсолютно. Возможность нажимать клавиши в неактивные окна никак не связано со своевременностью отрисовки кнопок. Не путайте. Пауза у меня тоже есть. Я её предложил увеличить, но ответа на вопрос так и не увидел.

Цитата Сообщение от VKont Посмотреть сообщение
Не могу что-то понять, как из окна IE считать данные?
А разве речь шла про окно IE? Начиная с 8 поста разговоры касались только парсинга html-файла. Разницу совсем не улавливаете?
0
11 / 11 / 0
Регистрация: 07.10.2016
Сообщений: 196
02.08.2022, 04:37  [ТС]
Цитата Сообщение от FlasherX Посмотреть сообщение
А разве речь шла про окно IE? Начиная с 8 поста разговоры касались только парсинга html-файла. Разницу совсем не улавливаете?
Конечно улавливаю, видимо тут с беготнёй я уже на ходу решил всё изымать из окна, сам себе удивляюсь, как быстро я меняю решения

Добавлено через 2 минуты
Хорошо, что Вы меня вовремя поправили, а то я ведь почти начал "ракеты в космос" отправлять и думаю, от чего ничего не выходит.
0
7690 / 2887 / 1110
Регистрация: 06.06.2017
Сообщений: 9,817
02.08.2022, 04:49
Цитата Сообщение от VKont Посмотреть сообщение
уже на ходу решил всё изымать из окна, сам себе удивляюсь, как быстро я меняю решения
Ну так срочно меняйте обратно. "Здесь вам не тут!"

Хотя если есть уверенность, что окно IE 100% всегда будет одно (ну или оно имеет эксклюзивный заголовок), то можно обратиться и к нему:
Visual Basic
1
2
3
For Each W In CreateObject("Shell.Application").Windows
   If InStr(W.Name, "Internet Explorer") Then Set oIE = W: Exit For
Next
Но я предпочёл бы свой вариант с закрытием IE и работой через htmlfile.
1
11 / 11 / 0
Регистрация: 07.10.2016
Сообщений: 196
02.08.2022, 04:51  [ТС]
Цитата Сообщение от FlasherX Посмотреть сообщение
Но я предпочёл бы свой вариант с закрытием IE и работой через htmlfile.
Хорошо, я тоже сейчас пробую парсить через html.
0
7690 / 2887 / 1110
Регистрация: 06.06.2017
Сообщений: 9,817
02.08.2022, 04:55
Цитата Сообщение от VKont Посмотреть сообщение
через html.
В смысле "html"? CreateObject("htmlfile").
0
11 / 11 / 0
Регистрация: 07.10.2016
Сообщений: 196
02.08.2022, 07:01  [ТС]
В общем пытался и пыжился и ничего не получается, всё время какие-то ошибки
Visual Basic
1
2
3
4
Set FSO = CreateObject("Scripting.FileSystemObject")
Set folder_temp = FSO.GetSpecialFolder(2)
Set file = folder_temp & "\Guardant Diagnostic Utility report( ).html"
Set hfile = FSO.OpenTextFile(file, 1, True, 0)

Попробовал сделать проще и вообще проверить, а есть ли "мальчик"
Visual Basic
1
2
3
4
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("c:\testfile.txt", True)
a.WriteLine("This is a test.")
a.Close
тоже не работает. А не проблема ли с правами в UAC? Так-то у меня полные права администратора, но я уже и не знаю куда и что копать.
0
11 / 11 / 0
Регистрация: 07.10.2016
Сообщений: 196
02.08.2022, 09:59  [ТС]
Всё сделал, чтобы считывалось сразу из окна, потому как не знаю, в чём там загвоздка при работе с файлом

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
'=====
With CreateObject("AutoItX3.Control")
    If Not .ProcessExists("grddem32.exe") Then
        .Run "C:\Program Files\Common Files\Guardant\Drivers\grddem32.exe",, .SW_SHOWNORMAL
        WScript.Sleep 4000
        .ControlClick ACTIVE,"","Button7"
    End If
    WScript.Sleep 2000
    
    Set oIE = Nothing
    
    For Each W In CreateObject("Shell.Application").Windows
        If InStr(W.Name, "Internet Explorer") Then 
            Set oIE = W
            Set objNodeList = oIE.Document.getElementsByTagName("td")
            i = 0
            For Each td in objNodeList
                If i = 25 Then
                    msgbox td.innerText
                    WScript.Sleep 2000
                End If
                i = i + 1
            Next
        End If
    Next
    
    .ProcessClose "grddem32.exe"
    .ProcessClose "iexplore.exe"
End With
Добавлено через 54 минуты
Всё, протестировал у себя и у некоторых других пользователей. Отдельное спасибо за предоставленную информацию в 15 посте, т. к. без неё смысл скрипта по большому счёту был бы не полон.

Действительно, разные драйвера для ключей, а соответственно немного и окна у приложений разные, поэтому для другой версии пришлось немного доработать. Но в целом получилось очень классно!

Добавлено через 35 минут
Во блин, как теперь в сети нечто подобное (C:\Path\to\AutoItX3\wscript.exe D:\Path\to\screen_watch.wsf) в батнике прописать, да ещё и с кириллицей

Добавлено через 1 час 2 минуты
Батником в сети наверное не получится произвести запуск типа "сетевой путь\wscript.exe сетевой путь\scripr.vbs", поэтому возможно как-то запускать это дело из самого скрипта?

У меня есть основной скрипт, который собирает кое какие данные с пользовательских ПК, потом внедрил в него вот это, что собирал в данной теме по сбору номера ключа Guardant. Так что, если в основном скрипте доходя до момента, когда скрипт должен собрать данные по ключу, запускать этот самый wscript.exe с отдельным скриптом по сбору данных о ключах, получится ли так? Регистрировать библиотеку AutoItX3 на каждом пользовательском ПК точно не вариант.
0
7690 / 2887 / 1110
Регистрация: 06.06.2017
Сообщений: 9,817
02.08.2022, 11:08
Цитата Сообщение от VKont Посмотреть сообщение
В общем пытался и пыжился и ничего не получается, всё время какие-то ошибки
Хорош мучиться. Приложите, наконец, запрошенный html-файл ("секретные" значения можете указать иные, это неважно), покажу, как правильно. А то текста на 2 страницы, да всё вокруг да около. Вот приблизительный вариант с blabla (я не вижу, что там у вас за теги и атрибуты):
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
With CreateObject("Scripting.FileSystemObject")
   Text = .OpenTextFile(.GetSpecialFolder(2) & "\Guardant Diagnostic Utility report( ).html").ReadAll
End With
Set oHTML = CreateObject("htmlfile")
With oHTML
   .DesignMode = "on": .Write Text
   For Each i In .getElementsByTagName("td")
      If i.getAttribute("blabla") = "blabla" Then Key = i.getAttribute("blabla"): Exit For
   Next
   .Close
End With
Set oHTML = Nothing
Цитата Сообщение от VKont Посмотреть сообщение
Всё сделал
Ну пока левой ногой. WScript в 5 строке не нужен. 8, 10 и 20 вообще бесполезны. Я выше показывал, как ожидать окно IE по классу, а потом прибивать его, что более правильно, почти незаметно и быстро, нежели произвольная задержка и банальное завершение.
Ну и конечно, не хватает Exit For для 1 цикла (он у меня явно не для красоты указан).

Цитата Сообщение от VKont Посмотреть сообщение
Батником в сети наверное не получится произвести запуск типа
А не надо батником. Ярлык на что? Если папка расшарена, то что мешает попробовать?
1
11 / 11 / 0
Регистрация: 07.10.2016
Сообщений: 196
02.08.2022, 12:41  [ТС]
Цитата Сообщение от FlasherX Посмотреть сообщение
WScript в 5 строке не нужен
На счёт паузы в этой строке не уверен, потому как убираю её, кнопка не нажимается, ставлю, работает. Точно также на других ПК, где считывание ключа происходит ещё дольше и соответственно нужная кнопка долго не становится активной. Если паузу вообще убрать, то после того, как ключ обнаружится программа полностью закрывается без нажатия кнопки. На счёт остальных согласен, ну так это они для красоты, вернее в ходе работы просто не убрал.

Добавлено через 16 минут
Exit For
Добавлю

Добавлено через 7 минут
Цитата Сообщение от FlasherX Посмотреть сообщение
А не надо батником. Ярлык на что? Если папка расшарена, то что мешает попробовать?
Т. е. если я в объекте ярлыка укажу "C:\Test\wscript.exe" script.vbs, то будет работать? Или как там правильно "C:\Test\wscript.exe script.vbs"

Добавлено через 22 минуты
А теперь сижу и думаю, я снова нагородил чего-то, ведь скрипт у меня запускался на других ПК, я его выкладывал на сетевой диск, который подключен ко всем ПК, потом соединил его с основным своим скриптом, он у меня отработал как нужно, а на других перестал запускаться, ссылаясь на библиотеку. Значит дело не в батнике и не в сети. Блин ладно, утро вечера мудренее, жара невыносимая, лето, усталость, сошлёмся на данные факторы

Добавлено через 6 минут
Кстати хотел спросить, пост №15, файл wscript.exe с которым запускается скрипт и не нужно регистрировать библиотеку AutoItX3 на ПК, он как работает и что он вообще делает и даёт? Дело в том, что не происходит ли какого-нибудь конфликта между моим скриптом и этим файлом и поэтому происходит ошибка?
0
7690 / 2887 / 1110
Регистрация: 06.06.2017
Сообщений: 9,817
02.08.2022, 12:57
Цитата Сообщение от VKont Посмотреть сообщение
На счёт паузы в этой строке не уверен
Я разве написал .Sleep не нужен? Или таки WScript?

P. S.: Ладно. Я смотрю, мою просьбу и предложение в очередной раз отфутболивают. В таком случае я здесь закругляюсь.
0
11 / 11 / 0
Регистрация: 07.10.2016
Сообщений: 196
02.08.2022, 13:08  [ТС]
Цитата Сообщение от FlasherX Посмотреть сообщение
Я разве написал .Sleep не нужен? Или таки WScript?
Ну извиняюсь, не так понял. Работаю по аналогии с примерами в сети, синтаксис VBS не знаю.

Цитата Сообщение от FlasherX Посмотреть сообщение
Я смотрю, мою просьбу и предложение в очередной раз отфутболивают.
Не совсем ясно о какой просьбе/предложении речь, если выложить файл .html, то зачем? Вы мне написали пример, если он мне понадобится в будущем, то применю. Я уже сделал парсинг с окна, второй метод парсинга с файла в данном случае пока не нужен. В любом случае очень благодарен!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.08.2022, 13:08

Как испольнить запуск кнопки в WindowsForm, после запуска программы (автозапуск кнопки)
реализация запуску кнопки сразу же после запуска программы, тоесть надо запустить кнопку без клика сразу же после запуска программы,...

Не получается убрать белую рамку и вид окна в дизайнере не соответсвует реальному виду окна после запуска программы
Делал свой простенький Splash Screen с прогресс баром. В 2012-ой студии под Windows 8 все было ок. А вот я запустил этот самый проект в...

Скрипт нажатия кнопки
подскажите скрипт для нажатия этой кнопки перепробывал кучу методов толи чтот не правельно делаю толи не пашет) &lt;div...

VBS скрипт для отображения окна во время копирования
Здравствуйте! Подскажите пожалуйста как сделать или можно так сделать что бы во время копирования отображалось сообщение например идет...

Как скрепить три макроса для запуска от нажатия одной определённой кнопки ?
Как можно соединить вот эти три макроса,(какой командой в коде это возможно сделать,если это возможно конечно)чтобы они запускались в такой...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
37
Ответ Создать тему
Новые блоги и статьи
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru