Re:Password protect Paradox table - Delphi 1
Quote
> Also, how can I stop a user loading a second instance of my application.
Joe,
This is how we do this:
gPMHwnd := FindWindow('TFrmMainShip','PostalMate 2000');
// the 1st parameter is the Object declaration for out main form
// the 2nd parameter is the caption of the main form.
if gPMHwnd = 0 then
begin
. . . do stuff to start your app . . .
else
begin
SetForeGroundWindow(gPMHwnd);
end;
I do this in the source for the project the "stuff to start your app" is
all the form create statements Delphi automatically creates for you.
=====================
this is from the Win32.hlp that comes with Delphi:
The FindWindow function retrieves the handle of the top-level window
whose class name and window name match the specified strings. This
function does not search child windows.
HWND FindWindow(
LPCTSTR lpClassName, // address of class name
LPCTSTR lpWindowName // address of window name
);
Parameters
lpClassName
Points to a null-terminated string that specifies the class name or is
an atom that identifies the class-name string. If this parameter is an
atom, it must be a global atom created by a previous call to the
GlobalAddAtom function. The atom, a 16-bit value, must be placed in the
low-order word of lpClassName; the high-order word must be zero.
lpWindowName
Points to a null-terminated string that specifies the window name (the
window's title). If this parameter is NULL, all window names match.
Return Value
If the function succeeds, the return value is the handle of the window
that has the specified class name and window name.
If the function fails, the return value is NULL. To get extended error
information, call GetLastError.
See Also
EnumWindows, FindWindowEx, GetClassName, GlobalAddAtom