Prestwood eMagazine
Subscribe to our popular FREE monthly eMagazine.

Enter your email:

Subscription Center
 
Support Us!
Support this community,
buy from our store!

Prestwood Ping Server

$29.95
Visit Store
 
 

New KB Comments

The new kb comments ordered newest to oldest. 

To view comments to your KB Articles, go to your My Knowledge Base page. To view user contributions to your blogs, go to your My Blog page.
Mike Prestwood
Prestwood Software
Send mprestwood a Private Message Visit mprestwood's Home Page
PS Staff
Moderator
Rank: Fleet Admiral

Joined: Oct 2000
Visits: 21456
MB Posts: 981

KB Articles: 885

Location: Citrus Heights, CA USA
Tuesday, September 02, 2008 Read | +Add Comment

Nice addition Mark, thanks.



Regarding...
Application.ProcessMessages
I always found the sleep command in ObjectPAL very useful. The following code does about the same thing in Delphi. It makes use of GetTickCount which is a Win32 API call that retrieves the number of milliseconds that have elapsed since the system was started, up to 49.7 days.

Mark Bestland
Send mark_bestland a Private Message Visit mark_bestland's Home Page
Rank: Cadet 2nd Year

Joined: Sep 2008
MB Posts: 1

KB Articles: 0

Location: FL USA
Monday, September 01, 2008 (Updated 9/1/2008 9:52:00 AM)
Read | +Add Comment

I would avoid having to re-cast the long-int in each iteration, and I would bullet-proof the tickmax value against a negative delay parameter.

The ProcessMessages call assures the sytem responds to other processes during the iteration.

procedure tutils.delay(const millisecondsdelay: integer);
var tickmax: longint;
begin
tickmax:=max(0,GetTickCount+millsecondsdelay);
repeat
Application.ProcessMessages
until GetTickCount>=tickmax;
end;




Regarding...
Application.ProcessMessages
I always found the sleep command in ObjectPAL very useful. The following code does about the same thing in Delphi. It makes use of GetTickCount which is a Win32 API call that retrieves the number of milliseconds that have elapsed since the system was started, up to 49.7 days.

Zahid
Freelancer
Send zhhamim a Private Message Visit zhhamim's Home Page
Rank: Cadet 3rd Year

Joined: Aug 2008
MB Articles: 0

KB Articles: 0

Location: Dhaka BD
Sunday, August 31, 2008 Read | +Add Comment

Cool!!!



Regarding...
Member Points Program
Member points information.

kroy
Send kroy a Private Message Visit kroy's Home Page
Rank: Cadet 2nd Year

Joined: Aug 2008
MB Articles: 0

KB Articles: 0

Tuesday, August 26, 2008 Read | +Add Comment

I have an windows application using a grid control.  I have set up user settings for each column of the grid to enable the user to determine various properties of those columns.  For example whether a particular user wants this column Visible or not.

Everything works fine for this. But I have had many companies request ing the ability to deliver a standard set of user settings (meaning, they want all users to have the same columns properties).  Application Settings will not work as each company may want to have different columns properties, so they need to be able to modify these settings.  And other companies/users want the ability to have each user determine what column properties they want.

So what would be nice is to tell them to set up one workstation with the column properties they want.  Then enable them to copy those user settings to different users.  Can this be done?



Regarding...
Storing your .NET Application Settings
Storing settings and configuration information for your .NET application can be achieved in a number of ways including using the app.config file and the ConfigurationManager class, using the registry, and in your own custom configuration file.

Steve Green
Diamond Software Group, Inc.
Send greens a Private Message Visit greens's Home Page
Rank: Cadet 4th Year

Joined: May 2008
MB Posts: 23

KB Articles: 0

Location: Myrtle Beach, SC USA
Tuesday, August 19, 2008 Read | +Add Comment

you must delete the toolbar files.. see details on Bertil's web site..

http://hem.bredband.net/bertilisberg/paradox/errdocs2/eid230.htm



Regarding...
Install Paradox 9 on Vista
Instructions to install Paradox 9 for Windows on Vista.

j.malcolmson
APR
Send j.malcolmson a Private Message Visit j.malcolmson's Home Page
Rank: Cadet 3rd Year

Joined: Mar 2004
MB Articles: 0

KB Articles: 0

Location: Burnaby, BC CA
Tuesday, August 19, 2008 Read | +Add Comment

Has anyone gotten the following dialogue when opening Paradox 9 in Vista?

"An attempt was made to access an unmanned file past its end."

After clicking Ok, the program starts and runs in a fairly stable manner.  When I tried installing higher versions of Paradox in Vista (like the one from the X3 package), the same message comes up and blocks the program from running at all.

John Malcolmson, Burnaby, BC

 



Regarding...
Install Paradox 9 on Vista
Instructions to install Paradox 9 for Windows on Vista.

Mike Prestwood
Prestwood Software
Send mprestwood a Private Message Visit mprestwood's Home Page
PS Staff
Moderator
Rank: Fleet Admiral

Joined: Oct 2000
Visits: 21456
MB Posts: 981

KB Articles: 885

Location: Citrus Heights, CA USA
Monday, August 04, 2008 Read | +Add Comment

Refer to the section titled "Defeat Vista's Application Virtualization" in the Paradox 9 on Vista article. That should help.



Regarding...
Corel Paradox for Windows on Vista
Does Corel Paradox for Windows run on Vista? If so, are there any issues?

grantr
Send grantr a Private Message Visit grantr's Home Page
Rank: Cadet 3rd Year

Joined: Apr 2003
MB Articles: 0

KB Articles: 0

Location: CA
Friday, August 01, 2008 Read | +Add Comment

Installed Pdox 7/32 on VHP yesterday.. Ran into errors, and just blanket changed permissions on directories to get running.. Today installing Ultimate32 and will try domain connection and idapi.. hopin it works.. works on every OS to date :)

 

Grant



Regarding...
Corel Paradox for Windows on Vista
Does Corel Paradox for Windows run on Vista? If so, are there any issues?

Martin Evans
Arenig Ltd
Send martin2 a Private Message Visit martin2's Home Page
Rank: Cadet 3rd Year

Joined: Jul 2008
MB Posts: 1

KB Articles: 0

Location: Betws Gwerfil Goch UK
Monday, July 21, 2008 Read | +Add Comment

Hi, I've just downloaded your trial version of psSendMail to run with Paradox 9.  It appears to work fine and be just what I need - EXCEPT.  When I run it on a Vista machine and send HTML emails, it just seems to send plain text.  Yes, I do have the HTML flag set to True - works great with XP.

Your help appreciated.

Regards

Martin Evans



Regarding...
psSendMail DLL
Easily send e-mail directly from your custom applications. Works with all 32-bit Windows development environments and includes Paradox, Access, and Visual Basic examples.

Mike Prestwood
Prestwood Software
Send mprestwood a Private Message Visit mprestwood's Home Page
PS Staff
Moderator
Rank: Fleet Admiral

Joined: Oct 2000
Visits: 21456
MB Posts: 981

KB Articles: 885

Location: Citrus Heights, CA USA
Monday, July 14, 2008 (Updated 7/14/2008 6:23:57 PM)
Read | +Add Comment

I was also asked recently, why we no longer develop websites for 800x600 resolution. The reason is quite simply that according to w3schools.com, as of January 2008 86% of the web surfers are using a resolution of 1024x768 or higher.



Regarding...
Testing Websites with Various Browsers
What browsers and resolutions should I test my website with?

Mike Prestwood
Prestwood Software
Send mprestwood a Private Message Visit mprestwood's Home Page
PS Staff
Moderator
Rank: Fleet Admiral

Joined: Oct 2000
Visits: 21456
MB Posts: 981

KB Articles: 885

Location: Citrus Heights, CA USA
Monday, July 14, 2008 (Updated 7/14/2008 5:59:56 PM)
Read | +Add Comment

I was asked recently why we removed Netscape from our standard list of browsers we design pages for. The reason is that Netscape is no longer supported by Netscape. Refer to the following page for more information:



Regarding...
Testing Websites with Various Browsers
What browsers and resolutions should I test my website with?

Mike Prestwood
Prestwood Software
Send mprestwood a Private Message Visit mprestwood's Home Page
PS Staff
Moderator
Rank: Fleet Admiral

Joined: Oct 2000
Visits: 21456
MB Posts: 981

KB Articles: 885

Location: Citrus Heights, CA USA
Monday, July 14, 2008 (Updated 7/14/2008 6:00:10 PM)
Read | +Add Comment

I was asked recently why we removed Netscape from our standard list of browsers we test against. The reason is that Netscape is no longer supported by Netscape. Refer to the following page for more information:



Regarding...
Test Using Common Browsers
Test each website with various common browsers. As of early 2008, we test each website we build with Internet Explorer, FireFox, and Safari. Sometimes we also include Opera as part of our standard test suite. The minimum resolution we test for "regular" websites is 1024x768 (and higher). We no longer support 800x600.

Mike Prestwood
Prestwood Software
Send mprestwood a Private Message Visit mprestwood's Home Page
PS Staff
Moderator
Rank: Fleet Admiral

Joined: Oct 2000
Visits: 21456
MB Posts: 981

KB Articles: 885

Location: Citrus Heights, CA USA
Sunday, July 06, 2008 Read | +Add Comment

Today I cleaned up this articles code (re-pasted from my P9 book).



Regarding...
Paradox and the Internet
Using Paradox internet features. Content from chapter 25 of my "Paradox Power Programming: The Official Guide" book.

Mike Prestwood
Prestwood Software
Send mprestwood a Private Message Visit mprestwood's Home Page
PS Staff
Moderator
Rank: Fleet Admiral

Joined: Oct 2000
Visits: 21456
MB Posts: 981

KB Articles: 885

Location: Citrus Heights, CA USA
Wednesday, July 02, 2008 (Updated 7/2/2008 11:13:22 AM)
Read | +Add Comment

Hi Graham,

>>...customer in a Customer table and orders would be in an Orders table?

Yes customers in customer table and orders in the orders table as usual.

>>...how many orders have been placed by a specific Customer belong in the Customer library (class) or in an Orders library?

Since Number of Orders is a property of a customer, I would put that property in the Customer class but you are correct that that custom method would indeed count the values from the orders table. It uses the orders.db table. Although classes frequently map 1 to 1 to tables in a database, when creating reusable code, you need to switch your thinking. You need to switch from a data-centric view to an object-centric view.

>>Or would you have a method in Customer.lib which called a method in Orders.lib?

If I wanted the ability to retrieve the number of orders of a customer in the Orders class, sure, you could design it that way. And yes, you could use aggregation where the Customer class "has a" orders object in it. In ObjectPAL, you would have to simply make use of an Orders.lib custom method.



Regarding...
Introduction to OO for the Paradox Community
Compromise OO implementation strategies for Paradox developers.

Graham Farquhar
Send GrahamFarquahar a Private Message Visit GrahamFarquahar's Home Page
Rank: Cadet 3rd Year

Joined: Jun 2005
MB Articles: 0

KB Articles: 0

Location: Newark UK
Wednesday, July 02, 2008 Read | +Add Comment

Interesting article.

I feel the example based on interrogating the 'Customer' table to find out how many orders have been placed somewhat dubious in terms of database design - surely you would only have one record per customer in a Customer table and orders would be in an Orders table?

As far as OO design goes would a method to find out how many orders have been placed by a specific Customer belong in the Customer library (class) or in an Orders library? Or would you have a method in Customer.lib which called a method in Orders.lib?



Regarding...
Introduction to OO for the Paradox Community
Compromise OO implementation strategies for Paradox developers.

Mamacita
Send Mamacita a Private Message Visit Mamacita's Home Page
Rank: Cadet 3rd Year

Joined: Feb 2001
MB Posts: 1

KB Articles: 0

Location: Milpitas, CA USA
Tuesday, July 01, 2008 Read | +Add Comment

Well Played.

mOM



Regarding...
Install Paradox 9 on Vista
Instructions to install Paradox 9 for Windows on Vista.

Mike Prestwood
Prestwood Software
Send mprestwood a Private Message Visit mprestwood's Home Page
PS Staff
Moderator
Rank: Fleet Admiral

Joined: Oct 2000
Visits: 21456
MB Posts: 981

KB Articles: 885

Location: Citrus Heights, CA USA
Tuesday, July 01, 2008 Read | +Add Comment

Also of note...

In Delphi for .Net, there is no difference between virtual and dynamic.



Regarding...
Virual; Abstract; vs. Dynamic; Abstract;
Why do I have to specify virtual when creating an abstract method? Why not just abstract?

Mike Prestwood
Prestwood Software
Send mprestwood a Private Message Visit mprestwood's Home Page
PS Staff
Moderator
Rank: Fleet Admiral

Joined: Oct 2000
Visits: 21456
MB Posts: 981

KB Articles: 885

Location: Citrus Heights, CA USA
Tuesday, July 01, 2008 (Updated 7/1/2008 5:34:05 PM)
Read | +Add Comment

Here is the syntax in question:

function Age: Integer; Abstract; //Does not work.

 

The above returns the following error:

[Pascal Error] poc_ClassTestsUnit1.pas(23): E2167 Abstract methods must be virtual or dynamic

 

Here is the correct syntax:

function Age: Integer; Virtual; Abstract; //Optimized for speed and most common.
 
function Age: Integer; Dynamic; Abstract; //Optimized for size.

 

For example, here is a complete simple class example:

  TMyClass = class(TObject)
  private
    function Name: String;
  public
    function Age: Integer; Abstract;
  end;

 

Then in a descendent class, you implement it:

//Class declaration...
TMyClass2 = class(TMyClass)
public
  function Age: Integer;
end;
 
 
//Method implementation...
function TMyClass2.Age: Integer;
begin
  Age := 12;
end;


Regarding...
Virual; Abstract; vs. Dynamic; Abstract;
Why do I have to specify virtual when creating an abstract method? Why not just abstract?

Mike Prestwood
Prestwood Software
Send mprestwood a Private Message Visit mprestwood's Home Page
PS Staff
Moderator
Rank: Fleet Admiral

Joined: Oct 2000
Visits: 21456
MB Posts: 981

KB Articles: 885

Location: Citrus Heights, CA USA
Wednesday, June 25, 2008 (Updated 6/25/2008 7:28:57 PM)
Read | +Add Comment

For more information on the history of Pascal Casing:



Regarding...
Camel versus Pascal Casing
What is the difference between Camel Casing and Pascal Casing?

Mike Prestwood
Prestwood Software
Send mprestwood a Private Message Visit mprestwood's Home Page
PS Staff
Moderator
Rank: Fleet Admiral

Joined: Oct 2000
Visits: 21456
MB Posts: 981

KB Articles: 885

Location: Citrus Heights, CA USA
Tuesday, June 24, 2008 Read | +Add Comment

Once you've tried the above suggestions at some point you have to give up and request free support from MS. The link below will get you to the starting point:

http://forums.microsoft.com/TechNet/ShowPost.aspx?PostID=3069333&SiteID=17

It does collect information from your specific computer that will help MS help you.



Regarding...
Vista SP1 Is Here, Finally!
Of course SP1 fixes some bugs, but more interesting are it's new features!

Mike Prestwood
Prestwood Software
Send mprestwood a Private Message Visit mprestwood's Home Page
PS Staff
Moderator
Rank: Fleet Admiral

Joined: Oct 2000
Visits: 21456
MB Posts: 981

KB Articles: 885

Location: Citrus Heights, CA USA
Tuesday, June 24, 2008 Read | +Add Comment



Regarding...
Vista SP1 Is Here, Finally!
Of course SP1 fixes some bugs, but more interesting are it's new features!

Mike Prestwood
Prestwood Software
Send mprestwood a Private Message Visit mprestwood's Home Page
PS Staff
Moderator
Rank: Fleet Admiral

Joined: Oct 2000
Visits: 21456
MB Posts: 981

KB Articles: 885

Location: Citrus Heights, CA USA
Tuesday, June 24, 2008 Read | +Add Comment



Regarding...
Vista SP1 Is Here, Finally!
Of course SP1 fixes some bugs, but more interesting are it's new features!

Mike Prestwood
Prestwood Software
Send mprestwood a Private Message Visit mprestwood's Home Page
PS Staff
Moderator
Rank: Fleet Admiral

Joined: Oct 2000
Visits: 21456
MB Posts: 981

KB Articles: 885

Location: Citrus Heights, CA USA
Monday, June 23, 2008 Read | +Add Comment

Tip: Before applying SP1, make sure all current updates have successfully installed. If you have any failed updates, resolve that PRIOR to attempting to apply SP1.



Regarding...
Vista SP1 Is Here, Finally!
Of course SP1 fixes some bugs, but more interesting are it's new features!

Mike Prestwood
Prestwood Software
Send mprestwood a Private Message Visit mprestwood's Home Page
PS Staff
Moderator
Rank: Fleet Admiral

Joined: Oct 2000
Visits: 21456
MB Posts: 981

KB Articles: 885

Location: Citrus Heights, CA USA
Monday, June 23, 2008 Read | +Add Comment

Tip: Before applying SP1, make sure you have registered your copy of Vista with Microsoft.



Regarding...
Vista SP1 Is Here, Finally!
Of course SP1 fixes some bugs, but more interesting are it's new features!

Wes Peterson
Prestwood Software
Send Wes a Private Message Visit Wes's Home Page
PS Staff
Moderator
Rank: Commander

Joined: Jan 2004
Visits: 777
MB Posts: 67

KB Articles: 104

Location: Citrus Heights, CA USA
Friday, June 20, 2008 Read | +Add Comment

Great tip about a grammatical detail often confused!  I like the "he/him" example; makes it easier to remember.

Additional tip:  When dealing with plural "hims," like "people," it's become acceptable to replace the who/whom confusion with a simple "that."  Ex:

People that like Delphi are geniuses.



Regarding...
who versus whom
"him" is for "whom" and "he" is for "who" Who is coding that requirement? (He is coding it.) To whom do we ask about this requirement? (We ask him.)


Need a software developer? Prestwood can help.

1.Open A Support Account
Ready to start now?

Select this option to open a support account.
2.Submit An Issue
An account rep will contact you with a free estimate.
Existing Clients
Pre-Pay Hours and Save $$$
Pre pay for 1 or more hours and save. The more hours you pre-pay, the greater the savings!
Or, submit a Task or Project now.
5,279 Visitors Online Now!     6,179 Total Visitors In Last 22.7 hours!   (Our programmer community has 8,750 registered members.)  
Online Now... Sign In/Sign Up to see who's online now!
Mike Prestwood
If you have any questions, please
email me at .
--Mike Prestwood

Copyright 1995-2008 Prestwood Software.
All rights reserved.

[Security & Privacy]
 

Attention Developers!
Join the Prestwood Developer Community

OO, UML, Visual Studio.Net, C#, VB.Net, ASP.Net, C++, Java, PHP, ASP, JavaScript, Delphi, Access / Paradox
blogs
message boards
knowledge base
articles
jobs database
resume database
get published!
Visit Community | Sign Up Now!
It's free and takes less than 30 seconds.