Latest KB Comments: AIBreveleri

Ordered newest to oldest.
Showing only AIBreveleri posts.
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.
|
|
main menu | Edit | Preferences | General | Project Viewer settings | [] Open Project Viewer on startup
|
Regarding...
Paradox Command-Line Options
Paradox for Windows Command-Line Options, runtime registry settings, adding menu items to Paradox, and manually setup a Vista shortcut.
|
|
|
|
|
Well, if you read the online help manual "ObjectPAL Reference Topics" material on "setEnvironmentVariable()" and "getEnvironmentVariable()", you will discover ...that there isn't any., , That is because on planet Borland, "set" is "write", "get" is "read", and "EnvironmentVariable" is "EnvironmentString". So you have to read the material on "writeEnvironmentString()" and "readEnvironmentString()" instead., , Google has never crawled the inside of the Paradox online help, and the online help index is not a Google search. When you can't find the entry you want under one word, you need to substitute synonyms until something turns up., , Google is still useful, though. You can use it to find the synonyms., , -Al.,
|
|
|
|
"Be Pessimistic".
Indeed, be very very pessimistic. Both the Paradox engine (used by Paradox for DOS) and the BDE (used by Paradox for Windows, shipped with Delphi) contain and respond to built-in permanent passwords. Most of the Paradox graybeards know these backdoor passwords, and you can probably find a Russian capitalist to sell them to you.
So it is not possible to construct a truly secure database using only the password protection coded into an unmodified BDE. Even though few people know of these permanent passwords, and even fewer bother to remember what they are, it only takes one to compromise your data.
-Al.
|
|
|
|
"If i remove the password the query works fine. What would be the reason for this error?"
The most likely reason is that your Paradox driver session already has a password or passwords in effect, and at least one of those has write privileges, but the password that you are explicitly setting in the connect string is read-only.
-Al.
|
|
|
|
Correct as always, Mike.
(1) The "const" is an error. The line should be
proc f(p longint) longint
This wasn't a trick, just a coding error. Sorry.
(2) Right. The result of "f(3)" is ignored. If you encounter a line like this, not in the context of discussing statement-endings, especially after trying to code, say, "z = 7 + f(3)", you may become very confused for a long time. Guess how I know this.
(3) You get to write another book! A collection of bizarre and confusing errors in the most popular languages. You could call it "Unsafe in Any Language".
-A.I.Breveleri.
|
Regarding...
ObjectPAL End of Statement (whitespace)
Languages Focus: End of StatementIn coding languages, common End of statement specifiers include a semicolon and return (others exist too). Also of concern when studying a language is can you put two statements on a single code line and can you break a single statement into two or more code lines.
ObjectPAL End of StatementObjectPAL is a bit unique in that it doesn't use a semicolon nor a return to mark the end of a line, it uses whitespace which can be a return, space, or tab. This is a bit unusual but does allow for some nice formatting of code.,
|
|
|
|
|
It's not so much that ObjectPAL uses whitespace instead of a semicolon or a return to mark the end of a statement, as that ObjectPAL doesn't mark the end of a statement at all.
It's up to the programmer to use white space and new lines to make his code clear. The ObjectPAL parser doesn't care.
Advanced question: given that f(p) is defined as
proc f(const p longint) longint return p + pendprocwhat will this code do
x = 7 + f(3), y = 7 - f(3) z = 7 f(3)?
-A.I.Breveleri
|
Regarding...
ObjectPAL End of Statement (whitespace)
Languages Focus: End of StatementIn coding languages, common End of statement specifiers include a semicolon and return (others exist too). Also of concern when studying a language is can you put two statements on a single code line and can you break a single statement into two or more code lines.
ObjectPAL End of StatementObjectPAL is a bit unique in that it doesn't use a semicolon nor a return to mark the end of a line, it uses whitespace which can be a return, space, or tab. This is a bit unusual but does allow for some nice formatting of code.,
|
|
|
|
|
The BDE has no trouble keeping track of multiple sessions with the same user net name. The locking architecture allows up to 300 simultaneous sessions, and as far as the BDE is concerned, all 300 could have the same net name. (Note: I haven't actually tested this.)
A single instance of the MS Windows OS will only run a single instance of the BDE. Normally, each Paradox or BDE executable will open one session. When one of my users runs N of my DB applications simultaneously, his name appears N times in PDOXUSRS.NET with different session IDs.
The lesson to take away is that the application administrator and the users become confused long before the BDE does.
-Al.
|
Regarding...
Paradox Table Specifications
Covers ALL Paradox tables from version 4 on including a description of the various Paradox table structures, limits, and specifications.
|
|
|
|
|
"Is there any documentation on the lock file format?"
I wrote a utility to monitor the BDE locks, which might give you what you need. Either google 'lockwise bde' or go here:
http://home.comcast.net/~j.breveleri/lockwise.html [[NO LONGER AVAILABLE. --MP]]
Read the included file "lockinfo.txt" for a good description.
-Al.
|
Regarding...
Paradox Table Specifications
Covers ALL Paradox tables from version 4 on including a description of the various Paradox table structures, limits, and specifications.
|
|
|
|