Вниз
Скачать: CL | DM;

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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.025 c
11-1117438691
mmn
2005-05-30 11:38
2006.01.22
Секция {$I name.inc} в .DPR файле


2-1136547314
DoSpyRap
2006-01-06 14:35
2006.01.22
Как убрать сообщение?


5-1122625321
Juice
2005-07-29 12:22
2006.01.22
Как отлаживать свои компоненты?


2-1136390857
St74
2006-01-04 19:07
2006.01.22
Как перехватить ошибку в приложении?


2-1136310445
Начинающий в сети
2006-01-03 20:47
2006.01.22
IP




   Наверх