есть модуль, как можно сделать вывод в csv\xls по типу как на скриншоте
WriteFile(hLogFile, "--Packet begin--\r\n", 18, &dwWritten, 0);
if (IsDlgButtonChecked(hwndDlg, IDC_CHECK_OPTION_LOG_TARGET_IP) == TRUE) {
IN_ADDR ia;
ia.s_addr = hdr->iph_dest;
CHAR *pszTargetIP = inet_ntoa(ia);
WriteFile(hLogFile, "To: ", 4, &dwWritten, 0);
WriteFile(hLogFile, pszTargetIP, lstrlen(pszTargetIP), &dwWritten, 0);
WriteFile(hLogFile, "\r\n", 2, &dwWritten, 0);
}
if (IsDlgButtonChecked(hwndDlg, IDC_CHECK_OPTION_LOG_SENDER_IP) == TRUE) {
IN_ADDR ia;
ia.s_addr = hdr->iph_src;
CHAR *pszSourceIP = inet_ntoa(ia);
WriteFile(hLogFile, "From: ", 6, &dwWritten, 0);
WriteFile(hLogFile, pszSourceIP, lstrlen(pszSourceIP), &dwWritten, 0);
WriteFile(hLogFile, "\r\n", 2, &dwWritten, 0);
}
if (IsDlgButtonChecked(hwndDlg, IDC_CHECK_OPTION_WRITE_PROTO_NAME) == TRUE) {
WriteFile(hLogFile, "Protocol: ", 10, &dwWritten, 0);
switch (hdr->iph_protocol) {
case IPPROTO_IP:
WriteFile(hLogFile, "IP\r\n", 4, &dwWritten, 0);
break;
case IPPROTO_ICMP:
WriteFile(hLogFile, "ICMP\r\n", 6, &dwWritten, 0);
break;
case IPPROTO_IGMP:
WriteFile(hLogFile, "IGMP\r\n", 6, &dwWritten, 0);
break;
case IPPROTO_GGP:
WriteFile(hLogFile, "GGP\r\n", 5, &dwWritten, 0);
break;
case IPPROTO_TCP:
WriteFile(hLogFile, "TCP\r\n", 5, &dwWritten, 0);
break;
case IPPROTO_PUP:
WriteFile(hLogFile, "PUP\r\n", 5, &dwWritten, 0);
break;
case IPPROTO_UDP:
WriteFile(hLogFile, "UDP\r\n", 5, &dwWritten, 0);
break;
case IPPROTO_IDP:
WriteFile(hLogFile, "IDP\r\n", 5, &dwWritten, 0);
break;
case IPPROTO_IPV6:
WriteFile(hLogFile, "IPv6\r\n", 6, &dwWritten, 0);
break;
case IPPROTO_ND:
WriteFile(hLogFile, "ND\r\n", 4, &dwWritten, 0);
break;
case IPPROTO_ICLFXBM:
WriteFile(hLogFile, "ICLFXBM\r\n", 9, &dwWritten, 0);
break;
case IPPROTO_ICMPV6:
WriteFile(hLogFile, "ICMPv6\r\n", 8, &dwWritten, 0);
break;
}
}
if (IsDlgButtonChecked(hwndDlg, IDC_CHECK_OPTION_WRITE_PACKET_LEN) == TRUE) {
CHAR szTemp[17];
WriteFile(hLogFile, "Packet length: ", 15, &dwWritten, 0);
wsprintf(szTemp, "%d\r\n", size);
WriteFile(hLogFile, szTemp, lstrlen(szTemp), &dwWritten, 0);
}
WriteFile(hLogFile, "Contents:\r\n\r\n", 13, &dwWritten, 0);
WriteFile(hLogFile, &btBuffer[sizeof(IPHeader) * 2], size - sizeof(IPHeader) * 2, &dwWritten, 0);
WriteFile(hLogFile, "\r\n--Packet end--\r\n", 18, &dwWritten, 0);
SetDlgItemInt(hwndDlg, IDC_EDIT_LOG_SIZE, GetFileSize(hLogFile, NULL), FALSE);
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Проблема состоит вот в чемНужно, чтобы при изменении объекта изменялось положение ползунка QSlider'а
Суть ошибки вот в чём, надо составить программу, которая на входе получает "базис счисления" и "последовательность цифр" Базис может принимать...
Я пишу программу для шифрования файлов на PythonУ файла своё личное расширение(ни одно другое под мои задачи не подходит) и я чтобы файл не был...
Нашёл примеры сервера и клиента на android, но почему-то примеры не работают, хотя все верноЯ подумал, что возможно проблема связана с тем, что...