August 11, 2001
Looking for a way to integrate zip and unzip functionality into your application on the cheap? Here's the plan-and Fernando Vicaria has even wrapped it all up into a neat little...
August 8, 2001
(Computer simulates learning process of human, learning by correcting mistakes !)Artificial Intelligence (AI) is an advance branch of science that studies the process of human...
August 7, 2001
Moving components from Delphi 5 to 6 can be a problem. How can we do it?Have you tried to compile your components, or 3rd party components you have
in Delphi 5 into Delphi 6?
99%...
August 7, 2001
Programatically and Failsafe Lock Records in MSSQL 7
How would you like to be able to determine if a record has been locked in
MSSQL Server and not get that annoying 'Record has...
August 7, 2001
How to get local IP address
uses Winsock;
function GetLocalIP: string; var wsaData: TWSAData; addr: TSockAddrIn; Phe: PHostEnt; szHostName: array[0..128] of...
August 7, 2001
How do I implement record locking on an Access 2000 database using Delphi?Have you seen this on Borland Support?
Area: database\ado
Reference Number: 74076
Status: Open
Date Reported:...
August 4, 2001
The MessageDlg function is very useful because it handles all wordwrapping of the message and handles positioning of the buttons. But two different needs for a non-default behavoir...
August 4, 2001
How to check if a sound card is installed or not.This tip is not my own, it was sent to me via email.
function IsSoundCardInstalled : Boolean;
type
SCFunc = function...
August 4, 2001
Sending large pages of HTML is no longer a problem now that we can send the pages compressed !
After two weeks of non-stop programming, your web application is ready and tested....
August 1, 2001
When the length of a string in a combobox exceeds the width of the combobox there are 3 things that can be done they are
Shorten the string (not a very good solution)
Add a horizontal...
August 1, 2001
With different versions of MDAC available it is sometimes useful to know that your application won't fail because a user hasn't got the latest version installed
The following...
July 29, 2001
How to determine which Borland product is compiling your component.Here is a brief explanation of what each of the defines mean
DFS_WIN16: Compilation target is 16-bit Windows
DFS_WIN32:...
July 27, 2001
In this article, David Bolton shows how to create a simple Web robot that does multiple parallel searches on a search engine and visits each Web site in the results and downloads...
July 27, 2001
The problems of using and reusing many varying size objects in an application can cause fragmentation of the heap that can slow down processing speed. This article uses a factory...
July 27, 2001
Writing Excel add-ins with Delphi is a challenging project. I show how it can be done, and highlight the various pitfalls waiting for the unwitting traveller in this largely unexplored...
July 23, 2001
This letter was originally posted to delphi3000.comThe Delphi documentation on the TServerSocket's multithreading capabilities can appear a little sparse for the untrained eye....
July 23, 2001
This article was originally posted to delphi3000.comSometimes it is nessescary to turn the bytes of an integer. This is known as the big-endian/little-endian problem, and occurs...
July 20, 2001
This shows how to start using the DirectX library in Delphi programs and then demonstrates a simple application using the freeware library DelphiX.If you have ever tried doing...
July 19, 2001
Add a button to the caption bar of the formI have created a component that allows you to add buttons to the caption bar of your form. Here is the code.
____________Code______________
unit...
July 18, 2001
This code shows one way to save much things that's going on in your application in a log file.Here are two files present, the project file and one unit that does the work...
{Unit1.pas}
unit...
July 13, 2001
In a word processor, you can work on paragraphs and then pour them
into other programs as single lines, wrapped by the receiving windows. Here's how to write this into an ordinary...
June 12, 2001
Explains what Atoms are and how you can use them to send strings to other applications - without the need for shared memory.Topic: DebugWindow using Atoms and Messages
Areas: Windows...
June 2, 2001
How to tell what type a property is.
var PropInfo: PPropInfo; Info: PTypeInfo; begin PropInfo := GetPropInfo(Self, 'Test'); if PropInfo = nil then Exit; if...
June 2, 2001
How to tell if your code is being run in debug mode.I found this code somewhere on the Internet, I cannot remember the source so I cannot credit the original author.
function...
June 2, 2001
The article describes how to create a class that follows the singleton pattern. The class described will take care of the singleton requirements and effects itself, effectively...
May 25, 2001
Append a copy of your current record.
{************************************************
// procedure AppendCurrent
//
// Author: Steve Zimmelman
// Date : 06/04/1996
//
// Version:...
May 25, 2001
Access FoxPro data using the speed of Rushmore in Delphi. Delphi Developer January 1999Copyright Pinnacle Publishing, Inc. All rights reserved.Speedy Access to FoxPro Data from...
May 25, 2001
Implementing FoxPro's Scatter and Gather Memvar in Delphi. Delphi Developer February 2001 Copyright Pinnacle Publishing, Inc. All rights reserved.
Implementing FoxPro's Scatter...
May 24, 2001
Business objects like to expose themselves and their relations. In this article I show you how.Simple Object Relationships
In the last article we looked at how the classic Stock,...
May 24, 2001
Object data must ultimately be stored in a database. This article shows you how.Persistent Objects
In the last couple of articles we have introduced business objects and shown...
May 24, 2001
In this article I demonstrate one way of working with sets of business objectsThe Needs Of The Many
May 24, 2001
Philip Brown introduces his column and describes how to ensure your applications are compiled correctly.
Standardising Application Builds
Hopefully I'll be able to make this an...
May 24, 2001
Classes that encapsulate business rules lay the foundations of a true object oriented application.Implementing Business Objects
This article is the first of a series in which we'll...
May 24, 2001
In this article I press the Factory pattern into service for menu operations.Are You Being Served?
May 24, 2001
In this article I continue my look at implementing sets of objects.Concise Custom Constructors
In my last article I set out the broad principles behind implementing sets of objects...
May 24, 2001
This article I will investigate the means by which version information can be made available within an application, writing a class which can be incorporated into any new development.
Adding...
May 23, 2001
Window-handling is important in any complex MDI editor. You need a stable and updated window number list. The default pick-list on the Window menu is unstable if you have more...
May 22, 2001
2 simple lines of code will greatly improve table update speedIf you are doing batch updates like Append, Insert, Delete to a table,
Most of you are already using Table1.DisableControls;...
May 22, 2001
How many times have you wished you could see the contents of your program's
frozen form when stopped by the degugger? Well, now you can!Nothing is more frustrating than to be in...
May 16, 2001
Uses TSearchRec to loop through the Explorer favourites, which really are inifiles. Result is beeing placed in HTML and text files.NOTE: This article is a couple of years old....
May 16, 2001
This article explains a quick and simple method of allowing Delphi to automatically generate implementation wrappers for each interface/coclass you add to a type library.If you've...
May 16, 2001
An example of how to retrieve a list of selected nodes within a TListView.var
i: Integer;
s: string;
ls: TListItem;
begin
ls :=...
May 14, 2001
The Window/Tile menu item is useful if only two files are open. This
code implements a more useful Tile Top 2 of N Windows that doesn't
lose other files that may be open.
Selective...
May 13, 2001
How to determine if the current machine has large or small fonts installed.Windows settings can come in two flavors, Small Fonts and Large Fonts
(found under Control Panels, Display...
May 12, 2001
How to program the system menu in the MDI child windows
of an MDI text editor or textwriter to change Next and Prev
from z-stack running to useful writing/editing tasksProgramming...
May 11, 2001
This article demonstrates how users can alter their GUI at runtime. Delphi Developer February 1999 Copyright Pinnacle Publishing, Inc. All rights reserved.Give Your Clients Control...
May 11, 2001
How to determine the angle needed to travel from X1,Y1 to X2, Y2.Relative angles
Drawing a line from 100, 100 to 200, 200 would mean that you are
drawling your line at 135 degrees.
This...
May 11, 2001
This article demonstrates how to implement the Microsoft Agent into your own applications.
This article originally appeared in Delphi Developer
Copyright Pinnacle Publishing,...
May 11, 2001
Whereas a Mutex may be used to allow only a single instance of your app, a Semaphore can be use to allow a specific number.Creating semaphores
A Semaphore is created using the...
May 11, 2001
How to get the current user's login name.function UserName : String;
var
Size : DWord;
Name : PChar;
begin
Name :=...