Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ WinAPI Перехватить движение мыши за пределами окна Хочу сделать чтобы изменение положения и размеров формы происходило в старом стиле, я перехватил WM_NCLBUTTONDOWN, но при выходе мыши за пределы формы отрабатывается WM_NCMOUSELEAVE, и после этого тишина. У меня вопрос, как отработать движение мыши за пределами формы? https://www.cyberforum.ru/ win-api/ thread250398.html C++ WinAPI Сохранить рисунок в bmp или jpg
Всем привет, собсно такой вопрос... Делаю лабораторную работу по графике, нарисовал при помощи GDI все что нужно было ... квадритики кружочки ... и еще требуется сохранить нарисованное к примеру в bmp, как это сделать, допустим при нажатии на кнопку, не важно ... ?
C++ WinAPI Почему появляется рамка в окне при нажатии на кнопку или выборе чекбокса? доброго времени суток. Используюю только winapi. Собственно такой вопросец, почему появляется рамка в окне при нажатии на кнопку или выборе чекбокса? как сделать чтобы не появлялась?:) вот так создаю окна CreateWindow(_T("button"), _T("текст") , BS_AUTOCHECKBOX | BS_LEFT | WS_CHILD , ,190,240,15,_wnd.w_hMainWnd,0, hInstance,0); CreateWindow(_T("button"), _T("Копировать"), WS_CHILD ... https://www.cyberforum.ru/ win-api/ thread249684.html C++ WinAPI Многопоточное программирование, WinAPI https://www.cyberforum.ru/ win-api/ thread249427.html
Всем привет. Недавно начал разбирать winAPI, вот написал программку, с ней какой-то косяк, хотелось бы услышать ваши варианты.. Ну и тяжко что-то даётся Multithreading, пожалуйста, может кто-то чуть модернизировать мою прогу 2 потоками, описав, что они и где делают... Суть моей проги в том, что щёлкаешь на форме левой кнопкой мыши и вылетает месседжбокс с координатами точки, где щёлкаешь, после...
C++ WinAPI Программа не подключается к программе))
Извините, если не туда запостил - думаю этот подфорум близок по тематике. Есть некая программа, которая перехватывает процесс и пытается с ним работать. Но, не работает)) Пробовал на 4 разных компах с одинаковой операционкой и одинаковой программой-перехватываевым процессом. Вот что говорит MSDN "The IContainer that contains the Component, if any, or null if the Component is not encapsulated...
C++ WinAPI Определение номеров свободных секторов на диске Подскажите, пожалуйста, как можно определить номера свободных секторов на HDD, например, нескольких последних свободных секторов, для работы с ними через CreateFile и ReadFile и WriteFile. Задача, наверное, непростая, но ведь ее как-то решают программы затирания информации типа WipeInfo, у которых есть опция типа "Уничтожения информации на свободном месте диска". https://www.cyberforum.ru/ win-api/ thread248548.html
C++ WinAPI Программа не работает после закрытия дескриптора процесса Есть задача, по созданию много процессорного приложения. Основной процесс main, в нем создаются процессы Creator и Analyzer. Процесс Creator отрабатывает все правильно. Командная строка с параметрами для Analyzer формируется правильно. Проблема в следующем: после запуска процесса Analyzer и после закрытия его дескриптора у меня программа перестает выполнять последующий код. MAIN // Main.cpp :... https://www.cyberforum.ru/ win-api/ thread248426.html C++ WinAPI Таймер в консольном приложении win32
результатом долгого и упорного нагугливания стало следующее: SetTimer() в консольном приложении использовать тяжело: масс проблем, да и вообще так и не нашёл чёткого, однозначного решения. Как аналог, рекомендуют использовать Waitable Timer Objects. однако, пример оттуда http://www.installsetupconfig.com/win32programming/threadprocesssynchronizationapis11_24.html не компилируется в моём...
C++ WinAPI WinAPI и стили окна https://www.cyberforum.ru/ win-api/ thread247811.html
Всем привет! В общем, раньше работал только в консоли. Учился. Теперь вот решил, что пора бы уже заняться написанием программ, непосредственно под Windows. Включая окошечки, кнопочки и прочие приблуды графического интерфейса пользователя. Программирую в VS2010. Во-первых, подскажите пожалуйста, смогу ли я что-нибудь почерпнуть в книгах по VS 6.0 или же искать уже что-то под более поздние...
C++ WinAPI Получить список физических дисков Здравствуйте! Как можно получить список имен физических дисков в формате PhysicalDriveN, где N - номер диска? https://www.cyberforum.ru/ win-api/ thread247778.html
C++ WinAPI потоки
Люди,подскажите кто знает! #include<windows.h> #include<iostream> using namespace std; HANDLE hm; const int N=5; int ar1={3,2,4,1,5}; int ar2={10,6,8,7,9}; void sort(int *m) {
C++ WinAPI Вычисление длины отрезка по координатам его концов https://www.cyberforum.ru/ win-api/ thread247377.html
Привет Всем! У меня возникли проблем с лабой. В задании сказано: Написать программу, вычисляющую длину отрезка по координатам его концов. Процедуру вычисления длины отрезка реализовать в отдельном потоке. Еще сказано, что программа должна быть решена с использованием аппарата WinAPI. Как решить в отдельном потоке и с использованием аппарата WinAPI , кто знает напишите)))
9 / 9 / 7
Регистрация: 04.03.2010
Сообщений: 107
10.03.2011, 18:01  [ТС] 0

