Hi,
Thank you for replying my email J
I tried the suggested solution but L unfortunately it could not solve it.
Here a sample file you may could do something caz am fed up of it
Open the attached file with db.exe then change the extension from inf to dbf
then you can use the database desktop
.. this is the manual solution per each
file each time you need to use it I need to use it regularly as another
application getting reports from that application.
Thank you again.
Charlie Chambers <[EMAIL PROTECTED]> wrote:
Hi Loay,
I had a similar problem with a Smartware db file and did the following to
unlock the db file. Don't know if it will help but might be something that you
could use to develop your own code to at least check or reset the bits so as to
open and export per your needs???
const
fFixDB:Array[1..4] of byte = (0,0,0,0);
fLockedDB:Array[1..4] of byte = (255,255,255,255);
{----------------------------------------------------------}
function TForm1.UnlockDB(FileName:String):Boolean;
var fFileH,I: Integer; B:Boolean;
begin
B:=False;
if FileExists(FileName) then begin
fFileH:=FileOpen(FileName,fmOpenReadWrite);
if fFileH>0 then begin
FileSeek(fFileH,20,0);
I:=FileWrite(fFileH, fFixDB, 4);
if I=4 then //Ok
else
if fException=True then begin
Raise Exception.Create('Cannot UnlockDB');
end;
end;
FileClose(fFileH);
B:= NOT IsDBLocked(FileName);
end;
UnLockDB:=B;
end;
{----------------------------------------------------------}
Cheers,
Charlie
----- Original Message -----
From: Loay Habash
To: [email protected] ; Greatis Delphi Pages
Sent: Saturday, February 24, 2007 6:38 AM
Subject: [delphi-en] DBase III to Delphi
Hello,
I need to migrate dbf files from an old application to another db format, From
old application built on clipper dbase III, the problem you can't open the file
directly by the "Databse Descktop" error "unable to open table, corrupt
table/index header", but first you need to open it by Dbase "DBU.EXE" , and it
should be file by file,�� then you can open it with "Database Desktop",�.
After investigation about why is that I new that there is exclusive table lock
by the application,â?¦..
So how can I write a procedure that will unlock all the tables before doing the
migration,â?¦.
Thank you
Loay Habash,
http://groups.yahoo.com/group/WeLoveYouAll/
http://profiles.yahoo.com/leohabash
[EMAIL PROTECTED]
Mobile: +966503322315
---------------------------------
Want to start your own business? Learn how on Yahoo! Small Business.
[Non-text portions of this message have been removed]
[Non-text portions of this message have been removed]
Loay Habash,
http://groups.yahoo.com/group/WeLoveYouAll/
http://profiles.yahoo.com/leohabash
[EMAIL PROTECTED]
Mobile: +966503322315
---------------------------------
Don't pick lemons.
See all the new 2007 cars at Yahoo! Autos.
[Non-text portions of this message have been removed]