0 / 0 / 0
Регистрация: 15.04.2010
Сообщений: 14
|
|
1 | |
Creating Named Shared Memory21.04.2010, 12:31. Показов 2060. Ответов 4
Метки нет (Все метки)
Здравствуйте.
Пытаюсь освоить работу с общей памятью двух разных программ, используя FileMapping, всё делаю как в ссылке, но в первой программе объект может создаваться много раз раз, т.е. запускаем несколько экземпляров программы и все без ошибок, а во второй не открывается (OpenFileMapping) с ошибкой 2. http://msdn.microsoft.com/en-u... 85%29.aspx Помогите пожалуйста разобраться в чём причина.
0
|
21.04.2010, 12:31 | |
Ответы с готовыми решениями:
4
Shared memory Как хранить переменную типа char* в named shared memory section? ошибка Error creating Flash movie. There was not enough memory available Shared memory does not exist |
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
|
|
21.04.2010, 13:38 | 2 |
это "файл не найден", если не ошибаюсь.
1)возможно, на запущены службы терминалов. проверьте в запущенных службах. 2)возможно, есть проблемы с правами доступа. если ОС Vista, или Win7 - то с установками прав доступа "по умолчанию" работать не будет. там надо специально указывать права административного доступа для таких объектов. но там вроде, должна быть ошибка "отказано в доступе", так что скорее всего - терминалы. именно они обрабатывают перфикс "Global" в имени объекта.
0
|
0 / 0 / 0
Регистрация: 15.04.2010
Сообщений: 14
|
|
21.04.2010, 20:50 [ТС] | 3 |
Спасибо за ответ.
У меня windows 7, разве в ней есть служба терминалов? Я пробовал без префикса, только имя, результат тотже =(
0
|
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
|
|
21.04.2010, 20:54 | 4 |
а куда бы она делась?
на ней удаленный рабочий стол построен, и прочие прибамбасы... конечно. по-умолчанию имя считается "Local". так уж Microsoft определил. а в таком режиме другие процессы имя не видят.
0
|
0 / 0 / 0
Регистрация: 15.04.2010
Сообщений: 14
|
|
23.04.2010, 08:14 [ТС] | 5 |
Спасибо большое!
Запуск службы помог. Теперь поместил эти функции в одну dll, и вызывающая программа первую функцию выполняет нормально, а вторая опять возвращает ошибку 2. Не подскажите какая особенность в этом случае? Добавлено через 22 часа 56 минут На самом деле код работает, только если убрать CloseHandle(hMapFile); иначе вторая программа возвращает ошибку 2.
0
|
23.04.2010, 08:14 | |
23.04.2010, 08:14 | |
Помогаю со студенческими работами здесь
5
Не могу разобраться с Shared memory Pipe, fork, shared memory COM-объект..клиент-сервер..shared memory Insufficient space for shared memory file Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |