Board index » delphi » Password protect Paradox table - Delphi 1

Password protect Paradox table - Delphi 1

Is it possible to password protect Paradox tables created by a Delphi
App?
Also, how can I stop a user loading a second instance of my application.

All help much appreciated

Joe Beaven

 

Re:Password protect Paradox table - Delphi 1


In article <36DB0CDA.7...@globalnet.co.uk>, sp...@globalnet.co.uk says...

Quote
> Is it possible to password protect Paradox tables created by a Delphi
> App?

What do you mean specifically? Are you creating tables on-the-fly that you want
to be password protected or are you wanting to password protect the tables
outside of Delphi then have Delphi apply the password as tables are opened?
Clarification would help here, please.

Quote
> Also, how can I stop a user loading a second instance of my application.

There is a TI in Borland's developer support section, I think, on Borland's web
site that describes how you go about accomplishing your need. Sorry that I can't
be more specific. Here's the URL -- http://www.borland.com

Regards,

-- Ty

Re:Password protect Paradox table - Delphi 1


Quote
Joe Beaven wrote:
> Also, how can I stop a user loading a second instance of my application.

I use a freeware component for this purpose:
JustOne v1.2 - 16 bit version By: Steven L. Keyser
    email: 71214.3...@compuserve.com

I don't remember exactly where I found it, but it was probably a download
from CompuServe.  You could try to search for it.

The important thing to do is check hPrevInst:

 if hPrevInst <> 0 then
    begin
      {Use EnumWindows here to look for the previous instance, then activate
it.}
      halt;
    end;

Dennis

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

Other Threads