aGetfiles bug

User avatar
byte-one
Posts: 1048
Joined: Mon Oct 24, 2005 9:54 am
Location: Austria
Contact:

Re: aGetfiles bug

Post by byte-one »

Ok, to test it, i require the function fw_wcslen()! Can somebody send me or show the place in source?
Regards,
Günther
---------------------------------
office@byte-one.com
User avatar
Giovany Vecchi
Posts: 129
Joined: Mon Jun 05, 2006 9:39 pm
Location: Brasil

Re: aGetfiles bug

Post by Giovany Vecchi »

The problem is not in bytes, but in query length.
Example: If you select 60 files that are in the c: \ temp folder, it would look like this:
"c: \ temp \ archi01.txt" "c: \ temp \ archi02.txt" etc etc.
Each file would take 21 len characters ("'c: \ temp \ archi01.txt'") = 21
If the folder is of greater length Ex: c: \ My documents secrets, it would look like this:
"c: \ My documents secrets \ archi01.txt"
len ('"c: \ My documents secrets \ archi01.txt"') = 37

So if you put a higher value in:
pFile = fw_parWideLen (8, 65534); // 65534 would be the limit of 16 bits, I did not test greater than this value.

The return of the characters composition arranged in windows api will be treated with more space.

I did not go deep to study certainly what causes the error. I know I solved it this way.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: aGetfiles bug

Post by Antonio Linares »

Günther,

Code: Select all

size_t fw_wcslen( const wchar_t * s )
{
   const wchar_t *p;

   p = s;
   while (*p)
      p++;

   return p - s;
}
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
byte-one
Posts: 1048
Joined: Mon Oct 24, 2005 9:54 am
Location: Austria
Contact:

Re: aGetfiles bug

Post by byte-one »

Antonio, now a have increased #define SIZE_IN_BYTES 153840
But that is not all. In HB_FUNC( CGETFILE ) i made this changes:

Code: Select all

…...
    pDir        = fw_parWideLen( 4, 512 );
    wLen    = ( ( dwFlags & OFN_ALLOWMULTISELECT ) ? SIZE_IN_BYTES : 512 );   //[b]reactivate[/b]
    pFile       = fw_parWideLen( 8, wLen );   //[b]change[/b]
    pFilter = fw_parWideLen( 1, 800 );
    pText = ( LPSTR ) pFilter;
    for ( w = 0; w < 800; w++ )
…...
   ofn.nMaxFile        = wLen;     //[b]change[/b]
…...
Regards,
Günther
---------------------------------
office@byte-one.com
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: aGetfiles bug

Post by Antonio Linares »

Günther,

Is it working fine now ?

Many thanks for your great feedback :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
byte-one
Posts: 1048
Joined: Mon Oct 24, 2005 9:54 am
Location: Austria
Contact:

Re: aGetfiles bug

Post by byte-one »

I now can get many files ( 300 i have tested)!
Regards,
Günther
---------------------------------
office@byte-one.com
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: aGetfiles bug

Post by Antonio Linares »

Please email me your modified file, thanks!
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
byte-one
Posts: 1048
Joined: Mon Oct 24, 2005 9:54 am
Location: Austria
Contact:

Re: aGetfiles bug

Post by byte-one »

Antonio, sent!
Regards,
Günther
---------------------------------
office@byte-one.com
User avatar
byte-one
Posts: 1048
Joined: Mon Oct 24, 2005 9:54 am
Location: Austria
Contact:

Re: aGetfiles bug

Post by byte-one »

Antonio, is this included in new version?
Regards,
Günther
---------------------------------
office@byte-one.com
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: aGetfiles bug

Post by Antonio Linares »

Günther,

No, it is not included yet. I am checking why it has not been included yet.

Please email it to me again, thanks
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: aGetfiles bug

Post by Antonio Linares »

We found your email and we are implementing it.

many thanks for the reminder
regards, saludos

Antonio Linares
www.fivetechsoft.com
Ariel
Posts: 309
Joined: Wed Nov 29, 2006 1:51 pm
Location: Rosario - Argentina

Re: aGetfiles bug

Post by Ariel »

Antonio,

no te olvides de incluir esto ya que a mi tmb me casca.

Gracias.!
User avatar
byte-one
Posts: 1048
Joined: Mon Oct 24, 2005 9:54 am
Location: Austria
Contact:

Re: aGetfiles bug

Post by byte-one »

Please, what in english?
Regards,
Günther
---------------------------------
office@byte-one.com
Post Reply