imho, that article doesn't communicate it's message very clearly.
It's topic states: "INF: Using Extended Stored Procedures or SP_OA Stored
Procedures to Load CLR in SQL Server Is Not Supported" (no differentiation
of in proc / ex proc)
However, the first paragraph reduces the scope of what's not supported to:
"for any loading of the libraries that you must load to run IN THE SQL
SERVER MEMORY SPACE."
OK - there are issues with running .net assemblies IN PROCESS (tls, fibres
etc), but OUT OF PROCESS should be fine. This makes sense because an out of
process server uses it's own memory & does entirely it's own thing - it's a
central tenet of COM, black box, interface inheritance yada, yada, yada..
So, assuming your COM server's configured as out of process, you should have
no issues (other than your own design / coding) for wrappinng .Net
assemblies with COM wrappers & calling over sp_OACreate.
However, my 20c would be that this is still a bit of an un-natural fit &
you'd be at the whim of whatever commplications there are in wrapping .net
assemblies with com wrappers. However, if the design is out of process & you
can work out the memory contention issue, go with it if it works as you'll
still have the same memory contention issue with whatever other external
solution you use (although xp_ will be more light weight). The other benefit
is that you'll be coding in an environment that is arguably more up to date
& future proof than coding against the Win32 crypto apis.
Unfortunately, in response to your other question about where you could get
access to c based examples of win32 crypto api calls from an xp_, I can't
help you there as I've never bothered doing this as an xp_ b/c it was just
so easy to do with vb6 over sp_OA.
Regards,
Greg Linwood
SQL Server MVP
[quoted text, click to view] "Palani Perumal" <pperumal@medibank.com> wrote in message
news:uVQ%23X9j1DHA.3116@TK2MSFTNGP11.phx.gbl...
> Thank you very much for the article ...One question I have got after
reading
> this...
>
> If I understood correctly from the article, if we have .NET class with COM
> Callable wrapper ..it can't be used in SQL Server with sp_OACreate ?
>
> If that is the case I was wondering how it works for us for these
> long...Please let me know if you have any idea on this..
>
> Ideally I see creating my crypto classes using any Win32 implementation
and
> creating extended procedure will be the ideal solution to resolve the
> issue...
>
> Thanks,
>
> - Palani Perumal MCDBA
> Med-I-Bank Inc
>
> "Dan Guzman" <danguzman@nospam-earthlink.net> wrote in message
> news:eWrFK3e1DHA.1740@TK2MSFTNGP09.phx.gbl...
> > See MSKB 322884:
> >
http://support.microsoft.com/default.aspx?scid=kb;en-us;322884&Product=sql > >
> >
> > --
> > Hope this helps.
> >
> > Dan Guzman
> > SQL Server MVP
> >
> >
> > "Palani Perumal" <pperumal@medibank.com> wrote in message
> > news:eI17tZZ1DHA.2680@tk2msftngp13.phx.gbl...
> > > We have our crypto implementation written in .NET and made a COM
Wrapper
> > > around it to use in SQL Server using sp_OACreate.
> > >
> > > Due to excessive nature of usage this object in SQL Server after
certain
> > > point of time we get error while creating OLE object in SQL Server
with
> > > message - Not enough storage to complete this operation. We have
> increased
> > > the memory , virutal memory but it didn't help.
> > >
> > > SQL Server continue to run fine but only OLE Object creation
fails...we
> > had
> > > to restart the server to make it work again ....but after some time
(in
> a
> > > day or 2 max) it appears again.
> > >
> > > Anyone have any idea what is happening here and possible solution ?
> > >
> > > Is making crypto implementation on c++ and creating a extended stored
> > > procedure would help here ? I really appreciate any thought which
would
> > > help here....
> > >
> > > Thanks in advance.
> > >
> > > Thanks,
> > >
> > >
> > >
> > > Palani Perumal
> > >
> > > Database Architect MCDBA
> > >
> > > Med-i-Bank Inc
> > >
> > >
> > >
> > >
> > >
> >
> >
>
>