Mailslot: Передать матрицу через клиент на сервер - C++ WinAPI - Ответ 1437200

10.03.2011, 18:01. Показов 5916. Ответов 6
Метки (Все метки)

Ответ

Исправил предыдущие ошибки, добился того, что пару символов передает, помогите реализовать передачу матрицы

сервер
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
#include "stdafx.h"
#include "iostream"
#include "math.h"
#include <windows.h>
 
using namespace std;
void foo(float **matrix, int n);
void main()
{
HANDLE Mailslot;
int buffer;
DWORD NumberOfBytesRead;
if ((Mailslot = CreateMailslot("\\\\.\\Mailslot\\slot1", 0, MAILSLOT_WAIT_FOREVER, NULL)) == INVALID_HANDLE_VALUE)
    {
        printf("Ошибка при создании ПЯ %d\n", GetLastError());
        getchar();
        return;
    }
 
        unsigned int N = 0;
        unsigned int I = 0;
        unsigned int J = 0;
        int i,j;
        float **matrix = new float*[N];
        
 
         if (ReadFile(Mailslot, (LPVOID)&buffer, sizeof(buffer), &NumberOfBytesRead, NULL) != 0)
    {
        matrix[i][j]=buffer;
        cout << "Element= " << matrix[i][j] << endl;
    } 
 
        if (ReadFile(Mailslot, (LPVOID)&buffer, sizeof(buffer), &NumberOfBytesRead, NULL) != 0)
    {
        I=buffer;
        cout << "I= " << I << endl;
    } 
        if (ReadFile(Mailslot, (LPVOID)&buffer, sizeof(buffer), &NumberOfBytesRead, NULL) != 0)
    {
        J=buffer;
        cout << "J= " << J << endl;
    } 
 
        float **matrix2 = new float*[N - 1];
        for (size_t i = 0; i < N - 1; ++i) {
                matrix2[i] = new float[N - 1];
        }
 
        {
        
                     for (size_t i = 0, i2 = 0; i < N; ++i) 
                     {
                        for(size_t j = 0, j2 = 0; j < N; ++j)
                        {
                                if (i != (I - 1) && j != (J - 1))
                                {
                                        matrix2[i2][j2++] = matrix[i][j];
                                }
                        }
                        if (i != (I - 1)) ++i2;
                }
 
                for (size_t i = 0; i < N - 1; ++i) 
                {
                        for (size_t j = 0; j < N - 1; ++j)
                        {
                        cout << matrix2[i][j] << "  ";
                        }
                        cout << endl << endl;
                }
                foo(matrix2, N-1);
        }
 
        for(size_t i = 0; i < N; i++)
                delete []matrix[i];
        delete []matrix;
 
        for(size_t i = 0; i < N - 1; i++)
                delete []matrix2[i];
        delete []matrix2;
        CloseHandle(Mailslot);
}
 
