Jim,
To see if it is supported under Win98SE, you can use the Depends.Exe utility that comes with Visual Studio 6. Open AdvAPI32.DLL (found under your System/System32 directory). Scroll through the list of functions to see if GetCurrentHwProfileA or GetCurrentHwProfileW is listed. If not, then it is not supported.
The code below ran under W2K SP1 and I don't have access to any Win98 machines at all to test it. I may be able to test it under Win95 this evening but I don't know how much information that will gain you.
>
>>declare integer GetCurrentHwProfile in advapi32 string@
>>declare integer GetLastError in kernel32
>>lcdocked = chr(1)+replicate(chr(0),3)
>>lcguid = replicate(chr(0),39)
>>lcname = replicate(chr(0),80)
>>lcstruct = lcdocked+lcguid+lcname
>>if GetCurrentHwProfile(@lcstruct) <> 0 then
>> * it worked
>> ? substr(lcstruct,4,39)
>> ? substr(lcstruct,44,80)
>>else
>> ? GetLastError()
>>endif
>>
>>HTH.
>
>Well, I run it once, I get an '87' error, The parameter is incorrect.
>On a second immediate run, I get a '120', This function is not supported on this system. I am testing under Win98SE, docs say it is supported. The docking info "dwDockInfo - A set of bit flags that indicate the docking state of the computer. This member can be a combination of the following values." is indicated as type DWORD. Can I really get by this easily? Thanks, Larry.
Larry Miller
MCSD
LWMiller3@verizon.netAccumulate learning by study, understand what you learn by questioning. -- Mingjiao