A lot of peoply have successfully used LAN Manager
APIs from within isapi extensions. However, many had
trouble in the first time. Here are two important things
to remember.Unicode
All lanman apis use unicode. If your
program is not using unicode by itself, be sure to
convert all character data to unicode upon entry and
convert it back to your code page upon exit of api
routines. If you make intensive use of lanman apis and
data structures, you might want to allocate this
structures on the heap. There have been some reports of
stack overflows due to such data structures.
Object Names
NT's administration tools place certain restrictions
upon object names (users, groups). These are to support
backward-compatibility with earlier versions of LAN
Manger. If you directly call the api, these restrictions
are non-existent. Thus, you can create objects, that
can't be managed by the usual administration tools and
can't cooperate in environments that include earlier
versions of LAN Manager. So please be careful when
creating objects. A good check is to run the NT
administration code against strange-looking objects
created by your coding.
Many thanks to John Ludeman
<johnl@microsoft.com> for initially bringing this
to our attention.
|