void foo(float **matrix, int n) {
 
        float **a = new float*[n + 1];
        for (size_t i = 0; i < n + 1; ++i) {
                a[i] = new float[n + 1];
        }
 
        for (size_t i = 0; i < n; ++i) {
                for (size_t j = 0; j < n; ++j)
                        a[i][j] = matrix[i][j];
        }
 
 
        int p = 0;
        int t,i,j,k = 0;
        float kst = 0;
        for (i=0; i<n-1; i++){
                t=1;
                while(a[i][i]==0){
                        for(j=0; j<n; j++)
                        {
                                a[i][j]=kst;
                                a[i][j]=a[i+t][j];
                                a[i+t][j]=kst;
                        }
                        p++;
                        t++;
                }
                 
                for (k=i+1; k<n; k++)
                {
                        kst=a[k][i]/(float)a[i][i];
                        for(j=0; j<n; j++)
                                a[k][j]-=a[i][j]*kst;
                }
        }
         
        kst=pow(-1.,p);
        for(i=0; i<n; i++)
                kst*=a[i][i];
 
        cout << "det = " << kst << endl;
 
        for(size_t i = 0; i < n + 1; i++)
                delete []a[i];
        delete []a;
}
клиент
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#include "stdafx.h"
#include "iostream"
#include "math.h"
#include <windows.h>
#include <stdio.h>
#include <conio.h>
 
 
using namespace std;
void foo(float **matrix, int n);
void main()
{
        setlocale(LC_ALL, "Russian");
        unsigned int N = 0;
        unsigned int I = 0;
        unsigned int J = 0;
        int i,j;
 
HANDLE Mailslot;
DWORD BytesWritten;
CHAR ServerName[256];
 
 
    sprintf_s(ServerName, "\\\\%s\\Mailslot\\Slot1", ".");
    if ((Mailslot = CreateFile(ServerName, GENERIC_WRITE, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL))==INVALID_HANDLE_VALUE)
    {
        printf("error %d\n", GetLastError());
        getchar();
        return;
    }
 
 
        cout << "Enter size of matrix. N = ";
        cin >> N;
 
        int **matrix = new int*[N];
        for (size_t i = 0; i < N; ++i) {
                matrix[i] = new int[N];
        }
        
 
 
  cout << "Fill the matrix:\n";
        for (size_t i = 0; i < N; ++i) 
        {
                for (size_t j = 0; j < N; ++j)
                {
                        cin >>  matrix[i][j];
                        WriteFile(Mailslot, (LPVOID)&matrix[i][j], sizeof(matrix[i][j]), &BytesWritten, NULL);  
                }
        }
 
        cout << "Enter number of line. I = ";
        cin >> I;
 
    if (WriteFile(Mailslot, (LPVOID)&I, sizeof(I), &BytesWritten, NULL) == 0)
    {
        printf("error %d\n", GetLastError());
        getchar ();
        return;
    }
 
        cout << "Enter number of column. J = ";
        cin >> J;
 
    if (WriteFile(Mailslot, (LPVOID)&J, sizeof(J), &BytesWritten, NULL) == 0)
    {
        printf("error %d\n", GetLastError());
        getchar ();
        return;
    }
 
        for(size_t i = 0; i < N; i++)
            delete []matrix[i];
        delete []matrix;
        CloseHandle(Mailslot);
 }


Вернуться к обсуждению:
Mailslot: Передать матрицу через клиент на сервер C++ WinAPI
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.03.2011, 18:01
Готовые ответы и решения:

MailSlot клиент-сервер передает нужное количество байт, а выводит — только первый символ
Есть MailSlot сервер (написал на консоле, ведь не принципиально). Есть MailSlot клиент - написал...

Как передать данные через mailslot?
Здравствуйте! Пишу три программы передающие данные через mailslot на winapi. Одна серверная...

Нужно передать файл, расположенный на рабочей станции, на которой выполняется сервер, на рабочую станцию​​, на которой выполняется клиент. MailSlot
Ребята. Нужна помощь. Нужно передать файл, расположенный на рабочей станции, на которой...

Клиент-сервер, передать строку с клиента на сервер
Подскажите плиз Есть код он передает серверу то что мы пишем с клавиатуры а как передать строку...

6
10.03.2011, 18:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.03.2011, 18:01
Помогаю со студенческими работами здесь

Клиент-сервер. Как передать массив?
Есть клиент сервер... Нужно передать массив данных с сервера на клиент и на стороне клиента вывести...

Клиент-Сервер: как передать информацию больше буфера
Отправляю сообщения на клиент: public void SendAsync(string data) { ...

Как получить и передать информацию о пользователях Windows в приложении клиент-сервер?
Всем доброго времени суток. Возник вопрос по клиент-серверному приложению на сокетах, заключается...

OLE. Access -клиент, Word - сервер. Работает через раз. "Сервер не валиден!"
Задача: получить путь прилинкованного файла. Тип OLE - связанный Рамка объекта - присоединенная...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru