Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
77 / 77 / 11
Регистрация: 02.12.2011
Сообщений: 296
1

Вывод содержимого структуры COMMPROP на консоль

18.06.2014, 09:54. Показов 1258. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
...доброго времени суток, уважаемые форумчане!... не могу понять как вывести содержимое структуры на экран...вот фрагмент кода:

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
// COM_1.cpp: определяет точку входа для консольного приложения.
//
// #include <conio.h>
#include "stdafx.h"
#include <windows.h>
#include <iostream>
using namespace std;
 
 HANDLE hSerial;
 COMMPROP *pr; 
int _tmain(int argc, _TCHAR* argv[])
{
LPCTSTR sPortName = L"COM1"; 
    hSerial = ::CreateFile(sPortName, GENERIC_READ | GENERIC_WRITE,0,0,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0);
 
   if(hSerial==INVALID_HANDLE_VALUE)
    {
      if(GetLastError()==ERROR_FILE_NOT_FOUND)
        {
           cout << "Serial port does not exist.\n";
        }
       cout << "Some other error occurred.\n";
    }
 
 DCB dcbSerialParams = {0};
 dcbSerialParams.DCBlength=sizeof(dcbSerialParams);
  if (!GetCommState(hSerial, &dcbSerialParams))
   {
      cout << "Getting state error\n";
   }
 dcbSerialParams.BaudRate=CBR_9600;
 dcbSerialParams.ByteSize=8;
 dcbSerialParams.StopBits=ONESTOPBIT;
 dcbSerialParams.Parity=NOPARITY;
  if(!SetCommState(hSerial, &dcbSerialParams))
   {
      cout << "Error setting serial port state\n";
   }
 
  pr=(COMMPROP*)HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,sizeof(COMMPROP)); 
   GetCommProperties(hSerial, pr); 
  if(pr->wPacketLength != sizeof(COMMPROP)) 
   {
    { 
       pr=(COMMPROP*)HeapReAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,pr,pr->wPacketLength); 
       pr->dwProvSpec1=COMMPROP_INITIALIZED; 
       GetCommProperties(hSerial,pr); 
    }
 
//. . . Вывод содержимого структуры COMMPROP
 
HeapFree(GetProcessHeap(),0,pr); 
CloseHandle(hSerial); 
//. . . 
 }
     system("pause");
    return 0;
}
...т. е., что нужно дописать вместо строки № 50 данного фрагмента...
...а вот сама структура:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 typedef struct _COMMPROP {{ 
WORD wPacketLength; // packet size, in bytes 
WORD wPacketVersion; // packet version 
DWORD dwServiceMask; // services implemented 
DWORD dwReserved1; // reserved 
DWORD dwMaxTxQueue; // max Tx bufsize, in bytes 
DWORD dwMaxRxQueue; // max Rx bufsize, in bytes 
DWORD dwMaxBaud; // max baud rate, in bps 
DWORD dwProvSubType; // specific provider type 
DWORD dwProvCapabilities; // capabilities supported 
DWORD dwSettableParams; // changable parameters 
DWORD dwSettableBaud; // allowable baud rates 
WORD wSettableData; // allowable byte sizes 
WORD wSettableStopParity; // stop bits/parity allowed 
DWORD dwCurrentTxQueue; // Tx buffer size, in bytes 
DWORD dwCurrentRxQueue; // Rx buffer size, in bytes 
DWORD dwProvSpec1; // provider-specific data 
DWORD dwProvSpec2; // provider-specific data 
WCHAR wcProvChar[1]; // provider-specific data 
} COMMPROP;
... это стандартная структура с описанием возможностей порта... заранее благодарен за ответ...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.06.2014, 09:54
Ответы с готовыми решениями:

Выделение памяти и вывод её содержимого на печать в консоль
Здравствуйте, форумчане. Не подскажите, как в С++ выделить 1 кБайт памяти одним куском и вывести...

Не могу разобраться. Чтение и вывод на экран всего содержимого файла .txt на консоль
#include &lt;cstdio&gt; #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;fstream&gt; using namespace...

Вывод в консоль одного из параметров структуры
void Cars() { int i=0, k=0; sGet arr; for (i = 0; i &lt; 8; i = i + 1) { for (k = 0; k &lt;...

Поиск структуры в файле и её вывод на консоль
Задание имеет следующее содержание: &quot;Написать программу для обработки информации о сотрудниках...

1
7792 / 6559 / 2984
Регистрация: 14.04.2014
Сообщений: 28,671
18.06.2014, 14:11 2
C++
1
cout << pr->wPacketLength;
и т. д.
1
18.06.2014, 14:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.06.2014, 14:11
Помогаю со студенческими работами здесь

Реализовать поиск значения в файле и вывод на консоль структуры, в которой расположено значение
Как сделать поиск значения в файле и вывод на консоль структуры, в которой расположено значение?

Вывод в консоль содержимого сайта
Доброго времени суток. Впервые пишу вопрос на форуме, поправляйте если что. Ниже приведён текст...

Вывод и в консоль и очистка содержимого файла
Есть вот такой файл: #!/bin/bash tail error.log sudo rm error.log sudo nginx -s reopen Если...

Вывод содержимого папки(такой то) и содержимого дисков
задание выглядит так &quot;Выведите на окно консоли содержимое дисков, а также папки «Мои документы» с...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru