Tyro[a.c.edwards] wrote:
> Tyro[a.c.edwards] Wrote:
> >> I'm looking for some guidance on how to Internet Explorer options using functionality available in D. I am trying to make the following work but cannot since I don't have a copy of wininet.lib:
> > I located wininet.dll and build from it a .lib file using implib. However when attempting to compile the program the following error occurs:
> > Error 42: Symbol Undefined _InternetSetOption
> --- errorlevel 1
> > Is there something I am missing?
> Any advice is appreciated.
You need to use the /system flag with implib.
f:\usr\pkg\d>implib /h
Digital Mars Import Library Manager Version 7.6B1n
Copyright (C) Digital Mars 2000. All Rights Reserved.
Usage:
IMPLIB [switches] implibname.lib [ file.dll | file.def ]
switches:
/? Print this message
/b Batch
/h Print this message
/i Ignore case of symbols
/noi Be case sensitive. Mark library as case sensitive
/nowep Ignore WEP
/p:number Set page size to number (a power of 2)
/system Prepend '_' to exported internal names (NT system DLL)
---bb

Tyro[a.c.edwards] wrote:
> Bill Baxter Wrote:
> >> Tyro[a.c.edwards] wrote:
>>> Bill Baxter Wrote:
>>>>>>> Tyro[a.c.edwards] wrote:
>>>>> Tyro[a.c.edwards] Wrote:
>>>>>>>>>>> I'm looking for some guidance on how to Internet Explorer options using functionality available in D. I am trying to make the following work but cannot since I don't have a copy of wininet.lib:
>>>>> I located wininet.dll and build from it a .lib file using implib. However when attempting to compile the program the following error occurs:
>>>>>>>>>> Error 42: Symbol Undefined _InternetSetOption
>>>>> --- errorlevel 1
>>>>>>>>>> Is there something I am missing?
>>>>> Any advice is appreciated.
>>>> You need to use the /system flag with implib.
>>>>>>>> f:\usr\pkg\d>implib /h
>>>> Digital Mars Import Library Manager Version 7.6B1n
>>>> Copyright (C) Digital Mars 2000. All Rights Reserved.
>>>> Usage:
>>>> IMPLIB [switches] implibname.lib [ file.dll | file.def ]
>>>> switches:
>>>> /? Print this message
>>>> /b Batch
>>>> /h Print this message
>>>> /i Ignore case of symbols
>>>> /noi Be case sensitive. Mark library as case sensitive
>>>> /nowep Ignore WEP
>>>> /p:number Set page size to number (a power of 2)
>>>> /system Prepend '_' to exported internal names (NT system DLL)
>>>>>>>>>>>> ---bb
>>>>>> Thanks, I have tried both /i, /noi, /system, combinations, and now switch. However, no attempt thus far has produced the desired result.
>> Ah, ok. Check dependency walker or dumbpin /exports.
>>>> There is no InternetSetOption function. Only these:
>>>> InternetSetOptionA
>> InternetSetOptionExA
>> InternetSetOptionExW
>> InternetSetOptionW
>>>>>> You need to choose either the A or W version depending on what text encoding you're using.
>>>> --bb
> > Unfortunately, that doesn't work either. I've used both options and gotten the same result. Again thanks for the assistance.
Did you use extern(Windows) or extern(System) when you declared the prototype for D to call?
--bb