Login | Register   
RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: PowerBuilder
Expertise: Beginner
Feb 18, 1999



Full Text Search: The Key to Better Natural Language Queries for NoSQL in Node.js

GetWindowsDirectory API 16 bit to 32 bit

I have migrated an application from 5.0.03 to 6.5 and continue to get this error when pressing the Run button:

Error - 14 - Error opening DLL library kernel.exe for external function
      Window/Menu u_external_function_api
      Object      u_external_function_api
      Event       uf_getwindowsdirectory
      line        1

This application is 16-bit and I am using the external functions for the 16-bit applciation. I have the correct reference for the getwindowsdirectory and it is as follows:

Function uint GetWindowsDirectory (ref string
dirtext, uint textlen) library "kernel.exe"

The one thing I notice is that the kernal.exe is not present on my PC. However, I do not have this problem with my PB 5.0.03 16-bit version on the same PC.

This problem is caused by PB5 being a 16-bit application and PB6 being a 32-bit application. You will need to upgrade all of your 16-bit API calls to 32-bit. The Get Windows Directory API call needs to be replaced with the following API call:

Function ulong GetWindowsDirectoryA (ref string
dirtext, ulong textlen) library "KERNEL32.DLL"

DevX Pro
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date