Products| Download| Order| Support| Search| Contacts| About| Chinese
 
Overview
Order
Download
History
FAQ
CheckListBox
Color ComboBox
Font List & Combo
NTPort Library
Zeal ProgressBar

 
 
MemAccess Library

Frequently Asked Questions

  1. How to convert old BASIC program to Visual Basic project?
  2. Which types of bus devices are supported?
  3. Does MemAccess Library provide the feature similar to INP and OUT?
  4. Does MemAccess Library support .NET platform?
  5. How many files do I need to copy to my client's machine?
  6. Do I need to log as administrator when I use MemAccess Library?
  7. How to use DOS format address?
  8. What's the difference between maPeekB and maMapPhysToLinear?
  9. How many pointers to various physical addresses can be used?
  10. What's the meaning of error message "Can't connect to Service Control Manager"?
  11. Does MemAccess Library support 64-bit Windows?  

  1. How to convert old BASIC program to Visual Basic project?

    Q: I have to convert a Qbasic program into a Visual Basic program. Now I got a problem with the Qbasic Poke command and I want to know if I can solve the problem with you product.

    A: Yes. MemAccess Library is an ideal replacement of old BASIC PEEK or POKE statement. Please change Peek function to maPeekB function and Poke statement to maPokeB sub procedure. Because Windows and MS-DOS have completely different memory management mechanism, some old Qbasic program can't be directly converted to Visual Basic. Following are some known issues:

    1. Don't attempt to direct access the keyboard buffer. The result is unexpected if you use MemAccess Library to access the keyboard buffer. Visual Basic users should use SendKeys statement to simulate the Keystrokes. In other languages, use Windows API keybd_event function instead. Use Windows API SetKeyboardState or GetKeyboardState functions to set or get the keyboard input state of your application.
    2. Don't attempt to direct access the video memory. It's very dangerous to use MemAccess Library to directly write the video memory. If you want to improve graphic performance of your program, please refer to Microsoft DirectX technologies (http://www.microsoft.com/directx).
    3. Doesn't support MS-DOS system area. BASIC Programmers may use Peek and Poke to access some MS-DOS system area, for example, Program Segment Prefix (PSP). All these are obsolete in Windows, so MemAccess Library doesn't support it.

    Back to top.

  2. Which type of bus devices are supported?

    Q: I have design a PCI device and want to interface it. Do you support PCI bus?

    A: MemAccess Library supports ISA, EISA and PCI device. If you want to access the memory mapped I/O of PCI device, please refer to maGetDeviceBaseAddress to get the base address of your device.

    Back to top.

  3. Does MemAccess Library provide the feature similar to INP and OUT?

    Q: I need to convert an old BASIC program, which used INP and OUT. Does your library support these functions?

    A: MemAccess Library currently doesn't support port I/O, but we have another product, NTPort Library, which is designed to direct access to port I/O.

    Back to top.

  4. Does MemAccess Library support .NET platform?

    Q: I need to migrate my product to .NET platform. Does MemAccess Library support Microsoft .NET?
    A: MemAccess Library is fully tested under .NET platform, and the Visual Basic.NET, Visual C#.NET, Delphi for .NET and C#Builder samples are included. But the DLL file, memacc.dll, is an unmanaged DLL. Please refer to Using with Visual Basic.NET, Using with Visual C#, Using with Borland C#Builder and Using with Delphi for .NET in the help document.

    Back to top.

  5. How many files do I need to copy to my client's machine?

    Q: I copied my program and MemAcc.dll to my client's Windows NT machine, but it failed to work. After I installed your MemAccess Library package, my program worked fine. What files do I need to copy?

    A: You can find all runtime files you need to distribute in MemAccess\Redist directory. Under Windows NT/2000/XP, you need to distribute MemAcc.sys. Under Windows 95/98/Me, MemAcc.vxd is required. Please read Distribution Notes and How to Make Installation Disk in help document for details.

    Back to top.

  6. Do I need to log as administrator when I use MemAccess Library?

    Q: Do I need to log as administrator when I use MemAccess Library under Windows NT/2000/XP/Server 2003? We do not want every person who uses our application to have full authority to access every part of the operating system.

    A: MemAccess Library supports both administrator and non-administrator accounts, but administrator privileges are required to install MemAccess Library on Windows NT/2000/XP/Server 2003. Because Windows NT/2000/XP/Server 2003's limitation, you need more system configuration if the user doesn't have administrative right. Please read Distribution Notes in help document for details.

    Back to top.

  7. How to use DOS format address?

    Q: In MS-DOS, I use V86-mode address (seg:off). How to use these addresses in MemAccess Library?

    A: Use V86_To_PhyAddress function to convert V86-mode address to physical address.

    Back to top.

  8. What's the difference between maPeekB and maMapPhysToLinear?

    Q: Both maPeekB and maMapPhysToLinear function can be used to access memory. Which one is better?

    A: For most users, maPeekB is easier to use. When use C or Delphi, advanced users may like to use maMapPhysToLinear with pointers. But you need to use the pointer carefully, because if you access the memory which didn't be mapped, the system will crash.

    Back to top.

  9. How many pointers to various physical addresses can be used?

    Q: Can I use multiple pointers to various physical addresses in my application, when I call maMapPhysToLinear function?

    A: There is no limit in MemAcccess Library, so the maximum only depends on the available resource of your system.

    Back to top.

  10. What's the meaning of error message "Can't connect to Service Control Manager"?

    Q: I want to test your MemAccess Library, if it is the right for my application. But on an NT4 machine I become following error message, after run your MemTest program: "Can't connect to Service Control Manager". Can you tell me what's wrong?

    A: Obviously, you don't have administrative right. MemAccess Library supports both administrator and non-administrator accounts, but because Windows NT/2000 limitation, you need more system configuration if the user don't have administrative right. Please read Distribution Notes in help document for details. You can also refer to maGetLastState function about the meaning of other error messages.

    Back to top.

  11. Does MemAccess Library support 64-bit Windows?  

    Q: I want to develop for Windows XP x64 edition. Does your driver support it?

    A: 64-bit Windows requires 64-bit driver. MemAccess Library supports Windows XP/Server 2003 x64 edition for both AMD64 and Intel EM64T, but won't support Intel Itanium(IA64) platform. Both 32-bit(x86) driver and x64 driver are included in this version, but only 32-bit DLL is included. We will provide x64 DLL in the future version. .

    Back to top.

     
     
Products| Download | Order | Support | Search | Contacts | About | Chinese Edition
Copyright (c) 1997-2012 Zeal SoftStudio