Yesterday, I was shocked receiving a phone call from my boss reporting the application I wrote were unable to run on Windows Vista. Actually I know there were sort of problems reported on existing applications failed to run on from online developers network, but none that I aware of since we do not have any windows vista ever deployed on our company’s infrastructure, and it continues for years until yesterday. Now, my boss’s notebook were installed with Vista and suppose the application could runs on it also.
It is quite hard to start of, mainly because I do not have any windows vista installed on my desktop, nor on my notebook. The only way is trying to analyze the problem from the exception log file he sent to me, then I can find of and start with the main source line where the problem occured:
InitializeSecurityDescriptor(@Sd,SECURITY_DESCRIPTOR_REVISION);
SetSecurityDescriptorDacl(@Sd,true,nil,false);
Sa.nLength := SizeOf(Sa);
Sa.lpSecurityDescriptor := @Sd;
Sa.bInheritHandle := true;
m_Handle := CreateFileMapping(INVALID_HANDLE_VALUE,
@Sa, PAGE_READWRITE OR SEC_COMMIT,
0, m_Size, PChar(FileName));
if m_Handle = 0 then
raise EMemoryMappedFileException.Create(SCreateError);
Not knowing what I should do with this line since I can not debug it to know it’s behaviour on Vista, I try to search on google and did find some workaround to deal with, but none of them proved to works. Does diabling the UAC (User Access Control) or run the application on Administration mode is the last solution? i hope not, I still believe there were another better way to deal with.
Any suggestion are welcome.
My name is
Perhatian: Informasi yang terdapat disini bener-bener hanya merepresentasikan cerita, pengalaman, ataupun pandangan yang merupakan opini pribadi dari saya sebagai ego. Segala hal yang bersifat pandangan ke depan sebenarnya lebih bersifat spekulatif dan bisa saja berobah meski saya bukan bunglon.