Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.87/15: Рейтинг темы: голосов - 15, средняя оценка - 4.87
Заблокирован

Программно найти окно скайпа

03.05.2014, 20:11. Показов 2980. Ответов 37
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день! Я не силен в таких вещах, помогите мне программно найти окно скайпа.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.05.2014, 20:11
Ответы с готовыми решениями:

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

Найти файл запуска скайпа винды
У встроенного в винду клиента Skype должен быть файл запуска, я привык искать такой так: запускаю собственно, прогу, потом в диспетчере...

Программно свернуть окно
Всем привет! Решил создать свои кнопки в приложении и не знаю какая команда должна выполнятся при нажатии на кнопку свернуть. Помогите...

37
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
03.05.2014, 20:45
Лучший ответ Сообщение было отмечено dev.Free как решение

Решение

Цитата Сообщение от inv.DS Посмотреть сообщение
программно найти окно скайпа.
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
 
 
Private Sub Form_Load()
If FindWindow("tSkMainForm", vbNullString) > 0 Then
MsgBox "Skype найден"
Else
MsgBox "Skype НЕ найден"
End If
 
End Sub
Добавлено через 11 минут
Продвинутая версия, читает заголовок Скайпа
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
 
 
Private Sub Form_Load()
Dim hwnd As Long
Dim MyStr As String
    'Создаем буфер
MyStr = String(100, Chr$(0))
 
hwnd = FindWindow("tSkMainForm", vbNullString)
If hwnd > 0 Then
GetWindowText hwnd, MyStr, 100 ' Читаем заголовок Скайпа
MsgBox "Skype найден - " & MyStr
Else
MsgBox "Skype НЕ найден"
End If
 
End Sub
1
Заблокирован
04.05.2014, 05:42  [ТС]
Pro_grammer, Друг, а как мне обратиться к полям ввода логина и пароля. Видишь ли библиотека SKYPE4COMLib вроде как я понял не поддерживает авторизацию. На форуме одном нашел сообщение посетителя, там он на С++ делает через нахождение окна и обращение к полям окна авторизации.
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
04.05.2014, 06:01
Цитата Сообщение от inv.DS Посмотреть сообщение
обратиться к полям ввода логина и пароля.
А не проще ли настроить Скайп на автоматическую авторизацию? У меня лично так, потому и не вижу этих полей
Посмотреть бы, как это сделано на Си. Ввод логина и пароля там при помощи сервера IE, на дочерние окна не делится, нет возможности обратится отдельно к полям окна авторизации. И мне кажется, зависим от версии самого скайпа.
0
Заблокирован
04.05.2014, 06:35  [ТС]
Более подробно идею:

1. Временно по причине пока не установленной на нашем сервере отключился FTP доступ для обновления программ. Решение проблемы займет около 2 недель (как было сказано, администраторами)
2. Было решено сделать получение сообщений и обработку их со скайпа. Это мы сделали, то есть отправляем файл, на той стороны принимаем и распаковываем. С этим проблем не возникло.
3. Основная причина, обращения сюда, это потому, что наши пользователи работают со скайпом, из своих личным логинов, а есть наши, с балансом там для звонков и прочим. Вот как выйти из личных аккаунтов мы тоже сделали, а войти не можем.

P.S. Пока не могу найти тот код, вот на PHP.

Вот сообщение с того форума, ссылку выкладывать нельзя...

Выкладываю из своих сорцов способ смены пользователя Skype:

1. Пролог
Решил написать небольшую статью опять про тот-же Skype.
На этот раз я автоматизирую смену аккаунтов Skype с помощью WinAPI, т.к. с помощью обертки от девелоперов Skype ничего сделать не получится (Будем идти через зад).

2. Действия
Я не буду заострять внимание на создании проекта, расстановки баттонов, мемо и т.д., а сразу начну по-делу. Для того, чтобы завершить процесс (в нашем случае Skype) я использую следущую функцию, найденную на просторах инета:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 function KillTask(ExeFileName: string): integer;
const
  PROCESS_TERMINATE = $0001;
var
  Co: BOOL;
  FS: THandle;
  FP: TProcessEntry32;
begin
  result := 0;
  FS := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
  FP.dwSize := Sizeof(FP);
  Co := Process32First(FS, FP);
  while integer(Co) <> 0 do
  begin
    if ((UpperCase(ExtractFileName(FP.szExeFile)) = UpperCase(ExeFileName)) or
      (UpperCase(FP.szExeFile) = UpperCase(ExeFileName))) then
      Result := Integer(TerminateProcess(OpenProcess(PROCESS_TERMI  NATE, BOOL(0),
        FP.th32ProcessID), 0));
    Co := Process32Next(FS, FP);
  end;
  CloseHandle(FS);
end;
Далее интересснее. Функция запуска Skype: (В нем нет смысла, его можно с библиотеки запустить)

PHP
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
function runSkype(sLogin: string; sPass: string): Boolean;
var
  // Переменные для хранения дескрипторов окон
  hParent, hChild: HWND;
  // Переменная счетчика цикла
  i: integer;
begin
  // Запускаем Skype. Не забываем указать путь к Skype на машине...
  // Можно считывать его автоматически по ключу реестра, который находится по адресу:
  // HKEY_LOCAL_MACHINE\SOFTWARE\Skype\Phone\SkypePath
  WinExec(PChar('C:\Program Files\Skype\Phone\Skype.exe' + ' /secondary'),
    SW_NORMAL);
  hParent := 0;
  i := 0;
  // Пока нет окна для входа в учетку
  while hParent = 0 do
  begin
    inc(i);
    hParent := FindWindow(PChar('TLoginForm.UnicodeClass'), PChar('Skype'));
    Sleep(1000);
    // Если его нет более ~20 секунд, выходим из функции
    if i = 20 then
    begin
      result := false;
      Exit;
    end;
  end;
 
  //Добираемся до наших полей Логин и Пароль
  hChild := FindWindowEx(hParent, 0, PChar('TLoginControl'), nil);
  hParent := hChild;
  hChild := FindWindowEx(hParent, 0,
    PChar('TNavigableTntComboBox.UnicodeClass'), nil);
  // Вводим логин
  SendMessage(hChild, WM_SETTEXT, 0, lparam(PChar(sLogin)));
  hChild := FindWindowEx(hParent, 0, PChar('TNavigableTntEdit.UnicodeClass'),
    nil);
  // Вводим пароль
  SendMessage(hChild, WM_SETTEXT, 0, lparam(PChar(sPass)));
  // И, вуаля, посылаем Return(Enter) в само окно чтобы подтвердить логин!
  PostMessage(FindWindow(PChar('TLoginForm.UnicodeCl  ass'), PChar('Skype')),
    WM_KEYDOWN, VK_RETURN, 0);
end;
Далее самый сок, функция смены пользователя:

PHP
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
procedure changeAcc;
var
  login, pass, currHandle: string;
  // Дескриптор хранения подтверждения авторизации
  hAccept: HWND;
  i: Integer;
begin
  { По желанию можно удалить историю аккаунта Skype полностью
    С которого он был авторизирован до закрытия
   currHandle := getAppDataPath + 'Skype\' + skype.CurrentUser.Handle +
    '\main.db'; }
    // Убиваем процессы
  KillTask('skype.exe');
  KillTask('skypePM.exe');
  { Как раз таки само удаление этого файла main.db
  if FileExists(currHandle) then
    DeleteFile(currHandle); }
 
  login := 'Ваш логин';
  pass := 'Ваш пароль';
 
  // Если логин не удался, выходим из функции
  if not runSkype(login, pass) then
    Exit;
 
  // Пока не можем приаттачиться, ждем
  while not skype.AttachmentStatus = SKYPE4COMLib_TLB.apiAttachAvailable do
  begin
    Sleep(100);
  end;
 
  // Далее обходим авторизацию Skype. Как, что и зачем
  // Описано в статье: http://zemus.us/05/obxod-avtorizacii-skypeapi.html
  skype.Attach(8, false);
  hAccept := 0;
  i := 0;
  while hAccept = 0 do
  begin
    Inc(i);
    hAccept := FindWindowEx(FindWindow(PChar('tSkMainForm.Unicode  Class'), nil),
      0, PChar('TZapCommunicator'), nil);
    sleep(1000);
    if i = 40 then
      Break;
  end;
 
  PostMessage(hAccept, WM_KEYDOWN, VK_TAB, 0);
  PostMessage(hAccept, WM_KEYDOWN, VK_RETURN, 0);
 
  // Ждем удачного аттача
  while not skype.AttachmentStatus = SKYPE4COMLib_TLB.apiAttachSuccess do
  begin
    Sleep(100);
  end;
 
  // Ждем пока пользователь не будет онлайн
  while not skype.CurrentUser.OnlineStatus = SKYPE4COMLib_TLB.olsOnline do
  begin
    Sleep(100);
  end;
  // ВСЕЕЕ!!!!
end;
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
04.05.2014, 08:14
О чем я и говорил, нет там таких полей сейчас
//Добираемся до наших полей Логин и Пароль
hChild := FindWindowEx(hParent, 0, PChar('TLoginControl'), nil);
Единственное дочернее окно = Internet Explorer_Server, и полей как таковых нет, т.е при помощи FindWindowEx они не находятся.

0
Заблокирован
04.05.2014, 10:15  [ТС]
Pro_grammer, Без вариантов?
0
Модератор
10048 / 3894 / 883
Регистрация: 22.02.2013
Сообщений: 5,847
Записей в блоге: 79
04.05.2014, 10:35
inv.DS, какая версия скайпа?
0
Заблокирован
04.05.2014, 11:26  [ТС]
Если принципиально, можем клиентов спустить на версию ниже. Но не желательно, у всех переустановить Skype это ужс!
Миниатюры
Программно найти окно скайпа  
0
Модератор
10048 / 3894 / 883
Регистрация: 22.02.2013
Сообщений: 5,847
Записей в блоге: 79
04.05.2014, 15:00
Лучший ответ Сообщение было отмечено The trick как решение

Решение

Я знаю способ, но я плохо разбираюсь в HTML. Содержимое формы входа - HTML документ. Получаешь к нему доступ и вводишь в нужные поля инфу программно и нажимаешь кнопку, также программно.
Типа того:
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Option Explicit
 
Private Const IID_IDispatch     As String = "{00020400-0000-0000-C000-000000000046}"
Private Const IID_IHTMLElement  As String = "{3050f1ff-98b5-11cf-bb82-00aa00bdce0b}"
 
Private Const OBJID_CLIENT = -4
 
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExW" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As Long, ByVal lpsz2 As Long) As Long
Private Declare Function AccessibleObjectFromWindow Lib "oleacc" (ByVal hwnd As Long, ByVal dwId As Long, ByRef riid As UUID, ByRef ppvObject As Object) As Long
Private Declare Function IIDFromString Lib "ole32" (ByVal lpsz As Long, ByRef lpiid As UUID) As Long
Private Declare Function GetMem4 Lib "msvbvm60" (Src As Any, Dst As Any) As Long
 
Private Sub Form_Load()
    Dim ieWnd       As Long
    Dim i           As Long
    Dim IEObj       As Object
    Dim DispUUID    As UUID
    Dim HTMLUUID    As UUID
    Dim srv         As olelib2.IServiceProvider
    Dim Elem        As Object
    Dim logn        As Object
    Dim pswd        As Object
    Dim btn         As Object
    
    IIDFromString StrPtr(IID_IDispatch), DispUUID
    IIDFromString StrPtr(IID_IHTMLElement), HTMLUUID
    
    For i = 0 To 5
        ieWnd = FindWindowEx(ieWnd, 0, StrPtr(Choose(i + 1, _
                "TLoginForm", "TLoginControl", "TBrowserControl", _
                "Shell Embedding", "Shell DocObject View", "Internet Explorer_Server")), 0)
    Next
    
    If AccessibleObjectFromWindow(ieWnd, OBJID_CLIENT, DispUUID, IEObj) Then
        MsgBox "error": Exit Sub
    End If
    
    Set Elem = IEObj.accChild(CVar(CLng(0)))
    Set srv = Elem
    Set Elem = Nothing
    srv.QueryService HTMLUUID, DispUUID, i
    GetMem4 i, ByVal VarPtr(Elem)
    
    Set logn = Elem.All("username")
    logn.Value = "The trick"
    
    Set pswd = Elem.All("password")
    pswd.Value = "blblblblbl"
 
    Set btn = Elem.All("buttonSignIn")
    btn.Click
    
End Sub
1
Заблокирован
04.05.2014, 15:53  [ТС]
Visual Basic
1
Private Declare Function AccessibleObjectFromWindow Lib "oleacc" (ByVal hwnd As Long, ByVal dwId As Long, ByRef riid As UUID, ByRef ppvObject As Object) As Long
Матерится сюда!
0
Модератор
10048 / 3894 / 883
Регистрация: 22.02.2013
Сообщений: 5,847
Записей в блоге: 79
04.05.2014, 20:58
Лучший ответ Сообщение было отмечено Pro_grammer как решение

Решение

Цитата Сообщение от inv.DS Посмотреть сообщение
Матерится сюда!
Потому что нужно анализировать код, а не просто копировать не зная как он работает.
Вот сделал специально для тебя пример:
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
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
Option Explicit
 
' Ïðèìåð ïðîãðàììíîãî ïîäêëþ÷åíèÿ Skype
' © Êðèâîóñ Àíàòîëèé Àíàòîëüåâè÷ (The trick), 2014
 
Private Const IID_IDispatch     As String = "{00020400-0000-0000-C000-000000000046}"
Private Const IID_IHTMLElement  As String = "{3050f1ff-98b5-11cf-bb82-00aa00bdce0b}"
 
Private Const OBJID_CLIENT      As Long = -4
 
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExW" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As Long, ByVal lpsz2 As Long) As Long
Private Declare Function AccessibleObjectFromWindow Lib "oleacc" (ByVal hwnd As Long, ByVal dwId As Long, ByRef riid As UUID, ByRef ppvObject As Object) As Long
Private Declare Function IIDFromString Lib "ole32" (ByVal lpsz As Long, ByRef lpiid As UUID) As Long
Private Declare Function GetMem4 Lib "msvbvm60" (Src As Any, Dst As Any) As Long
 
Private Sub Form_Load()
    Dim ieWnd       As Long                         ' Îêíà ñêàéïà
    Dim i           As Long                         ' Ñ÷åò÷èê
    Dim IEObj       As Object                       ' Îáúåêò IHTMLElement
    Dim DispUUID    As UUID                         ' UIID IDispatch
    Dim HTMLUUID    As UUID                         ' UIID IHTMLElement
    Dim srv         As olelib2.IServiceProvider     ' Äëÿ äîñòóïà ê IHTMLElement
    Dim Elem        As Object                       ' Òåëî HTML äîêóìåíòà
    Dim logn        As Object                       ' Ïîëå ââîäà ëîãèíà
    Dim pswd        As Object                       ' Ïîëå ââîäà ïàðîëÿ
    Dim btn         As Object                       ' Êíîïêà âõîäà
    ' Çàïîëíÿåì UIID'û
    IIDFromString StrPtr(IID_IDispatch), DispUUID
    IIDFromString StrPtr(IID_IHTMLElement), HTMLUUID
    ' Íàõîäèì íóæíîå íàì îêíî
    For i = 0 To 5
        ieWnd = FindWindowEx(ieWnd, 0, StrPtr(Choose(i + 1, _
                "TLoginForm", "TLoginControl", "TBrowserControl", _
                "Shell Embedding", "Shell DocObject View", "Internet Explorer_Server")), 0)
    Next
    ' Ïîëó÷àåì ññûëêó íà èíòåðôåéñ IAccessible, äëÿ äîñòóïà ê ýëåìåíòàì ñòðàíèöû
    If AccessibleObjectFromWindow(ieWnd, OBJID_CLIENT, DispUUID, IEObj) Then
        MsgBox "error": Exit Sub
    End If
    ' Ïîëó÷àåì òåëî äîêóìåíòà
    Set srv = IEObj.accChild(CVar(CLng(0)))
    ' Çàïðàøèâàåì èíòåðôåéñ IHTMLElement äëÿ äîñòóïà ê ñâîéñòâàì òåëà <BODY>
    srv.QueryService HTMLUUID, DispUUID, i
    GetMem4 i, ByVal VarPtr(Elem)
    ' Ââîäèì ëîãèí
    Set logn = Elem.All("username")
    logn.Value = "The trick"
    ' Ââîäèì ïàðîëü
    Set pswd = Elem.All("password")
    pswd.Value = "My password"
    ' Íàæèìàåì êíîïêó
    Set btn = Elem.All("buttonSignIn")
    btn.focus
    btn.Click
    ' Î÷èñòêà
    Set Elem = Nothing
    Set btn = Nothing
    Set pswd = Nothing
    Set logn = Nothing
End Sub
Вложения
Тип файла: rar SkypeAccessByTheTrick.rar (170.1 Кб, 15 просмотров)
4
Заблокирован
04.05.2014, 21:17  [ТС]
The trick, Когда на модуль дается 1 день время анализировать нет... Я не силен в таком. Давай поговорим о тригерах баз данных или администрировании бд, оптимизации. у каждого свои плюсы.
0
Модератор
10048 / 3894 / 883
Регистрация: 22.02.2013
Сообщений: 5,847
Записей в блоге: 79
04.05.2014, 21:24
inv.DS, зачем тогда брать такое задание, которое ты не можешь выполнить? В БД я тоже хорошо разбираюсь, т.к. сделал кучу заказов по ним (я тебе по-моему даже как-то говорил об этом). Я понимаю, если бы я тебе дал код на сотню строк, но в этом коде можно было бы разобраться. Я сам первый раз с HTML работаю, возможно даже этот код не будет работать в каких-то случаях, я не знаю.
0
Заблокирован
04.05.2014, 21:44  [ТС]
The trick, Все супер, ты мне помог спасибо! А там не спросили, по модулям раскидали на 5 человек и все... Я сделал получение и обработку сообщения. Показалось мало вот докинули. Спасибо еще раз.

Добавлено через 4 минуты
The trick, Желаешь ли чтобы твои данные в модуле были сохранены при компиляции?
0
Модератор
10048 / 3894 / 883
Регистрация: 22.02.2013
Сообщений: 5,847
Записей в блоге: 79
04.05.2014, 21:45
Цитата Сообщение от inv.DS Посмотреть сообщение
The trick, Желаешь ли чтобы твои данные в модули были сохранены при компиляции?
По твоему усмотрению.
0
Заблокирован
04.05.2014, 21:49  [ТС]
The trick, Оставим.
0
04.05.2014, 22:09

Не по теме:

Цитата Сообщение от The trick Посмотреть сообщение
Вот сделал специально для тебя пример:
Не перестаю удивляться, как ты это делаешь?

0
Модератор
10048 / 3894 / 883
Регистрация: 22.02.2013
Сообщений: 5,847
Записей в блоге: 79
04.05.2014, 22:31
Цитата Сообщение от Pro_grammer Посмотреть сообщение
Не перестаю удивляться, как ты это делаешь?
В папке C:\ProgramData\Skype\Apps\login\Index.ht ml лежит этот документ. Просто получаю к нему доступ посредством IAccessible->IServiceProvider->IHTMLElement, а далее чисто просматриваю свойства и пытаюсь понять их смысл (благо они наследуются от IDispatch) и как использовать.
0
Заблокирован
05.05.2014, 07:01  [ТС]
Pro_grammer, Не говори, кудесник, я сам с него куею!

Добавлено через 9 минут
В XP такой путь: C:\Documents and Settings\имя пользователя\Local Settings\Application Data\Skype\Apps\login

В XP ошибка на этом месте, я так понял из-за пути:

Visual Basic
1
Set btn = Elem.All("buttonSignIn")
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
05.05.2014, 07:01
Помогаю со студенческими работами здесь

окно выбора файлов программно
Подскажите, пожалуйста, можно ли программно открыть стандартное окно выбора файлов? Если да, то где можно посмотреть как это делается?

Программно вывести на 1 план окно
предположим, открыл я 10 папок с названиями qqq,www,eee,rrr они наложены друг на друга. Как при нажатии кнопки вывести qqq вверх?

Программно отобразить окно (развернуть)
Короче чтобы развернуть окно делаю так this.WindowState = FormWindowState.Normal; но это не работает когда окно посути развернуто но...

Программно закрыть окно MessageBox
Есть такая проблема,нужно программно закрыть окно MessageBox.Попробовал через через SendKeys или симулации клика,работает но не всегда,там...

Программно скрыть окно с Нужным заголовком
мне нужно скрыть окно например мой компьютер но у меня не получается!:( в чем ошибка пишу вот так ShowWindow('мой компьютер', SW_HIDE);


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru