crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V   1 2 >  
Ответить в данную темуНачать новую тему
> Shared memory QT/*Nix/win32, Нужен пример кода, перенедопонимаю...
Darvin
  опции профиля:
сообщение 19.1.2008, 18:58
Сообщение #1


Студент
*

Группа: Новичок
Сообщений: 36
Регистрация: 30.11.2007
Пользователь №: 30

Спасибо сказали: 0 раз(а)




Репутация:   0  


Не въезжаю, как реализовать создание и/или подключение shared memory на QT, так чтобы
код был совместим с любой платформой и
при компиляции под каждой осью, из нативного приложения можно было бы обратится к этой памяти.

Например. Сервер реализован как QT-приложение, создает разделяемую память, а
другое приложение реализованое без QT как win32/atl/wtl подключается к ней.
Тоже самое под *Nix, клиент без QT.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 19.1.2008, 19:26
Сообщение #2


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


На сколько я понимаю, бесплатного готового решения в Qt нет, есть The Shared Memory component provides cross-platform access to shared memory, но он относится к comercial edition. :(

Сообщение отредактировал ViGOur - 19.1.2008, 19:26
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Darvin
  опции профиля:
сообщение 19.1.2008, 19:41
Сообщение #3


Студент
*

Группа: Новичок
Сообщений: 36
Регистрация: 30.11.2007
Пользователь №: 30

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(ViGOur @ 19.1.2008, 19:26) *
На сколько я понимаю, бесплатного готового решения в Qt нет, есть The Shared Memory component provides cross-platform access to shared memory, но он относится к comercial edition. :(

Мне всё равно, это для домашнего хозяйства, лишь бы средство было.
Скачать, кстати, не получается, требует авторизацию. Где стырить?

Я принцип не понимаю, ведь в *Nix, Windows и QT работа с разделяемой памятью реализована по разному. В QT через специальные классы. А как потом с ней работать не въезжаю.

Сообщение отредактировал Darvin - 19.1.2008, 19:50
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 19.1.2008, 19:54
Сообщение #4


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


Цитата(Darvin @ 19.1.2008, 19:41) *
Скачать, кстати, не получается, требует авторизацию. Где стырить?
Гуглить нужно, наверняка где-нибудь да завалялось.

Цитата(Darvin @ 19.1.2008, 19:41) *
Я принцип не понимаю, ведь в *Nix, Windows и QT работа с разделяемой памятью реализована по разному. В QT через специальные классы. А как потом с ней работать не въезжаю.
Там примеры есть и описание, как работать с разделяемой памятью между потоками и между процессами...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 19.1.2008, 20:03
Сообщение #5


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


Вот нашел, правда за 2004 год: Qt Solutions 02.12.2004
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
balbes
  опции профиля:
сообщение 19.1.2008, 21:02
Сообщение #6


Студент
*

Группа: Участник
Сообщений: 62
Регистрация: 11.10.2007
Пользователь №: 10

Спасибо сказали: 0 раз(а)




Репутация:   0  


А для чего может понадобиться данный компонет, можете сказать? Для каких задач?
У меня пока мало опыта, почему и спрашиваю! :rolleyes:
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Darvin
  опции профиля:
сообщение 20.1.2008, 0:01
Сообщение #7


Студент
*

Группа: Новичок
Сообщений: 36
Регистрация: 30.11.2007
Пользователь №: 30

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(ViGOur @ 19.1.2008, 20:03) *
Вот нашел, правда за 2004 год: Qt Solutions 02.12.2004

Скачал. Кажется это для QT3. Прикручивать придется.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Darvin
  опции профиля:
сообщение 20.1.2008, 0:06
Сообщение #8


Студент
*

Группа: Новичок
Сообщений: 36
Регистрация: 30.11.2007
Пользователь №: 30

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(balbes @ 19.1.2008, 21:02) *
А для чего может понадобиться данный компонет, можете сказать? Для каких задач?
У меня пока мало опыта, почему и спрашиваю! :rolleyes:

Это классы для работы с разделяемой памятью. Нужно для межпроцессного обмена данными.
Например. Одна программа(Сервер) пишет в эту область данные, а другие программы их читают по мере необходимости или размещают там свои данные.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 20.1.2008, 1:49
Сообщение #9


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


Цитата(Darvin @ 20.1.2008, 0:01) *
Скачал. Кажется это для QT3. Прикручивать придется.
Угу, я и говорю старенькое.
Говорят что можно найти и Solution 2.3 (для Qt 4), но нужно искать...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Darvin
  опции профиля:
сообщение 20.1.2008, 15:30
Сообщение #10


Студент
*

Группа: Новичок
Сообщений: 36
Регистрация: 30.11.2007
Пользователь №: 30

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(ViGOur @ 20.1.2008, 1:49) *
Цитата(Darvin @ 20.1.2008, 0:01) *
Скачал. Кажется это для QT3. Прикручивать придется.
Угу, я и говорю старенькое.
Говорят что можно найти и Solution 2.3 (для Qt 4), но нужно искать...

Тем не менее, с моим проектом на QT4, qtsharedmemory 1.1 , компилируется без ошибок. До первой ошибки сойдет, а дальше надеюсь найти поновее.

Сообщение отредактировал Darvin - 20.1.2008, 15:38
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V   1 2 >
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 30.11.2024, 5:24