Инструмент для рисования [закрытых] диаграмм последовательности протокола

Я не знаком с JNA, но приведу следующую информацию с точки зрения winapi. Надеюсь, что это поможет вам найти решение.

Существуют также SendMessageA и SendMessageW. Некоторые говорят, что SendMessage слишком стар для какой-то операционной системы, но я не могу это проверить.

blockquote>

SendMessageA и SendMessageW представляют версию функции SendMessage для Ascii и Unicode. Они имеют одинаковые возможности. См. « Юникод в Windows API ».

Я борюсь с правильной реализацией SendMessage (A?) (W?) (), так как он не реализован в JNA.

blockquote>

Так что не стесняйтесь использовать SendMessage в JNA.

Для неактивного окна вы не можете получить сообщение о нажатии клавиши, например WM_KEYUP, из системы, потому что у вас нет фокуса. Но вы можете смоделировать систему для отправки такого рода сообщения в неактивное окно. Вы можете обратиться к следующему коду. ( Начальная тема )

#include 
#include 
#include 


int main()
{
    LPCWSTR Target_window_Name = TEXT("Untitled - Notepad"); //<- Has to match window name
    HWND hWindowHandle = FindWindow(NULL, Target_window_Name);
    HWND EditClass = FindWindowEx(hWindowHandle, NULL, L"Edit", NULL);

    SendMessage(EditClass, WM_KEYDOWN, 0x5A, 0x002C0001);
    SendMessage(EditClass, WM_CHAR, 0x7A, 0x002C0001); //"z"
    SendMessage(EditClass, WM_KEYUP, 0x5A, 0xC02C0001);

    return(0);
}

Также как вы создаете WPARAM и LPARAM? MSDN говорит, что есть конкретные сообщения.

blockquote>

Вам нужно создать WPARAM и LPARAM на основе другого сообщения. Например, сообщение WM_KEYDOWN, wParam - это код виртуального ключа несистемного ключа. См. Коды виртуальных клавиш . В приведенном выше примере кода код виртуальной клавиши Z-ключа равен 0x5A. Таким образом, wParam 0x5A. То же самое с сообщением WM_KEYUP. В сообщении WM_CHAR wParam - это код символа ключа. Вы можете найти в таблице Ascii, строчная буква «z» 0x7A. Вам также необходимо предоставить код сканирования для этих сообщений. Вы можете искать "Спецификация кода сканирования клавиатуры - Microsoft". Код сканирования "Z" - 0x2C. Последний бит 30 и 31 lParam сообщения WM_KEYUP всегда равен 1. Таким образом, он начинается с 0xC0.

Дополнительные ссылки: " WM_KEYDOWN message " " WM_KEYUP message " " WM_CHAR message "

24
задан Glorfindel 18 April 2019 в 19:49
поделиться

4 ответа

Ради полноты вот другая бесплатная, основанная на веб-браузере опция: https://sequencediagram.org /

Вот их подача (от 'приблизительно'):

SequenceDiagram.org является сетевым инструментом / программное обеспечение для создания uml диаграммы последовательности.

Вся обработка парсинга и рисования схемы является сделанной стороной клиента в веб-браузере пользователя. Это не только делает это мгновенным для работы с, но и это также означает, что данные не переданы по Интернету инструментом как во многих других инструментах диаграммы последовательности. Так как никакой сервер бэкэнда не используется, также возможно использовать инструмент офлайн.

существует много инструментов диаграммы последовательности там, но это - единственное, которое позволяет Вам:

∙Script using a simple text notation when it is most convenient to do so, and
∙Draw the sequence diagram using your mouse at the same time when that is most convenient

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

инструмент разрабатывается, сохраняется и используется людьми, которые создают много диаграмм последовательности в их ежедневной работе, и от эффективности точка зрения не была на 100% удовлетворена существующими инструментами.

, Если у Вас есть какой-либо вопрос/комментарии/предложения/ошибки, свяжитесь с info@sequencediagram.org. Чем больше обратной связи мы получаем, тем лучше мы можем расположить по приоритетам.

1
ответ дан 28 November 2019 в 22:59
поделиться

ZenUML свободен и онлайн. Это имеет странный функция, которая позволяет Вам разрабатывать свою схему с любым кодом CSS.

enter image description here

Для получения вышеупомянутой схемы, только в редакторе DSL помещает

Client->Server:SYN

и делают волшебство в редакторе CSS путем помещения

div[signature="SYN"]>div.message {
  transform: rotate(10deg)
}
1
ответ дан 28 November 2019 в 22:59
поделиться

Вы можете попробовать umlet.com

Kindness,

Dan

3
ответ дан 28 November 2019 в 22:59
поделиться

Я считаю, что RFFlow очень быстро запускается, быстро обучается и прост в использовании. Он выполняет диагностические линии и текст на склонах и подходит для всех видов блок-схем. Он сохраняет в форматах EMF и WMF, а также в формате GIF и его собственном формате и очень хорошо копирует и вставляет в Word.

2
ответ дан 28 November 2019 в 22:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: