Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.01.22;
Скачать: [xml.tar.bz2];

Вниз

FileMapping   Найти похожие ветки 

 
psa247 ©   (2006-01-08 12:08) [0]

При обращении к GlobalData^.UName иногда выдает Access Violation

*.dpr
 
MMFHandle:= CreateFileMapping(INVALID_HANDLE_VALUE,nil,PAGE_READWRITE,0,SizeOf(TGlobalData),MMFName);
  GlobalData:= MapViewOfFile(MMFHandle,FILE_MAP_ALL_ACCESS,0,0,SizeOf(TGlobalData));
  if commLine<>"reload" then
    if(GetLastError = ERROR_ALREADY_EXISTS)and(Ini.ReadBool("SettingsEx","5",False))then begin
      F.Bring_To_Top(GlobalData^.OurWnd);
      CloseHandle(MMFHandle);
      Ini.Free;
      Application.Terminate;
      end;

  BufSize:= 256;

  ......  

  GlobalData^.OurWnd:= 0;
  try
    Admin:= buffer;
    GlobalData^.UName:= Admin;
except
   end;
  RegCloseKey(Reg);


Сам GlobalData описан в главном Unit-е как:

type
 PGlobalData = ^TGlobalData;
 TGlobalData = packed record
    OurWnd : HWND;                
     UName : string;
   end;


В чем причина ?


 
Anatoly Podgoretsky ©   (2006-01-08 12:50) [1]

В отсутствии обработки ошибок.


 
psa247 ©   (2006-01-08 13:00) [2]


> Anatoly Podgoretsky ©   (08.01.06 12:50) [1]

Я просто перепугался, что неправильно работаю с MMF.
Спасибо.


 
Fay ©   (2006-01-08 13:30) [3]

> UName : string;
Меня эта строка смущает. Весьма.


 
psa247 ©   (2006-01-08 16:32) [4]


> Fay ©   (08.01.06 13:30) [3]

то что string ?



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.01.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.044 c
14-1135416752
Витёк
2005-12-24 12:32
2006.01.22
Как узнать число простое или нет?


14-1136060171
Piter
2005-12-31 23:16
2006.01.22
Всех с наступающим 2006 ГОДОМ!!!


2-1136659178
Revan
2006-01-07 21:39
2006.01.22
Опять RENDOMIZE


14-1135896255
версия для печати
2005-12-30 01:44
2006.01.22
В бобруйск на зимние каникулы...


2-1136528300
dreamse
2006-01-06 09:18
2006.01.22
Как обновить структуру базы данных не теряя данные ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский