home *** CD-ROM | disk | FTP | other *** search
- # Source Generated with Decompyle++
- # File: in.pyc (Python 2.6)
-
- import win32api
- import mmapfile
- import tempfile
- import os
- system_info = win32api.GetSystemInfo()
- page_size = system_info[1]
- alloc_size = system_info[7]
- fname = tempfile.mktemp()
- mapping_name = os.path.split(fname)[1]
- fsize = 8 * page_size
- print fname, fsize, mapping_name
- m1 = mmapfile.mmapfile(File = fname, Name = mapping_name, MaximumSize = fsize)
- m1.seek(100)
- m1.write_byte('?')
- m1.seek(-1, 1)
- m2 = mmapfile.mmapfile(Name = mapping_name, File = None, MaximumSize = fsize * 2)
- m1.seek(0, 0)
- m1.write(fsize * 's')
- move_src = 100
- move_dest = 500
- move_size = 150
- m2.seek(move_src, 0)
- m2.write('m' * move_size)
- m2.move(move_dest, move_src, move_size)
- m2.seek(move_dest, 0)
- m2.close()
- m1.resize(fsize * 2)
- m1.seek(fsize)
- m1.write('w' * fsize)
- m1.flush()
- m1.close()
- os.remove(fname)
- fname_large = tempfile.mktemp()
- mapping_name = 'Pywin32_large_mmap'
- offsetdata = 'This is start of offset'
- fsize = 0x28000014DL
- offset = 33554474
- view_size = 16777327
- if fsize % page_size:
- fsize += page_size - fsize % page_size
-
- if view_size % page_size:
- view_size += page_size - view_size % page_size
-
- offset -= offset % alloc_size
- m1 = None
- m2 = None
-
- try:
- m1 = mmapfile.mmapfile(fname_large, mapping_name, fsize, 0, offset * 2)
- m1.seek(offset)
- m1.write(offsetdata)
- m2 = mmapfile.mmapfile(File = None, Name = mapping_name, MaximumSize = 1, FileOffset = offset, NumberOfBytesToMap = view_size)
- finally:
- if m1 is not None:
- m1.close()
-
- if m2 is not None:
- m2.close()
-
- if os.path.exists(fname_large):
- os.remove(fname_large)
-
-
-