Welcome to CrankyGoblin.Com Sign in | Join | Help

Public Class GeoffAppleby

Inherits Microsoft.VisualBasic.MVP : Implements IBrainFart
Another Good Bug Bites Us in VS2003 - Classic ADO

One of the services that my team had to write here at work included the necessity to be able to send an email with an attachment. While clunky in .net 1.1, it was doable.

But when we noticed that to send an attachment you could only specify a file location for it, we started looking elsewhere. There's numerous components out there, but it all came down to the same thing: a managed wrapper around CDO.

CDO is a weird little beasty, and itself has dependancies on classic ADO objects - the two we had to use was the Fields collection, and the Stream (for in-memory attachments).

The service was written, and worked fine. It went to test and worked fine there too.

Then nothing happened for a couple of months (I'm used to that).

Then it went to prod.

And it won't send mail.

For the last few weeks, as time has permitted, we've been trying to work out why. A quick win forms test app that could be run by an administrator also had the same problem - crashing and burning when touching an ADO object.

I finally tracked it down today. There's a bug in visual studio such that, when you make a reference to classic ADO by browsing to the ado dll, it generates the Interop dll for you, but makes a reference to the installed PIA version that's living in the GAC. The PIA version gets installed when you install Visual Studio.

Oops :) We still wouldn't have been bitten by the bug, except that when the service (windows service this is) was deployed, the guys who wrote it didn't write an installer, only instructions on how to register the service with windows via the command line. If an installer had of been made (using a VS Setup Project) then the PIA would have been included in the MSI and installed in the GAC at install time.

Having tracked the problem down myself, I finally found official doco from Microsoft about it.

I worked out the specific problem by comparing what was registered in the gac on two different servers, and then realised that the on which worked (in test) had SQL Reporting Services 2000 installed on it. Having realised that our code was only calling the gac version, I trawled the Reporting Services install disc and found the pia in there :) 

Interestingly however, the DLL Help Database that lists all packages that contain different dll versions doesn't list Reporting Services. It only mentions VS 2002 and 2003, Exchange, Biztalk, Commerce Server and Small Business Server. Maybe the RS guys didn't realise this happened either, and the installer just included the dll... *grin*

Posted: Monday, 7 November 2005 6:18 PM by Geoff Appleby
Filed under: ,

Comments

dbaker said:

Any thoughts regarding using SMTP? I have same issue in an app I'm working on now, though in my case problem is that I have to send an "embedded" attachment. I ended up writing an SMTP component, and a helper that lets me build a MIME/multipart message (with attachments encoded in base64). It was a bit of a hassle to write, but it avoids the whole CDO mess.
# November 8, 2005 12:47 PM

Eric Newton said:

dude... just use a 100% managed component, like aspnetemail...

i use it and love it... no CDO dependency and he fixes bugs practically immediately.

www.aspnetemail.com
# November 9, 2005 3:25 PM

John Wood said:

Or for free just use SmtpDirect, this class I wrote (well, modified): http://www.servicestuff.com/jwss/smtpdirect.zip Goes direct to SMTP, no CDO, same interface as the system.web class. Simple code too.
# November 10, 2005 2:41 AM

scooter_lover said:

I love to ride on bike then read this, and you? :)

