mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-15 00:47:17 +00:00
winedump: Print the network share name in .lnk files.
This commit is contained in:
parent
3a5ddab91d
commit
f6612adcd2
|
@ -118,6 +118,15 @@ typedef struct _LOCAL_VOLUME_INFO
|
||||||
DWORD dwVolLabelOfs;
|
DWORD dwVolLabelOfs;
|
||||||
} LOCAL_VOLUME_INFO;
|
} LOCAL_VOLUME_INFO;
|
||||||
|
|
||||||
|
typedef struct _NETWORK_VOLUME_INFO
|
||||||
|
{
|
||||||
|
DWORD dwSize;
|
||||||
|
DWORD dwUnkown1;
|
||||||
|
DWORD dwShareNameOfs;
|
||||||
|
DWORD dwReserved;
|
||||||
|
DWORD dwUnknown2;
|
||||||
|
} NETWORK_VOLUME_INFO;
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
DWORD cbSize;
|
DWORD cbSize;
|
||||||
|
@ -232,9 +241,10 @@ static int dump_location(void)
|
||||||
printf("Header size = %d\n", loc->dwHeaderSize);
|
printf("Header size = %d\n", loc->dwHeaderSize);
|
||||||
printf("Flags = %08x\n", loc->dwFlags);
|
printf("Flags = %08x\n", loc->dwFlags);
|
||||||
|
|
||||||
/* dump out information about the volume the link points to */
|
/* dump information about the local volume the link points to */
|
||||||
printf("Volume ofs = %08x ", loc->dwVolTableOfs);
|
printf("Local volume ofs = %08x ", loc->dwVolTableOfs);
|
||||||
if (loc->dwVolTableOfs && (loc->dwVolTableOfs<loc->dwTotalSize))
|
if (loc->dwVolTableOfs &&
|
||||||
|
loc->dwVolTableOfs + sizeof(LOCAL_VOLUME_INFO) < loc->dwTotalSize)
|
||||||
{
|
{
|
||||||
const LOCAL_VOLUME_INFO *vol = (const LOCAL_VOLUME_INFO *)&p[loc->dwVolTableOfs];
|
const LOCAL_VOLUME_INFO *vol = (const LOCAL_VOLUME_INFO *)&p[loc->dwVolTableOfs];
|
||||||
|
|
||||||
|
@ -245,6 +255,19 @@ static int dump_location(void)
|
||||||
}
|
}
|
||||||
printf("\n");
|
printf("\n");
|
||||||
|
|
||||||
|
/* dump information about the network volume the link points to */
|
||||||
|
printf("Network volume ofs = %08x ", loc->dwNetworkVolTableOfs);
|
||||||
|
if (loc->dwNetworkVolTableOfs &&
|
||||||
|
loc->dwNetworkVolTableOfs + sizeof(NETWORK_VOLUME_INFO) < loc->dwTotalSize)
|
||||||
|
{
|
||||||
|
const NETWORK_VOLUME_INFO *vol = (const NETWORK_VOLUME_INFO *)&p[loc->dwNetworkVolTableOfs];
|
||||||
|
|
||||||
|
printf("size %d name %d ", vol->dwSize, vol->dwShareNameOfs);
|
||||||
|
if(vol->dwShareNameOfs)
|
||||||
|
printf("(\"%s\")", &p[loc->dwNetworkVolTableOfs + vol->dwShareNameOfs]);
|
||||||
|
}
|
||||||
|
printf("\n");
|
||||||
|
|
||||||
/* dump out the path the link points to */
|
/* dump out the path the link points to */
|
||||||
printf("LocalPath ofs = %08x ", loc->dwLocalPathOfs);
|
printf("LocalPath ofs = %08x ", loc->dwLocalPathOfs);
|
||||||
if( loc->dwLocalPathOfs && (loc->dwLocalPathOfs < loc->dwTotalSize) )
|
if( loc->dwLocalPathOfs && (loc->dwLocalPathOfs < loc->dwTotalSize) )
|
||||||
|
|
Loading…
Reference in a new issue