VxD and Long/Short Path

Hi all !
Maybe I found solution to a little problem here…

I´m working in a VxD with Visual C++ 6 and VToolsD…
But… I dont found a way to convert a long path into a short path…

How can I convert inside VxD ?

Thank you

I give up, why do you want to convert to a short path inside a VxD? All
the underlying system functions (that I know of, which admittedly is a
limited and continually rusting set :slight_smile: support long filenames…

Marcos Velasco - UOL wrote:

Hi all !
Maybe I found solution to a little problem here…

I´m working in a VxD with Visual C++ 6 and VToolsD…
But… I dont found a way to convert a long path into a short path…

How can I convert inside VxD ?

Thank you


…/ray..

Please remove “.spamblock” from my email address if you need to contact
me outside the newsgroup.

Hi !

No problem… but I need another question…
How can I convert “Short Path” to “Long Path” in VXD ? :slight_smile:

I need this only for internal comparation…
Why I need know if the files are the same:

c:\program files\my tests\file.exe
c:\progra~1\mytest~1\file.exe
c:\program files\mytest~1\file.exe
c:\progra~1\my tests\file.exe

Thank you

----- Original Message -----
From: “Ray Trent”
Newsgroups: ntdev
To: “Windows System Software Devs Interest List”
Sent: Thursday, October 28, 2004 2:43 PM
Subject: Re:[ntdev] VxD and Long/Short Path

I give up, why do you want to convert to a short path inside a VxD? All
the underlying system functions (that I know of, which admittedly is a
limited and continually rusting set :slight_smile: support long filenames…

Marcos Velasco - UOL wrote:
> Hi all !
> Maybe I found solution to a little problem here…
>
> I´m working in a VxD with Visual C++ 6 and VToolsD…
> But… I dont found a way to convert a long path into a short path…
>
> How can I convert inside VxD ?
>
> Thank you
>
>


…/ray..

Please remove “.spamblock” from my email address if you need to contact
me outside the newsgroup.


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@uol.com.br
To unsubscribe send a blank email to xxxxx@lists.osr.com

Perhaps this is just exposing my VxD knowledge gaps, but couldn’t you
just open them both and see if the file pointer is the same (or whether
they have the same directory/FAT node information or something equivilent)?

In general, though, it’s worth noting that (as far as I know) short file
names are a feature of the shell, which means it’s likely that the most
maintainable way to deal with this problem is to convert everything to
long filenames in user space before passing them down to the VxD (or
putting them in the registry, or whatever).

Marcos Velasco - UOL wrote:

Hi !

No problem… but I need another question…
How can I convert “Short Path” to “Long Path” in VXD ? :slight_smile:

I need this only for internal comparation…
Why I need know if the files are the same:

c:\program files\my tests\file.exe
c:\progra~1\mytest~1\file.exe
c:\program files\mytest~1\file.exe
c:\progra~1\my tests\file.exe

Thank you

----- Original Message -----
From: “Ray Trent”
> Newsgroups: ntdev
> To: “Windows System Software Devs Interest List”
> Sent: Thursday, October 28, 2004 2:43 PM
> Subject: Re:[ntdev] VxD and Long/Short Path
>
>
> I give up, why do you want to convert to a short path inside a VxD? All
> the underlying system functions (that I know of, which admittedly is a
> limited and continually rusting set :slight_smile: support long filenames…
>
> Marcos Velasco - UOL wrote:
>
>>Hi all !
>>Maybe I found solution to a little problem here…
>>
>>I´m working in a VxD with Visual C++ 6 and VToolsD…
>>But… I dont found a way to convert a long path into a short path…
>>
>>How can I convert inside VxD ?
>>
>>Thank you
>>
>>
>
>


…/ray..

Please remove “.spamblock” from my email address if you need to contact
me outside the newsgroup.

Hi !

I need fill a list with full path/file names, the system is ready, but have
problems if the user type a short or long name… (dont have the equivalent
in the list)… Then I need convert the path to long or short… for
comparation…

I test this routine:
http://groups.google.com/groups?q=ifsmgr_serverdoscall&hl=en&lr=&selm=34C85B54.8899C227%40diana.zesoi.fer.hr&rnum=1

But dont work :frowning:

If anyone have another routine, please, sent to me…

Thank you

----- Original Message -----
From: “Ray Trent”
Newsgroups: ntdev
To: “Windows System Software Devs Interest List”
Sent: Thursday, October 28, 2004 4:54 PM
Subject: Re:[ntdev] VxD and Long/Short Path

Perhaps this is just exposing my VxD knowledge gaps, but couldn’t you
just open them both and see if the file pointer is the same (or whether
they have the same directory/FAT node information or something equivilent)?

In general, though, it’s worth noting that (as far as I know) short file
names are a feature of the shell, which means it’s likely that the most
maintainable way to deal with this problem is to convert everything to
long filenames in user space before passing them down to the VxD (or
putting them in the registry, or whatever).

Marcos Velasco - UOL wrote:
> Hi !
>
> No problem… but I need another question…
> How can I convert “Short Path” to “Long Path” in VXD ? :slight_smile:
>
> I need this only for internal comparation…
> Why I need know if the files are the same:
>
> c:\program files\my tests\file.exe
> c:\progra~1\mytest~1\file.exe
> c:\program files\mytest~1\file.exe
> c:\progra~1\my tests\file.exe
>
> Thank you
>
>
>
> ----- Original Message -----
> From: “Ray Trent”
> Newsgroups: ntdev
> To: “Windows System Software Devs Interest List”
> Sent: Thursday, October 28, 2004 2:43 PM
> Subject: Re:[ntdev] VxD and Long/Short Path
>
>
> I give up, why do you want to convert to a short path inside a VxD? All
> the underlying system functions (that I know of, which admittedly is a
> limited and continually rusting set :slight_smile: support long filenames…
>
> Marcos Velasco - UOL wrote:
>
>>Hi all !
>>Maybe I found solution to a little problem here…
>>
>>I´m working in a VxD with Visual C++ 6 and VToolsD…
>>But… I dont found a way to convert a long path into a short path…
>>
>>How can I convert inside VxD ?
>>
>>Thank you
>>
>>
>
>


…/ray..

Please remove “.spamblock” from my email address if you need to contact
me outside the newsgroup.


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@uol.com.br
To unsubscribe send a blank email to xxxxx@lists.osr.com

Marcos Velasco - UOL wrote:

I need fill a list with full path/file names, the system is ready, but have
problems if the user type a short or long name… (dont have the equivalent
^^^^^^^^^^^^^^^^^^^^^^^^

It’s this spot here, in user-mode, where you should be converting the
short name to a long name using GetLongPathName(), *before* passing it
down to your driver.

At least IMNSHO.

in the list)… Then I need convert the path to long or short… for
comparation…

I test this routine:
http://groups.google.com/groups?q=ifsmgr_serverdoscall&hl=en&lr=&selm=34C85B54.8899C227%40diana.zesoi.fer.hr&rnum=1

But dont work :frowning:

If anyone have another routine, please, sent to me…

Thank you

----- Original Message -----
From: “Ray Trent”
> Newsgroups: ntdev
> To: “Windows System Software Devs Interest List”
> Sent: Thursday, October 28, 2004 4:54 PM
> Subject: Re:[ntdev] VxD and Long/Short Path
>
>
> Perhaps this is just exposing my VxD knowledge gaps, but couldn’t you
> just open them both and see if the file pointer is the same (or whether
> they have the same directory/FAT node information or something equivilent)?
>
> In general, though, it’s worth noting that (as far as I know) short file
> names are a feature of the shell, which means it’s likely that the most
> maintainable way to deal with this problem is to convert everything to
> long filenames in user space before passing them down to the VxD (or
> putting them in the registry, or whatever).
>
> Marcos Velasco - UOL wrote:
>
>>Hi !
>>
>>No problem… but I need another question…
>>How can I convert “Short Path” to “Long Path” in VXD ? :slight_smile:
>>
>>I need this only for internal comparation…
>>Why I need know if the files are the same:
>>
>>c:\program files\my tests\file.exe
>>c:\progra~1\mytest~1\file.exe
>>c:\program files\mytest~1\file.exe
>>c:\progra~1\my tests\file.exe
>>
>>Thank you
>>
>>
>>
>>----- Original Message -----
>>From: “Ray Trent”
>>Newsgroups: ntdev
>>To: “Windows System Software Devs Interest List”
>>Sent: Thursday, October 28, 2004 2:43 PM
>>Subject: Re:[ntdev] VxD and Long/Short Path
>>
>>
>>I give up, why do you want to convert to a short path inside a VxD? All
>>the underlying system functions (that I know of, which admittedly is a
>>limited and continually rusting set :slight_smile: support long filenames…
>>
>>Marcos Velasco - UOL wrote:
>>
>>
>>>Hi all !
>>>Maybe I found solution to a little problem here…
>>>
>>>I´m working in a VxD with Visual C++ 6 and VToolsD…
>>>But… I dont found a way to convert a long path into a short path…
>>>
>>>How can I convert inside VxD ?
>>>
>>>Thank you
>>>
>>>
>>
>>
>


…/ray..

Please remove “.spamblock” from my email address if you need to contact
me outside the newsgroup.

Maybe he doesn’t control the program which generates file name. It is unclear, maybe he wants to compare file names on IFS hook.

If I remember correctly, long/short names conversion in kernel mode wasn’t quite easy. I have old VxD allows to mount virtual drives to directories and has to compare pathnames on IFS hook. I didn’t make conversion there; instead, IOCTL which sets “mount point” contains both short and long directory version so hook has data for both possibilities.

Fortunately, w9x is dead and I can forgot all this mess. If conversion is really necessary, Google could help; it keeps old group archives and it had to be discussed sometimes.

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]


From: xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com] on behalf of Ray Trent[SMTP:xxxxx@synaptics.spamblock.com]
Reply To: Windows System Software Devs Interest List
Sent: Thursday, October 28, 2004 11:50 PM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] VxD and Long/Short Path

Marcos Velasco - UOL wrote:
> I need fill a list with full path/file names, the system is ready, but have
> problems if the user type a short or long name… (dont have the equivalent
^^^^^^^^^^^^^^^^^^^^^^^^

It’s this spot here, in user-mode, where you should be converting the
short name to a long name using GetLongPathName(), *before* passing it
down to your driver.

At least IMNSHO.

> in the list)… Then I need convert the path to long or short… for
> comparation…
>
> I test this routine:
> http://groups.google.com/groups?q=ifsmgr_serverdoscall&hl=en&lr=&selm=34C85B54.8899C227%40diana.zesoi.fer.hr&rnum=1
>
> But dont work :frowning:
>
> If anyone have another routine, please, sent to me…
>
> Thank you
>
>
>
> ----- Original Message -----
> From: “Ray Trent”
> > Newsgroups: ntdev
> > To: “Windows System Software Devs Interest List”
> > Sent: Thursday, October 28, 2004 4:54 PM
> > Subject: Re:[ntdev] VxD and Long/Short Path
> >
> >
> > Perhaps this is just exposing my VxD knowledge gaps, but couldn’t you
> > just open them both and see if the file pointer is the same (or whether
> > they have the same directory/FAT node information or something equivilent)?
> >
> > In general, though, it’s worth noting that (as far as I know) short file
> > names are a feature of the shell, which means it’s likely that the most
> > maintainable way to deal with this problem is to convert everything to
> > long filenames in user space before passing them down to the VxD (or
> > putting them in the registry, or whatever).
> >
> > Marcos Velasco - UOL wrote:
> >
> >>Hi !
> >>
> >>No problem… but I need another question…
> >>How can I convert “Short Path” to “Long Path” in VXD ? :slight_smile:
> >>
> >>I need this only for internal comparation…
> >>Why I need know if the files are the same:
> >>
> >>c:\program files\my tests\file.exe
> >>c:\progra~1\mytest~1\file.exe
> >>c:\program files\mytest~1\file.exe
> >>c:\progra~1\my tests\file.exe
> >>
> >>Thank you
> >>
> >>
> >>
> >>----- Original Message -----
> >>From: “Ray Trent”
> >>Newsgroups: ntdev
> >>To: “Windows System Software Devs Interest List”
> >>Sent: Thursday, October 28, 2004 2:43 PM
> >>Subject: Re:[ntdev] VxD and Long/Short Path
> >>
> >>
> >>I give up, why do you want to convert to a short path inside a VxD? All
> >>the underlying system functions (that I know of, which admittedly is a
> >>limited and continually rusting set :slight_smile: support long filenames…
> >>
> >>Marcos Velasco - UOL wrote:
> >>
> >>
> >>>Hi all !
> >>>Maybe I found solution to a little problem here…
> >>>
> >>>I?m working in a VxD with Visual C++ 6 and VToolsD…
> >>>But… I dont found a way to convert a long path into a short path…>
> >>>
> >>>How can I convert inside VxD ?
> >>>
> >>>Thank you
> >>>
> >>>
> >>
> >>
> >
>
> –
> …/ray..
>
> Please remove “.spamblock” from my email address if you need to contact
> me outside the newsgroup.
>
> —
> Questions? First check the Kernel Driver FAQ at http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: xxxxx@upek.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>

If you look thru KERNEL32.dll disassembly from Windows 9x OSes you’ll see
that a whole bunch of functions (if not all of them) manipulating files make
it via INT 21 interface. Like it was said here the best way to convert short
paths to long ones is to do it in user mode. But if you urgently need to do
it in VxD then you should use Exec_VxD_Int service (this service is actively
used by many VxDs, for example VXDLDR.VXD which loads files using INT 21
functions). Exec_VxD_Int service and examples are described in DDK help
file.

----- Original Message -----
From: “Marcos Velasco - UOL”
To: “Windows System Software Devs Interest List”
Sent: Friday, October 29, 2004 12:49 AM
Subject: Re: Re:[ntdev] VxD and Long/Short Path

> Hi !
>
> I need fill a list with full path/file names, the system is ready, but
have
> problems if the user type a short or long name… (dont have the
equivalent
> in the list)… Then I need convert the path to long or short… for
> comparation…
>
> I test this routine:
>
http://groups.google.com/groups?q=ifsmgr_serverdoscall&hl=en&lr=&selm=34C85B
54.8899C227%40diana.zesoi.fer.hr&rnum=1
>
> But dont work :frowning:
>
> If anyone have another routine, please, sent to me…
>
> Thank you
>
>
>
> ----- Original Message -----
> From: “Ray Trent”
> Newsgroups: ntdev
> To: “Windows System Software Devs Interest List”
> Sent: Thursday, October 28, 2004 4:54 PM
> Subject: Re:[ntdev] VxD and Long/Short Path
>
>
> Perhaps this is just exposing my VxD knowledge gaps, but couldn’t you
> just open them both and see if the file pointer is the same (or whether
> they have the same directory/FAT node information or something
equivilent)?
>
> In general, though, it’s worth noting that (as far as I know) short file
> names are a feature of the shell, which means it’s likely that the most
> maintainable way to deal with this problem is to convert everything to
> long filenames in user space before passing them down to the VxD (or
> putting them in the registry, or whatever).
>
> Marcos Velasco - UOL wrote:
> > Hi !
> >
> > No problem… but I need another question…
> > How can I convert “Short Path” to “Long Path” in VXD ? :slight_smile:
> >
> > I need this only for internal comparation…
> > Why I need know if the files are the same:
> >
> > c:\program files\my tests\file.exe
> > c:\progra~1\mytest~1\file.exe
> > c:\program files\mytest~1\file.exe
> > c:\progra~1\my tests\file.exe
> >
> > Thank you
> >
> >
> >
> > ----- Original Message -----
> > From: “Ray Trent”
> > Newsgroups: ntdev
> > To: “Windows System Software Devs Interest List”
> > Sent: Thursday, October 28, 2004 2:43 PM
> > Subject: Re:[ntdev] VxD and Long/Short Path
> >
> >
> > I give up, why do you want to convert to a short path inside a VxD? All
> > the underlying system functions (that I know of, which admittedly is a
> > limited and continually rusting set :slight_smile: support long filenames…
> >
> > Marcos Velasco - UOL wrote:
> >
> >>Hi all !
> >>Maybe I found solution to a little problem here…
> >>
> >>I´m working in a VxD with Visual C++ 6 and VToolsD…
> >>But… I dont found a way to convert a long path into a short path…
> >>
> >>How can I convert inside VxD ?
> >>
> >>Thank you
> >>
> >>
> >
> >
>
> –
> …/ray..
>
> Please remove “.spamblock” from my email address if you need to contact
> me outside the newsgroup.
>
> —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: xxxxx@uol.com.br
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>
>
> —
> Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: xxxxx@nival.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>

Hi !

Thank you for your explanation…
But the following code crash in Windows 9x:

void GetShortPath( char *sLong, char *sShort )
{
ALLREGS r;
CLIENT_STRUCT saveregs;

Save_Client_State( &saveregs );

r.REAX = 0x7160
r.RECX = 0x0001
r.RESI = (DWORD) sLong;
r.REDI = (DWORD) sShort;

Exec_VxD_Int( 0x21, &r );

Restore_Client_State( &saveregs );
}

Any solution ?
Thank you

----- Original Message -----
From: “Konstantin Manurin”
To: “Windows System Software Devs Interest List”
Sent: Friday, October 29, 2004 4:48 AM
Subject: Re: Re:[ntdev] VxD and Long/Short Path

If you look thru KERNEL32.dll disassembly from Windows 9x OSes you’ll see
that a whole bunch of functions (if not all of them) manipulating files make
it via INT 21 interface. Like it was said here the best way to convert short
paths to long ones is to do it in user mode. But if you urgently need to do
it in VxD then you should use Exec_VxD_Int service (this service is actively
used by many VxDs, for example VXDLDR.VXD which loads files using INT 21
functions). Exec_VxD_Int service and examples are described in DDK help
file.

----- Original Message -----
From: “Marcos Velasco - UOL”
To: “Windows System Software Devs Interest List”
Sent: Friday, October 29, 2004 12:49 AM
Subject: Re: Re:[ntdev] VxD and Long/Short Path

> Hi !
>
> I need fill a list with full path/file names, the system is ready, but
have
> problems if the user type a short or long name… (dont have the
equivalent
> in the list)… Then I need convert the path to long or short… for
> comparation…
>
> I test this routine:
>
http://groups.google.com/groups?q=ifsmgr_serverdoscall&hl=en&lr=&selm=34C85B
54.8899C227%40diana.zesoi.fer.hr&rnum=1
>
> But dont work :frowning:
>
> If anyone have another routine, please, sent to me…
>
> Thank you
>
>
>
> ----- Original Message -----
> From: “Ray Trent”
> Newsgroups: ntdev
> To: “Windows System Software Devs Interest List”
> Sent: Thursday, October 28, 2004 4:54 PM
> Subject: Re:[ntdev] VxD and Long/Short Path
>
>
> Perhaps this is just exposing my VxD knowledge gaps, but couldn’t you
> just open them both and see if the file pointer is the same (or whether
> they have the same directory/FAT node information or something
equivilent)?
>
> In general, though, it’s worth noting that (as far as I know) short file
> names are a feature of the shell, which means it’s likely that the most
> maintainable way to deal with this problem is to convert everything to
> long filenames in user space before passing them down to the VxD (or
> putting them in the registry, or whatever).
>
> Marcos Velasco - UOL wrote:
> > Hi !
> >
> > No problem… but I need another question…
> > How can I convert “Short Path” to “Long Path” in VXD ? :slight_smile:
> >
> > I need this only for internal comparation…
> > Why I need know if the files are the same:
> >
> > c:\program files\my tests\file.exe
> > c:\progra~1\mytest~1\file.exe
> > c:\program files\mytest~1\file.exe
> > c:\progra~1\my tests\file.exe
> >
> > Thank you
> >
> >
> >
> > ----- Original Message -----
> > From: “Ray Trent”
> > Newsgroups: ntdev
> > To: “Windows System Software Devs Interest List”
> > Sent: Thursday, October 28, 2004 2:43 PM
> > Subject: Re:[ntdev] VxD and Long/Short Path
> >
> >
> > I give up, why do you want to convert to a short path inside a VxD? All
> > the underlying system functions (that I know of, which admittedly is a
> > limited and continually rusting set :slight_smile: support long filenames…
> >
> > Marcos Velasco - UOL wrote:
> >
> >>Hi all !
> >>Maybe I found solution to a little problem here…
> >>
> >>I´m working in a VxD with Visual C++ 6 and VToolsD…
> >>But… I dont found a way to convert a long path into a short path…
> >>
> >>How can I convert inside VxD ?
> >>
> >>Thank you
> >>
> >>
> >
> >
>
> –
> …/ray..
>
> Please remove “.spamblock” from my email address if you need to contact
> me outside the newsgroup.
>
> —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: xxxxx@uol.com.br
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>
>
> —
> Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: xxxxx@nival.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@uol.com.br
To unsubscribe send a blank email to xxxxx@lists.osr.com

Hi !
I make changes, but the program crash again… :frowning:

----- Original Message -----
From: Konstantin Manurin
To: xxxxx@uol.com.br
Sent: Friday, October 29, 2004 10:49 AM
Subject: Re: Re:[ntdev] VxD and Long/Short Path

This is a brief extract from the DDK help:

//---------------->8-------------------------------8<-------------------------

Before calling this service, a virtual device must set registers to values that are appropriate for the specified software interrupt. This service supports all MS-DOS and BIOS functions that are supported in protected-mode programs.

This service does not change the client registers and flags, so there is no need for the virtual device to save and restore the client register structure. This service also pops the interrupt number from the stack.

Do not call services that will change DS or ES. Mappers should return valid pointers without changing the segment register value, but calls that explicitly change the DS or ES selectors should never be called. For example, if a call returns a pointer in DS:(E)DX then this would be OK to call since the mapper would convert the ponter to use the ring 0 linear address in EDX without modifying DS. However, if a service returns a selector only then you should not use Exec_VxD_Int to call it.

//---------------->8-------------------------------8<-------------------------

More over, you shouldn’t save the client registers AND YOU SHOULD PASS PARAMETERS THRU THE REAL REGISTERS (previously saved them to avoid unpredictable register changing).

Think this will help and your code will not crash anymore ;-)))

----- Original Message -----

From: “Marcos Velasco - UOL”
To: “Windows System Software Devs Interest List”
Sent: Friday, October 29, 2004 5:20 PM
Subject: Re: Re:[ntdev] VxD and Long/Short Path

> Hi !
>
> Thank you for your explanation…
> But the following code crash in Windows 9x:
>
> void GetShortPath( char *sLong, char *sShort )
> {
> ALLREGS r;
> CLIENT_STRUCT saveregs;
>
> Save_Client_State( &saveregs );
>
> r.REAX = 0x7160
> r.RECX = 0x0001
> r.RESI = (DWORD) sLong;
> r.REDI = (DWORD) sShort;
>
> Exec_VxD_Int( 0x21, &r );
>
> Restore_Client_State( &saveregs );
> }
>
> Any solution ?
> Thank you
>
>
> ----- Original Message -----
> From: “Konstantin Manurin”
> To: “Windows System Software Devs Interest List”
> Sent: Friday, October 29, 2004 4:48 AM
> Subject: Re: Re:[ntdev] VxD and Long/Short Path
>
>
> If you look thru KERNEL32.dll disassembly from Windows 9x OSes you’ll see
> that a whole bunch of functions (if not all of them) manipulating files make
> it via INT 21 interface. Like it was said here the best way to convert short
> paths to long ones is to do it in user mode. But if you urgently need to do
> it in VxD then you should use Exec_VxD_Int service (this service is actively
> used by many VxDs, for example VXDLDR.VXD which loads files using INT 21
> functions). Exec_VxD_Int service and examples are described in DDK help
> file.
>
>
> ----- Original Message -----
> From: “Marcos Velasco - UOL”
> To: “Windows System Software Devs Interest List”
> Sent: Friday, October 29, 2004 12:49 AM
> Subject: Re: Re:[ntdev] VxD and Long/Short Path
>
>
> > Hi !
> >
> > I need fill a list with full path/file names, the system is ready, but
> have
> > problems if the user type a short or long name… (dont have the
> equivalent
> > in the list)… Then I need convert the path to long or short… for
> > comparation…
> >
> > I test this routine:
> >
> http://groups.google.com/groups?q=ifsmgr_serverdoscall&amp;hl=en&amp;lr=&amp;selm=34C85B
> 54.8899C227%40diana.zesoi.fer.hr&rnum=1
> >
> > But dont work :frowning:
> >
> > If anyone have another routine, please, sent to me…
> >
> > Thank you
> >
> >
> >
> > ----- Original Message -----
> > From: “Ray Trent”
> > Newsgroups: ntdev
> > To: “Windows System Software Devs Interest List”
> > Sent: Thursday, October 28, 2004 4:54 PM
> > Subject: Re:[ntdev] VxD and Long/Short Path
> >
> >
> > Perhaps this is just exposing my VxD knowledge gaps, but couldn’t you
> > just open them both and see if the file pointer is the same (or whether
> > they have the same directory/FAT node information or something
> equivilent)?
> >
> > In general, though, it’s worth noting that (as far as I know) short file
> > names are a feature of the shell, which means it’s likely that the most
> > maintainable way to deal with this problem is to convert everything to
> > long filenames in user space before passing them down to the VxD (or
> > putting them in the registry, or whatever).
> >
> > Marcos Velasco - UOL wrote:
> > > Hi !
> > >
> > > No problem… but I need another question…
> > > How can I convert “Short Path” to “Long Path” in VXD ? :slight_smile:
> > >
> > > I need this only for internal comparation…
> > > Why I need know if the files are the same:
> > >
> > > c:\program files\my tests\file.exe
> > > c:\progra~1\mytest~1\file.exe
> > > c:\program files\mytest~1\file.exe
> > > c:\progra~1\my tests\file.exe
> > >
> > > Thank you
> > >
> > >
> > >
> > > ----- Original Message -----
> > > From: “Ray Trent”
> > > Newsgroups: ntdev
> > > To: “Windows System Software Devs Interest List”
> > > Sent: Thursday, October 28, 2004 2:43 PM
> > > Subject: Re:[ntdev] VxD and Long/Short Path
> > >
> > >
> > > I give up, why do you want to convert to a short path inside a VxD? All
> > > the underlying system functions (that I know of, which admittedly is a
> > > limited and continually rusting set :slight_smile: support long filenames…
> > >
> > > Marcos Velasco - UOL wrote:
> > >
> > >>Hi all !
> > >>Maybe I found solution to a little problem here…
> > >>
> > >>I?m working in a VxD with Visual C++ 6 and VToolsD…
> > >>But… I dont found a way to convert a long path into a short path…
> > >>
> > >>How can I convert inside VxD ?
> > >>
> > >>Thank you
> > >>
> > >>
> > >
> > >
> >
> > –
> > …/ray..
> >
> > Please remove “.spamblock” from my email address if you need to contact
> > me outside the newsgroup.
> >
> > —
> > Questions? First check the Kernel Driver FAQ at
> > http://www.osronline.com/article.cfm?id=256
> >
> > You are currently subscribed to ntdev as: xxxxx@uol.com.br
> > To unsubscribe send a blank email to xxxxx@lists.osr.com
> >
> >
> > —
> > Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
> >
> > You are currently subscribed to ntdev as: xxxxx@nival.com
> > To unsubscribe send a blank email to xxxxx@lists.osr.com
> >
>
>
> —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: xxxxx@uol.com.br
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>
>
> —
> Questions? First check the Kernel Driver FAQ at http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: xxxxx@nival.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>