[url=http://scooter.halloween2006.info]motor scooter[/url]

# October 11, 2006 5:32 AM

LeVaN said:

http://www.alanya-kille.seksi-***.com ^^^ http://www.alaska-fishing-guide.seksi-***.com ^^^ http://www.bramare-infermiera-fotti.str0nz0.com ^^^ http://www.fantasticamente-ragazze-masturbate.str0nz0.com ^^^ http://www.gals-jovencito-pollon.100milfotos.com ^^^ http://www.gals-foto-sexo.100milfotos.com ^^^ http://www.masturbating-sederi-cinesi.allievo69.com ^^^ http://www.imbarazzato-americano-orale-fotti.allievo69.com ^^^ http://www.korea-nuori-naida.huor4.com ^^^ http://www.bukk.huor4.com ^^^ http://www.bluetorch.hu0ra.com ^^^ http://www.sopoin-lehmitytto-toiminta.hu0ra.com ^^^ http://www.andrea-casiraghi-nudo.fott1.com ^^^ http://www.comico-cowgirl-ass-to-mouth.fott1.com ^^^ http://www.beauty-sbronze-strip.f0tti.com ^^^ http://www.piu-carino-moglie.f0tti.com ^^^ http://www.deep-troat-hemaiseva.s3ksi.com ^^^ http://www.dubbel-macka-oral.s3ksi.com ^^^ http://www.mpoukali-komikon.ragazza69.com ^^^ http://www.lovable-bionde-frode.ragazza69.com ^^^ http://www.sborrata-omosessuale.corneo69.com ^^^ http://www.poor-spirited-zoccoleborghesi-sex.corneo69.com ^^^ http://www.mujeres-viejas-gif.dibujitosporn.com ^^^ http://www.orgia-culos-dilatados.dibujitosporn.com ^^^ http://www.rilasciare-sexy-fa.disponibile69.com ^^^ http://www.faint-idraulico-inculate.disponibile69.com ^^^ http://www.ragazza-mpgs.gayfrei.com ^^^ http://www.lesvianas-gals.gayfrei.com ^^^ http://www.damas-hermosas.petarda2fotos.com ^^^ http://www.mpeg-amor-lesbiana.petarda2fotos.com ^^^ http://www.petardas-com-download.lesbianavideo.com ^^^ http://www.ebony-trannies.lesbianavideo.com ^^^ http://www.tetonas-culonas-gals.pollonesamateur.com ^^^ http://www.videos-cortos-gratis.pollonesamateur.com ^^^ http://www.chibolitas-peruanas.sexoexnovia.com ^^^ http://www.historias-swinger-jpg.sexoexnovia.com ^^^ http://www.escenas-sexuales.latinas-putas.com ^^^ http://www.follando-perros.latinas-putas.com ^^^ http://www.relatos-eroticos-jovencitas.putasmorochas.com ^^^ http://www.travestis-gordos.putasmorochas.com ^^^

# November 28, 2006 12:59 AM

miki said:

http://replica-watch-rolex.i5rio48ku.info/ **#**

http://www.i5rio48ku.info/oqjuz1q.html **#**

http://mutandine-sex-sporche.e71fjt8dy.info/ **#**

http://www.jkpaip.info/hotel-principina-mare.html **#**

http://lavoro-informatica.gw3x6095.info/ **#**

http://pompino-caldo.ghkr4icqw.info/ **#**

http://www.e71fjt8dy.info/studentessa-ragazze-sesso.html **#**

http://mutuo-prestito-casa.i5rio48ku.info/ **#**

http://www.hlc4w7c48p.info/annuncio-amatoriale-veneto.html **#**

http://www.e71fjt8dy.info/hotel-palma-sardegna/ **#**

http://pauroso-madre.jpeq50t4gzp.info/ **#**

http://www.ghkr4icqw.info/qa3883jui.html **#**

http://www.i5rio48ku.info/tjiwmj7v9f3.html **#**

http://faint-cameriera-fotti.gzdfwhf.info/ **#**

http://bionde-masturbate-nella-stanza.d0tsozq.info/ **#**

http://pompea-intimo-uomo.gw3x6095.info/ **#**

http://www.e71fjt8dy.info/video-fighe-che-spruzzano.html **#**

http://www.d0tsozq.info/hdojwca242.html **#**

http://www.dgrgajmcwsu.info/f7tzmhfl.html **#**

http://prittiest-bionde-masturbate.keuo0.info/ **#**

http://free-web-design.d0tsozq.info/ **#**

http://ragazze-azione-in-cucina.d0tsozq.info/ **#**

http://www.e71fjt8dy.info/fesrouge/ **#**

http://www.mdp4vw4oxcdk.info/giovani-praticamente-puttane.html **#**

http://arcadia-hotel.j95c8-r-1.info/ **#**

http://www.mdp4vw4oxcdk.info/studentesse-porcelline.html **#**

http://www.dgrgajmcwsu.info/insignificante-segretaria/ **#**

http://punzoni-moneta.jpeq50t4gzp.info/ **#**

http://scaricare-suoneria-motorola.cde467zt.info/ **#**

http://sexi-eden.e71fjt8dy.info/ **#**

http://www.jkpaip.info/stadio-verona.html **#**

http://www.d0tsozq.info/37a6qymnc.html **#**

http://piselli-negri.jpeq50t4gzp.info/ **#**

http://www.h6yzmdsm.info/allievo-merda-nella-stanza.html **#**

http://foto-sex-uomini-pelosi.keuo0.info/ **#**

http://www.mdp4vw4oxcdk.info/volo-aereo-parigi.html **#**

http://tomtom-navigatore.gzdfwhf.info/ **#**

http://cobra-radar-detector.i5rio48ku.info/ **#**

http://trapunta-personalizzate.d0tsozq.info/ **#**

http://www.cde467zt.info/4td9boqpqx7.html **#**

http://www.d0tsozq.info/apyi5n8m.html **#**

http://www.ea2gpm6.info/lesbiche-anale-fotti-in-pace.html **#**

http://incontri-sexy-basilicata.d0tsozq.info/ **#**

# December 29, 2006 9:18 AM
Leave a Comment

(required) 

(required) 

(optional)

(required) 

To submit your comment, click on these pictures:
  • Geoff's big sister's tongue
  • Tickle Me Geoff-Mo
  • Geoff's tongue
Gaptcha Image - No Peeking! Gaptcha Image - No Peeking! Gaptcha Image - No Peeking!
Gaptcha Image - No Peeking! Gaptcha Image - No Peeking! Gaptcha Image - No Peeking!
Gaptcha Image - No Peeking! Gaptcha Image - No Peeking! Gaptcha Image - No Peeking!
Can't recognise the people in these pictures? Look here for a quick introduction.
There's a time limit for you to get your comment submitted before this set of pictures expires. If you think it's been longer than 10 minutes, get some new pictures first (you won't lose what you've typed so far).
Get some new pictures 

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS