Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/64: Рейтинг темы: голосов - 64, средняя оценка - 4.73
2 / 2 / 0
Регистрация: 21.04.2011
Сообщений: 60

Завершение процесса при обнаружении другого процесса

21.04.2011, 15:38. Показов 12214. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Люди добрые подскажите пожалуйста как мне быть. Есть приложение которое следит за процессами в диспетчере, запущены 2 процесса - процесс1 и процесс2, если запускаем программу то она проверяет наличие процесса1, и если процесс1 запущен то проверяет есть ли процесс2 и если есть завершает его. Бьюсь как рыба об лед не понимаю в чем дело, вот код:

C#
1
2
3
4
5
6
7
8
9
10
11
System.Diagnostics.Process[] proc1;
            proc1 = System.Diagnostics.Process.GetProcessesByName("notepad");
            foreach (System.Diagnostics.Process ce in proc1)
                if (ce != Process.GetCurrentProcess())
                {
                    System.Diagnostics.Process[] proc2;
                    proc2 = System.Diagnostics.Process.GetProcessesByName("winamp");
                    foreach (System.Diagnostics.Process ce1 in proc2)
                        if (ce1 != Process.GetCurrentProcess())
                            ce1.Kill();
                }
Судя по моему коду смотрим есть ли процесс notepad, если он есть то ищем процесс winamp, если винамп нашелся мі его убиваем ce1.Kill, но все равно убивается 1й процесс блокнота, почему непоимаю, ошибок не показывает вродебы все правильно почему неполучается подскажите пожалуйста, тем более в коде ясно написано что ce1.Kill() тоесть 100% не 1й процесс потому что килл обрабатывается же во 2м процессе...Помогите. Спасибо.

ЗЫ. Не нашел подобных тем больше.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.04.2011, 15:38
Ответы с готовыми решениями:

Корректное завершение стороннего процесса
Из своей программы (Wrapper) запускаю вторую (Program). Программа Program - консольное приложение, которое при завершении записывает...

Завершение процесса после закрытия формы
Пишу приложение-клиент, которое принимает файлы по протоколу UDP. Хотелось бы, чтобы при закрытии формы завершался и процесс. Однако с...

Завершение процесса Excel после обработки файла
Доброго времени суток, Подскажите пожалуйста, как завершить процесс Excel после использования? Вот что я делаю: ...

15
145 / 145 / 26
Регистрация: 09.10.2009
Сообщений: 261
21.04.2011, 16:09
C#
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
        static public bool IsProcessOpen(string name)
        {
            return Process.GetProcesses().Any(clsProcess => clsProcess.ProcessName.Contains(name));
        }
 
        static public bool FindAndKillProcess(string name)
        {
            foreach (Process clsProcess in Process.GetProcesses())
            {
                if (clsProcess.ProcessName.StartsWith(name))
                {
                    clsProcess.Kill();
                    return true;
                }
            }
 
            return false;
        }
 
        static void Main()
        {
            if (IsProcessOpen("winamp"))
                if (IsProcessOpen("notepad"))
                    FindAndKillProcess("notepad");
        }
2
2 / 2 / 0
Регистрация: 21.04.2011
Сообщений: 60
22.04.2011, 11:57  [ТС]
Огромнейшее человеческое спасибо!!!!!

Добавлено через 19 часов 13 минут
Ув. ArtOfLife а не могли бы Вы еще подсказать как заставить находить не полное имя процесса а частивное, например "note" вместо "notepad" и чтобі завершались все процессі со словами "note". Спасибо.

Добавлено через 16 минут
И почему неработает перечисление если я хочу завершать несколько процессов, "notepad" , "AIMP2".
0
145 / 145 / 26
Регистрация: 09.10.2009
Сообщений: 261
22.04.2011, 15:20
C#
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
30
31
32
        static public bool IsProcessOpen(string name)
        {
            return Process.GetProcesses().Any(clsProcess => clsProcess.ProcessName.ToLower().Contains(name.ToLower()));
        }
 
        static public bool FindAndKillProcess(string[] names)
        {
            var killedProcesses = 0;
 
            foreach (var clsProcess in from name in names
                                           from clsProcess in Process.GetProcesses()
                                           where clsProcess.ProcessName.ToLower().Contains(name.ToLower())
                                           select clsProcess)
            {
                clsProcess.Kill();
                killedProcesses++;
 
                if (killedProcesses == names.Length)
                    return true;
            }
 
            return false;
        }
 
        static void Main()
        {
            var processesToKill = new[] { "note", "akel" };
 
            if (IsProcessOpen("winam"))
                if (IsProcessOpen("not"))
                    FindAndKillProcess(processesToKill);
        }
П.С. В примере выше были открыты winamp, notepad и akelpad. Последние 2 благополучно закрылись. В массив processesToKill просто заносите имена убиваемых процессов. You're welcome.
1
2 / 2 / 0
Регистрация: 21.04.2011
Сообщений: 60
22.04.2011, 17:40  [ТС]
Спасибо огромное еще раз!!!

Неловко Вас эксплуатировать, просто спрошу, возможно ли вообще реализовать следующее:

Есть программа prog.exe (моя программа) она следит за процессом Х если в процессах появляются вредные приложения или взломщики то программа завершает процесс Х который может поддвергнуться взлому. Проблема в том что если убить prog.exe то можно спокойно запустить взломщик и напасть на защищаемый Х. Так вот - возможно ли вообще сделать чтобы если убивают prog.exe то также завершался и процесс Х, и наоборот - если завершить Х то также и нужно завершить мою программу prog.exe потому что следить незачем.

Теоретически можно написать .dll который будет загружаться вместе с prog.exe и при завершении процесса prog.exe .dll будет завершать и Х, ну и соотв. наоборот, возможно ли так, или есть другие варианты реализации данной нужды? Мне хотя бы подсказки какие-то, на вести на мысль, потому что код думаю большой будет. Знаю что тут возможно понадобятся перехват АПИ функций, или поиск по хэндлу приложений, возможно ли получить отклык от програмы если ее просто убить, чтобы потом используя этот отклик завершить Х или prog.exe?

Если нет то значит нет Вы мне и так здорово помогли. Спасибо!

Добавлено через 20 минут
ЗЫ. Я перепутал, мне нужно было не закрывать много процессов изза одного а закрывать всегда один и тот же процесс при наличии нескольких других но всеравно спасибо!
0
2 / 2 / 0
Регистрация: 21.04.2011
Сообщений: 60
24.04.2011, 17:46  [ТС]
Неполучается переделать код чтобы закрывать один и тот же процесс при появлении многих, пишет ToLower не может быть в текущем контексте
0
145 / 145 / 26
Регистрация: 09.10.2009
Сообщений: 261
26.04.2011, 12:16
Цитата Сообщение от cosong Посмотреть сообщение
Неполучается переделать код чтобы закрывать один и тот же процесс при появлении многих, пишет ToLower не может быть в текущем контексте
Не совсем понял, что вы там напеределывали. Какая разница - один процесс, или n? Функция универсальная. Занесите в массив processesToKill ваш единственный элемент и программа будет искать и закрывать только его.
По остальным вопросам...
1) Как вы собираетесь определять наличие в списке процессов вредоносных приложений? По названию? Или вы решили написать свой антивирус?
2) Допустим, вы все же нашли способ определения вредоносных приложений в списке ваших процессов... Тогда закиньте все это в службу и производите опрос списка процессов по таймеру. Нашли вирус, закрыли ваше ПО. Хотя, затея сама по себе глупая, ибо если уж нормальный вирус появился в списке процессов и вы об этом узнали уже постфактум, то скорее всего ваше ПО уже заражено, и смысла в его закрытии нет никакого. В общем, если хотите защитить свое ПО, то сделайте селф-дефенс механизм, который будет работать на уровне перехвата API-функций с попытками обращения к вашему процессу. Либо поиграйтесь с привилегиями. В общем, задача далеко нетривиальная. Да и C# тут совершенно не подходит.
1
2 / 2 / 0
Регистрация: 21.04.2011
Сообщений: 60
26.04.2011, 16:18  [ТС]
Не совсем понял, что вы там напеределывали. Какая разница - один процесс, или n? Функция универсальная. Занесите в массив processesToKill ваш единственный элемент и программа будет искать и закрывать только его.
Я имел ввиду что мне нужно закрывать мое приложение при появлении нескольких, в списке перечисления я указываю приложения которые необходимо закрыть, а нужно указать список приложений при появлении которых нужно закрывать один и тот же процесс.

1) Как вы собираетесь определять наличие в списке процессов вредоносных приложений? По названию? Или вы решили написать свой антивирус?
2) Допустим, вы все же нашли способ определения вредоносных приложений в списке ваших процессов... Тогда закиньте все это в службу и производите опрос списка процессов по таймеру. Нашли вирус, закрыли ваше ПО. Хотя, затея сама по себе глупая, ибо если уж нормальный вирус появился в списке процессов и вы об этом узнали уже постфактум, то скорее всего ваше ПО уже заражено, и смысла в его закрытии нет никакого. В общем, если хотите защитить свое ПО, то сделайте селф-дефенс механизм, который будет работать на уровне перехвата API-функций с попытками обращения к вашему процессу. Либо поиграйтесь с привилегиями. В общем, задача далеко нетривиальная. Да и C# тут совершенно не подходит.
Нет не антивирус Вы правильно говорите я так и сделал таймер, опрос списка...На самом деле я хочу защитить игру, для игры существуют 2-4 взломщика имена процессов которых извесны, это довольно несложно поскольку нет никаких вирусов просто есть готовые взломщики, я пишу маленькую програмку которая висит в памяти и если появляется этот проесс взлома игры то игру надо закрыть. Для этого думаю вполне хватит же и C#. Вы мне вон помогли за что большое Вам спасибо, просто у меня осталось 3 проблем - мне нужно было сделать так чтобы при закрытии игры закрывалась и моя программа, и наоборот, чтобы если уничтожить процесс программы моей закрывалась и игра, чтобы предотвратить появление копий процессов ну и проблем связанных с этим, думал тут подойдет .dll или чтото в єтом роде...Ну и Ваш код только наоборот) чтобы закрывать всегда один процесс игры если найдется хотя бы один из 4х взломщиков)

Я почти все сделал по таймеру происходит проверка наличия процессов взломщиков только вот нужно завершать не несколько процессов а один при появлении хотябы одного из 4х взломщиков, так как в памяти могут быть 2 или 3 взломщика вот нужно найти каждый и если таковой имеется закрыть игру ну и чтобы одновременно с ней закрылась и моя програмка.

Если Вам не сложно то подскажите пожалуйста хотябы только по завершению процесса при выявление одного из 4х взломщиков. Извините что повторяюсь, просто уже не знаю что придумать.
0
145 / 145 / 26
Регистрация: 09.10.2009
Сообщений: 261
26.04.2011, 23:06
Как пример, создайте службу с ниже подобным кодом:
C#
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
using System;
using System.Diagnostics;
using System.Linq;
using System.ServiceProcess;
using System.Timers;
 
namespace ProcessWatcher
{
    public partial class ProcessWatcherService : ServiceBase
    {
        private const string MainProcess = "Game";
        private readonly string[] _targetProcesses = new[] { "target1", "target2", "target3" };
        private readonly Timer _checkProcessTimer = new Timer();
 
        public ProcessWatcherService()
        {
            InitializeComponent();
        }
 
        public bool TragetProcessAppeares()
        {
            return (from clsProcess in Process.GetProcesses()
                    from targetProcess in _targetProcesses
                    where clsProcess.ProcessName.ToLower().Contains(targetProcess.ToLower())
                    select clsProcess).Any();
        }
 
        public bool KillMainProcess()
        {
            foreach (Process clsProcess in
                Process.GetProcesses().Where(clsProcess => clsProcess.ProcessName.ToLower().Contains(MainProcess.ToLower())))
            {
                clsProcess.Kill();
 
                return true;
            }
 
            return false;
        }
 
        protected override void OnStart(string[] args)
        {
            _checkProcessTimer.Elapsed += CheckProcessTimer_Tick;
            _checkProcessTimer.Interval = 100;
            _checkProcessTimer.Enabled = true;
        }
 
        protected override void OnStop()
        {
            _checkProcessTimer.Enabled = false;
            KillMainProcess();
        }
 
        private void CheckProcessTimer_Tick(object sender, EventArgs e)
        {
            if (!TragetProcessAppeares())
                return;
 
            KillMainProcess();
        }
    }
}
Она будет постоянно висеть в процессах, сканируя список на наличие взломщиков из массива _targetProcesses. Как только вредитель появляется в процессах, служба завершает нашу игру MainProcess. Если же вредитель был запущен до запуска игры, то при попытке открытия последней, служба ее благополучно убьет. Вряд ли пользователь без прав сможет убить наш Watcher. Во-первых, он должен знать имя процесса. Во-вторых, Watcher придется именно убивать, т.к. корректная остановка службы приведет к закрытию и самой игры. Ну а если все же сможет убить, то в самой игре можно устроить подобного рода опрос на наличие запущенной службы:
C#
1
2
3
4
            var sc = new ServiceController("Game Watcher Service");
 
            if (sc.Status != ServiceControllerStatus.Running)
                // Закрываем приложение
Данный код можно поместить, например, в лоадер формы. Как вариант, процесс службы можно обозвать, скажем, svchost. Вряд ли кто-то додумается принудительно убивать что-то, носящее имя служебных хост-процессов Windows. А если и додумается, то тут скорее всего вклинится антивирус, который сам прихлопнет злодея за попытку осуществления диверсии в системе.
П.С. Зачем убивать наблюдателя вместе с игрой? Пусть висит постоянно в качестве службы.
1
2 / 2 / 0
Регистрация: 21.04.2011
Сообщений: 60
27.04.2011, 01:07  [ТС]
Спасибо Мне почемуто неприходило в голову сделать все в виде службы...Все очень понятно единственное немогу опробовать и настроить службу так как пишет ошибку, пробовал во всех версиях .NET 2.0/3.0/3.5/4.0

Ошибка 1 "WindowsService7.Service1.Dispose(bool)" : не найден метод, пригодный для переопределения E:\WindowsService7\WindowsService7\Servi ce1.Designer.cs 14 33 WindowsService7
В этом фрагменте кода, чесно говоря непонимаю в чем проблема...

C#
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
30
31
32
33
34
35
36
37
namespace WindowsService7
{
    partial class Service1
    {
        /// <summary> 
        /// Требуется переменная конструктора.
        /// </summary>
        private System.ComponentModel.IContainer components = null;
 
        /// <summary>
        /// Освободить все используемые ресурсы.
        /// </summary>
        /// <param name="disposing">истинно, если управляемый ресурс должен быть удален; иначе ложно.</param>
        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.[SIZE="6"]Dispose[/SIZE]();
            }
            base.Dispose(disposing);
        }
 
        #region Код, автоматически созданный конструктором компонентов
 
        /// <summary> 
        /// Обязательный метод для поддержки конструктора - не изменяйте 
        /// содержимое данного метода при помощи редактора кода.
        /// </summary>
        private void InitializeComponent()
        {
            components = new System.ComponentModel.Container();
            this.ServiceName = "Service1";
        }
 
        #endregion
    }
}
И если я не ошибаюсь то службу надо будет запустить не просто из .ехе файла? Насколько я помню требует установку службы перед ее запуском, или я что-то путаю? Можно ведь прсото создать лоадер который будет запускать сначала watcher а потом игру с проверкой на наличие watcher'a если служба запускается просто из .ехе то так и сделаю...Только вот ошибка эта непонятно почему

Добавлено через 14 минут
ЗЫ. У меня visual studio 2010 может проблема в версиях? Ваш код вставлял в Service1.cs а ошибка появляется в Servise1.Designer.cs.
0
145 / 145 / 26
Регистрация: 09.10.2009
Сообщений: 261
27.04.2011, 12:02
Так вы ведь названия неймспейса и класса службы не переименовали в соответствии с моим примером. Конечно, ведь мои ProcessWatcher и ProcessWatcherService != вашим WindowsService7 и Service1.
После компиляции установить службу можно следующим образом:
1) В командной строке переходим в C:\WINDOWS\Microsoft.NET\Framework\верси я фреймворка вашего приложения\.
2) Для установки службы дописываем: InstallUtil.exe "c:\myservice.exe", естественно заменяя путь и название исполняемого файла вашим собственным.
Для удаления службы используйте следующий синтаксис: InstallUtil.exe /u "c:\myservice.exe".
П.С. У меня тоже 2010 студия и семерка х64. Так что проблема явно не версиях. Ах да, еще не забудьте встроить в проект инсталлер для службы: правой кнопкой в дизайнере, там найдете соответствующий пункт. Потом настроете его - мелочи вроде названия, описания, отображаемого имени, типа запуска и т.п.
1
2 / 2 / 0
Регистрация: 21.04.2011
Сообщений: 60
27.04.2011, 14:47  [ТС]
Как я сразу недогадался то, ведь названия разные, точно, попробую все как Вы сказали, я только думаю как принудительно установить службу у пользователя на коспьютере? Возможно ли так вообще? Например я могу использовать install shield который поддерживает С# написать функцию которая будет устанавливать службу пользователю во время иснсталяции игры, или может лоадер который при запуске игры будет устанавливать службу? Как лучше будет реализовать?

ЗЫ. У меня тоже 7ка х64 и visual 2010 Ultimate
ЗЫ2. Просто я сейчас не дома как прийду сразу попробую все исправлю, установлю.
ЗЫ3. А вообще у меня сначала было консольное приложения которое прятало себя сразу после запуска в нем был таймер и функция сканировани процесов и все остальное, несомненно Ваш способ куда интереснее и лучше.

Добавлено через 2 часа 31 минуту
Странно, при установке службы требует имя пользователя и пароль вводил и новые и данные входа в систему пароль/имя все время пишет что неправильные данные и установка откатывается.
0
145 / 145 / 26
Регистрация: 09.10.2009
Сообщений: 261
27.04.2011, 18:43
Лучше конечно устанавливать службу при установке самой игры. Пользователь вряд ли будет ставить игру не под администратором системы, так что проблем быть не должно.
Вы инсталлер добавили в проект? Вот в настройках serviceProcessInstaller, в поле Account видимо стоит User. Нужно ставить LocalSystem.
1
2 / 2 / 0
Регистрация: 21.04.2011
Сообщений: 60
28.04.2011, 01:51  [ТС]
Огромное Вам спасибо за все, все получилось и со всем окончательно разобрался, появится монетка я вернусь, найду Вас и отблагодарю))))) Спасибо!!! Но вдруг если что спрошу еще)
0
2 / 2 / 0
Регистрация: 21.04.2011
Сообщений: 60
29.04.2011, 13:41  [ТС]
Я извиняюсь еще раз, уперся в Ваш код:

var sc = new ServiceController("Game Watcher Service");

if (sc.Status != ServiceControllerStatus.Running)
// Закрываем приложение
Можно ли его занести в отдельный лоадер? например в консольное приложение неполучается занести проверку так как нет пространства имен System.Service и System.ServiceProcess тоже, а если создавать в коде службы то впринципе все работат но уже как отдельная служба, может создать нужно отдельный тип проекта какой-то?

Добавлено через 22 минуты
Добавил референс System.ServiceProcess, тогда ругается на код, а референса System.ServiceController нету вродебы.

Добавлено через 34 минуты
Мои ошибки, разобрался.
0
0 / 0 / 0
Регистрация: 21.07.2011
Сообщений: 61
24.08.2011, 10:09
Цитата Сообщение от ArtOfLife Посмотреть сообщение
C#
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
        static public bool IsProcessOpen(string name)
        {
            return Process.GetProcesses().Any(clsProcess => clsProcess.ProcessName.Contains(name));
        }
 
        static public bool FindAndKillProcess(string name)
        {
            foreach (Process clsProcess in Process.GetProcesses())
            {
                if (clsProcess.ProcessName.StartsWith(name))
                {
                    clsProcess.Kill();
                    return true;
                }
            }
 
            return false;
        }
 
        static void Main()
        {
            if (IsProcessOpen("winamp"))
                if (IsProcessOpen("notepad"))
                    FindAndKillProcess("notepad");
        }
Подскажите, в чём может быть проблема? Использую этот код, но выдаются 2 ошибки, связанные с фигурными скобками.
C#
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
 
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void Form1_Load(object sender, EventArgs e)
        { //на этой скобке ошибка "} expected"
 
            static public bool IsProcessOpen(string name)
            {
                return Process.GetProcesses().Any(clsProcess => clsProcess.ProcessName.Contains(name));
            }
 
            static public bool FindAndKillProcess(string name)
            {
                foreach (Process clsProcess in Process.GetProcesses())
                {
                    if (clsProcess.ProcessName.StartsWith(name))
                    {
                        clsProcess.Kill();
                        return true;
                    }
                }
 
                return false;
            }
 
            static void Main()
            {
                if (IsProcessOpen("winamp"))
                    FindAndKillProcess("notepad");
            }     
       }
    }
} //на этой скобке ошибка "Type or namespace definition, or end-of-file expected"
Хотя на взгляд вроде бы все фигурные скобки открыты и закрыты правильно, болтающихся скобок нигде нет.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.08.2011, 10:09
Помогаю со студенческими работами здесь

Ошибка "appcrash kernelbase.dll" при запуске другого процесса
добрый день. образовалась такая вот проблема. пишу на c#, из кода одного приложения в цикле запускается другое приложение через var...

Вывод MessageBox из окна другого процесса
Помогите реализовать вывод меседжбокса из окна другого процесса

Как лучше приостановить службу из другого процесса?
Имеется служба самописная, и имеется клиент , работающий с ней. Как лучше выполнять приостановку службы и её возобновление???

Вызов функции другого процесса (неверные регистры)
Всем привет. Я пытаюсь вызвать функцию из другого процесса, но вот беда - регистры формируются не те, из-за чего вызов функции происходит...

Получить ID процесса если известно его хэндл, название окна или название процесса
а как получить ID процесса если известно его хэндл, название окна или название процесса?


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru