Home All Groups Group Topic Archive Search About

Substitute for mscomm32.ocx?

Author
12 May 2007 2:07 PM
jim evans
I have a fairly extensive program i sell that depends on mscomm32.ocx.

mscomm32.ocx does not work in Vista.  Is there a substitute or do I
throw my program in the trash?

jim

Author
12 May 2007 2:21 PM
Steve Easton
Read the thread titled: need to register richtx32.ocx in Vista
dated Friday, May 11, 2007 12:33 PM  and located 6 items below this one.


--

Steve Easton


Show quote
"jim evans" <jimsTAKEOUTne***@houston.rr.com> wrote in message
news:78gb43ha4rkkfo38qd6o6nr8beqb5j0si0@4ax.com...
>I have a fairly extensive program i sell that depends on mscomm32.ocx.
>
> mscomm32.ocx does not work in Vista.  Is there a substitute or do I
> throw my program in the trash?
>
> jim
Author
12 May 2007 6:49 PM
jim evans
On Sat, 12 May 2007 10:21:06 -0400, "Steve Easton"
<ad***@95isalive.com> wrote:

>Read the thread titled: need to register richtx32.ocx in Vista
>dated Friday, May 11, 2007 12:33 PM  and located 6 items below this one.

I think that must be dependent on your newsreader, your news service,
and/or your message maintenance settings.

jim
Author
12 May 2007 9:47 PM
mayayana
> >Read the thread titled: need to register richtx32.ocx in Vista
> >dated Friday, May 11, 2007 12:33 PM  and located 6 items below this one.
>
> I think that must be dependent on your newsreader, your news service,
> and/or your message maintenance settings.
>
   It shouldn't depend on anything. If we don't all get
the same messages then it's not a news *group*. :)

  In any case, he's talking about a thread discussing the
ActiveX Installer Service, an optional service on Vista
Business that allows non-admin users to install ActiveX
controls without running as admin. Presumably that's
only relevant if you want your installation to run with no
privileges in a corporate environment.

   I haven't tried installing ActiveX on Vista, but I've
been following the posts in various places. As far
as I can see there seems to be a general problem,
not only with user privileges. In one discussion where
a Microsoft support person joined in the MS person
claimed to have never heard of the problem. Yet there
have been a lot of complaints and oddly, no one
seems to be quite certain what the issue is, while Miceosoft
is apparently pretending that it's not happening.

The symptoms seem to follow a pattern:
     A control get registered but doesn't work. Sometimes
it works when it's unregistered. I wonder if maybe the issue
is a faulty registration that's pre-existing. If it were me
I'd try unregistering and then registering again, as admin.
You can see a typical discussion of this issue here:

http://vbcity.com/forums/topic.asp?tid=143205

The ActiveX Installer Service is explained here:

http://www.microsoft.com/technet/technetmag/issues/2006/11/UAC/
Author
12 May 2007 11:13 PM
Steve Easton
The way it "appears" to work when the activeX installer service is installed is
that you don't have to actually install / copy the .ocx to the system directory.
When you install and then launch an app that contains a reference to MSCOMCTL.OCX for
example,
the ActiveX installer service generates the appropriate .oca file.

That's what happened on my Vista ultimate machine, and I did "not" manually add the .oca
via an installer program.

I know it doesn't make sense and I sure don't understand it either.

Even better yet, since my machine is an XP / Vista dual boot with the OSs on separate
drives,
I browsed to the XP directory and copied and pasted MSCOMCTL.OCX  ( and one other one )
into Vista.
Tried registering it and it still wouldn't work. ( nor would the registration be
successful )
So I deleted the one I had copied into vista using explorer in Vista.
Booted back to XP and "Ta-dum" it was deleted from XP.

Had to run a repair on VS/VB6 to reinstall them.

--

Steve Easton





Show quote
"mayayana" <mayaXXyan***@mindXXspring.com> wrote in message
news:UBq1i.10324$j63.2918@newsread2.news.pas.earthlink.net...
>> >Read the thread titled: need to register richtx32.ocx in Vista
>> >dated Friday, May 11, 2007 12:33 PM  and located 6 items below this one.
>>
>> I think that must be dependent on your newsreader, your news service,
>> and/or your message maintenance settings.
>>
>   It shouldn't depend on anything. If we don't all get
> the same messages then it's not a news *group*. :)
>
>  In any case, he's talking about a thread discussing the
> ActiveX Installer Service, an optional service on Vista
> Business that allows non-admin users to install ActiveX
> controls without running as admin. Presumably that's
> only relevant if you want your installation to run with no
> privileges in a corporate environment.
>
>   I haven't tried installing ActiveX on Vista, but I've
> been following the posts in various places. As far
> as I can see there seems to be a general problem,
> not only with user privileges. In one discussion where
> a Microsoft support person joined in the MS person
> claimed to have never heard of the problem. Yet there
> have been a lot of complaints and oddly, no one
> seems to be quite certain what the issue is, while Miceosoft
> is apparently pretending that it's not happening.
>
> The symptoms seem to follow a pattern:
>     A control get registered but doesn't work. Sometimes
> it works when it's unregistered. I wonder if maybe the issue
> is a faulty registration that's pre-existing. If it were me
> I'd try unregistering and then registering again, as admin.
> You can see a typical discussion of this issue here:
>
> http://vbcity.com/forums/topic.asp?tid=143205
>
> The ActiveX Installer Service is explained here:
>
> http://www.microsoft.com/technet/technetmag/issues/2006/11/UAC/
>
>
>
>
Author
12 May 2007 11:48 PM
mayayana
> The way it "appears" to work when the activeX installer service is
installed is
> that you don't have to actually install / copy the .ocx to the system
directory.
> When you install and then launch an app that contains a reference to
MSCOMCTL.OCX for
> example,
> the ActiveX installer service generates the appropriate .oca file.
>
> That's what happened on my Vista ultimate machine, and I did "not"
manually add the .oca
> via an installer program.
>
   It's never been necessary to install an OCA. That just
gets generated by VB to provide the VB properties.

  You know more about this than I do. I don't have access
to a copy of Vista. But according to the webpages I
found explaining the ActiveX Installer Service, that's
not present on the Home version and is *only* of use
to register a control without running as admin. That's
why I wonder if there are deeper problems that MS is
not admitting to, since ActiveX Installer Service clearly
shouldn't be necessary just to install something properly.

> Even better yet, since my machine is an XP / Vista dual boot with the OSs
on separate
> drives,
> I browsed to the XP directory and copied and pasted MSCOMCTL.OCX  ( and
one other one )
> into Vista.
> Tried registering it and it still wouldn't work. ( nor would the
registration be
> successful )
> So I deleted the one I had copied into vista using explorer in Vista.
> Booted back to XP and "Ta-dum" it was deleted from XP.
>
> Had to run a repair on VS/VB6 to reinstall them.
>

    I noticed that you mentioned that in an earlier post.
Scary! I knew that Vista virtualization was a funky
business, but tying into other installed OSs is bizarre.

  I wonder if it might be better to install a neutral dual-booter.
I have noticed that the Windows booter is "arrogant".
I once installed XP for a friend on a machine with WinME
and Win95. XP not only hijacked the MBR; it also
refused to recognize Win95. I had to overwrite the MBR
with a 3rd-part boot utility to restore order.
Author
13 May 2007 3:26 PM
Steve Easton
>>
>   It's never been necessary to install an OCA. That just
> gets generated by VB to provide the VB properties.
>
>  You know more about this than I do. I don't have access
> to a copy of Vista. But according to the webpages I
> found explaining the ActiveX Installer Service, that's
> not present on the Home version and is *only* of use
> to register a control without running as admin. That's
> why I wonder if there are deeper problems that MS is
> not admitting to, since ActiveX Installer Service clearly
> shouldn't be necessary just to install something properly.

The eweek article I linked to explains it fairly well.
The ActiveX installer service was added to Vista Business and above because MSFT realized
there
were just way too many business applications that depend on ActiveX ( and VB Classic )
and if Vista wasn't able to run these apps Big Business would simply shun Vista.
Those of us who have written ActiveX dependent apps aimed at the home user are forced
to deal with the UAC and ActiveX issues in a different way.
Hence my post a while back asking if anyone knew of a true non ActiveX dependent listview
API

Show quote
>> Even better yet, since my machine is an XP / Vista dual boot with the OSs
> on separate
>> drives,
>> I browsed to the XP directory and copied and pasted MSCOMCTL.OCX  ( and
> one other one )
>> into Vista.
>> Tried registering it and it still wouldn't work. ( nor would the
> registration be
>> successful )
>> So I deleted the one I had copied into vista using explorer in Vista.
>> Booted back to XP and "Ta-dum" it was deleted from XP.
>>
>> Had to run a repair on VS/VB6 to reinstall them.
>>
>
>    I noticed that you mentioned that in an earlier post.
> Scary! I knew that Vista virtualization was a funky
> business, but tying into other installed OSs is bizarre.

Yep, sure surprised the heck out of me.
Even better is the issue of Vista restore points in a dual boot XP / Vista system.
Booting into XP wipes out the Vista restore points, which is ludicrous.
If you're in XP and need to browse to a desktop in Vista Documents and Settings to grab a
file
or shortcut, you can't get in because of permissions issues, but XP can delete the Vista
restore points in Vista "Protected Storage."
What's wrong with this picture.


>  I wonder if it might be better to install a neutral dual-booter.
> I have noticed that the Windows booter is "arrogant".
> I once installed XP for a friend on a machine with WinME
> and Win95. XP not only hijacked the MBR; it also
> refused to recognize Win95. I had to overwrite the MBR
> with a 3rd-part boot utility to restore order.
>
Don't know but I would think yes.
Vista does take over the machine, creating a boot directory on the XP drive, and setting
Vista
as the default boot OS.
Genuine pita.

Steve Easton
Author
13 May 2007 4:26 PM
mayayana
> >  You know more about this than I do. I don't have access
> > to a copy of Vista. But according to the webpages I
> > found explaining the ActiveX Installer Service, that's
> > not present on the Home version and is *only* of use
> > to register a control without running as admin. That's
> > why I wonder if there are deeper problems that MS is
> > not admitting to, since ActiveX Installer Service clearly
> > shouldn't be necessary just to install something properly.
>
> The eweek article I linked to explains it fairly well.
> The ActiveX installer service was added to Vista Business and above
because MSFT realized
> there
> were just way too many business applications that depend on ActiveX ( and
VB Classic )
> and if Vista wasn't able to run these apps Big Business would simply shun
Vista.
> Those of us who have written ActiveX dependent apps aimed at the home user
are forced
> to deal with the UAC and ActiveX issues in a different way.
> Hence my post a while back asking if anyone knew of a true non ActiveX
dependent listview
> API

   Sorry if I'm being thick here, but I still don't
get this. I'm assuming that once an ActiveX control
is installed by admin. it's usable by all and shouldn't cause
problems. I thought the Ax installer service was just to
avoid prompts. Is that wrong? So, in other words, admin.
could install, say, an editor that uses the RichTextBox
control, and give normal users permission to use the
editor, but that control wouldn't be deemed safe for
loading by a program run by a normal user, even though
it's an MS control? And therefore the normal user would
have no way to run the program as long as it uses the RTB
control?

   (I re-read the eWeek article but it seems unclear
to me on that point.)
Author
13 May 2007 5:29 PM
Steve Easton
Show quote
"mayayana" <mayaXXyan***@mindXXspring.com> wrote in message
news:K_G1i.9447$Ut6.7276@newsread1.news.pas.earthlink.net...
>> >  You know more about this than I do. I don't have access
>> > to a copy of Vista. But according to the webpages I
>> > found explaining the ActiveX Installer Service, that's
>> > not present on the Home version and is *only* of use
>> > to register a control without running as admin. That's
>> > why I wonder if there are deeper problems that MS is
>> > not admitting to, since ActiveX Installer Service clearly
>> > shouldn't be necessary just to install something properly.
>>
>> The eweek article I linked to explains it fairly well.
>> The ActiveX installer service was added to Vista Business and above
> because MSFT realized
>> there
>> were just way too many business applications that depend on ActiveX ( and
> VB Classic )
>> and if Vista wasn't able to run these apps Big Business would simply shun
> Vista.
>> Those of us who have written ActiveX dependent apps aimed at the home user
> are forced
>> to deal with the UAC and ActiveX issues in a different way.
>> Hence my post a while back asking if anyone knew of a true non ActiveX
> dependent listview
>> API
>
>   Sorry if I'm being thick here, but I still don't
> get this. I'm assuming that once an ActiveX control
> is installed by admin. it's usable by all and shouldn't cause
> problems. I thought the Ax installer service was just to
> avoid prompts. Is that wrong? So, in other words, admin.
> could install, say, an editor that uses the RichTextBox
> control, and give normal users permission to use the
> editor, but that control wouldn't be deemed safe for
> loading by a program run by a normal user, even though
> it's an MS control? And therefore the normal user would
> have no way to run the program as long as it uses the RTB
> control?
>
>   (I re-read the eWeek article but it seems unclear
> to me on that point.)
>
You're not alone.


--

Steve Easton
Author
13 May 2007 2:13 AM
jim evans
On Sat, 12 May 2007 21:47:32 GMT, "mayayana"
<mayaXXyan***@mindXXspring.com> wrote:
>  In any case, he's talking about a thread discussing the
>ActiveX Installer Service, an optional service on Vista
>Business that allows non-admin users to install ActiveX
>controls without running as admin. Presumably that's
>only relevant if you want your installation to run with no
>privileges in a corporate environment.
<snip remainder>

I don't think we're talking about the same problem.  This page
http://msdn2.microsoft.com/en-us/vbrun/ms788708.aspx on the MS website
lists the following dlls and ocxs as:

                 Tested and Not Shipping In Windows Vista

anibtn32.ocx            mscdrun.dll            msoutl32.ocx
rpcltscm.dll       
autmgr32.exe            mschart.ocx            mspdox35.dll
rpcmqcl.dll       
autprx32.dll            mschrt20.ocx            msrd2x35.dll
rpcmqsvr.dll       
ciscnfg.exe            mscomct2.ocx            msrdc20.ocx
rpcss.exe       
comct232.ocx            mscomctl.ocx            msrdo20.dll
adoapt15.reg       
comct332.ocx        ****mscomm32.ocx****            msrepl35.dll
adofre15.reg       
comctl32.ocx            msdatgrd.ocx            msstdfmt.dll
makapt15.bat       
comdlg32.ocx            msdatlst.ocx            msstkprp.dll
makfre15.bat       
dao350.dll            msdatrep.ocx            mstext35.dll
msderun.dll       
dbadapt.dll            msdbrptr.dll            mswcrun.dll
dbmsshrn.dll       
dbgrid32.ocx            msexch35.dll            mswinsck.ocx
msdaerr.dll       
dblist32.ocx            msexcl35.dll            msxbse35.dll
msdatl2.dll       
dbmssocn.dll            msflxgrd.ocx            odbctl32.dll
oledb32x.dll       
edao2535.tlb            mshflxgd.ocx            odkob32.dll
spin32.ocx       
gauge32.ocx            mshtmpgr.dll            olecnv32.dll
sysinfo.ocx       
graph32.ocx            msinet.ocx            picclp32.ocx
tabctl32.ocx       
grid32.ocx            msjet35.dll            racmgr32.exe
threed32.ocx       
gswdll32.dll            msjint35.dll            racreg32.dll
tlbinf32.dll       
hlp95en.dll            msjt4jlt.dll            rdocurs.dll
visdata.exe       
keysta32.ocx            msjter35.dll            richtx32.ocx
vbar332.dll       
mci32.ocx            msjtor35.dll            rpcltc1.dll
vsdbflex.srg       
mdac_typ.exe            msltus35.dll            rpcltc5.dll
wbclsdsr.ocx       
msaddndr.dll            msmapi32.ocx            rpcltccm.dll
wbclsdsr.ocx       
msadodc.ocx            msmask32.ocx            rpclts5.dll
windbver.exe       
msbind.dll                                              

I have read other places on the web that "Tested and Not Shipping In
Windows Vista" really means they simply *don't work* in Vista.

jim
Author
13 May 2007 2:38 AM
Steve Gerrard
Show quote
"jim evans" <jimsTAKEOUTne***@houston.rr.com> wrote in message
news:plsc4399oh8neqv0jh1qfp2ehi6ame6p1m@4ax.com...
> On Sat, 12 May 2007 21:47:32 GMT, "mayayana"
>
> I don't think we're talking about the same problem.  This page
> http://msdn2.microsoft.com/en-us/vbrun/ms788708.aspx on the MS website
> lists the following dlls and ocxs as:
>
>                 Tested and Not Shipping In Windows Vista
>
> comct232.ocx        mscomctl.ocx        msrdo20.dll
> adoapt15.reg
> comct332.ocx        ****mscomm32.ocx****        msrepl35.dll
> adofre15.reg
> comctl32.ocx        msdatgrd.ocx        msstdfmt.dll
> makapt15.bat
> comdlg32.ocx        msdatlst.ocx        msstkprp.dll
....
> keysta32.ocx        msjter35.dll        richtx32.ocx
>
> I have read other places on the web that "Tested and Not Shipping In
> Windows Vista" really means they simply *don't work* in Vista.
>

In that other thread, the combination of the following posts apparently worked
for three of those:

> "Ralph" <nt_consultin***@yahoo.com> wrote in message
> news:0tCdnTSSA9unPtnbnZ2dnUVZ_qOpnZ2d@arkansas.net...
>>
>>
>> A quick cheap trick is to put the command ("<path>\regsvr32
>> <path>\richtx32.ocx") in a batch file. Name the batch file with
>> "install",
>> or "setup" in the name (eg, MyInstall.bat), then run the batch file.

.....

Show quote
"Richard Eagle" <rich***@discussions.microsoft.com> wrote in message
news:O5RDUjAlHHA.1776@TK2MSFTNGP05.phx.gbl...
> Ralph, I got them all working by right-clicking the batch file and selecting
> 'run as administrator'.
>
> Registered:
> richtx32.ocx
> comdlg32.ocx
> mscomctl.ocx
> dxtmeta2.dll
>
> ...and all are working fine now. Thanks again.
>
> Richard
>
Author
13 May 2007 2:41 AM
Robert Morley
> It shouldn't depend on anything. If we don't all get
> the same messages then it's not a news *group*. :)

In theory, maybe, but if nothing else, it has been proven that MS has a
blacklist, and that they won't reflect messages by certain posters, even
though non-MS servers will.  (There's a rather prolific troll in some of the
Access groups who's recently resurfaced as a result of changing his e-mail
address, thus confirming this, in the event that there was any doubt.)
Also, how many messages down will depend on how you're sorting and/or
grouping your messages.  Even the time isn't guaranteed, since many NG
readers localize it to your own time, instead of GMT.



Rob
Author
12 May 2007 11:02 PM
Steve Easton
Ralph posted the following:

A quick cheap trick is to put the command ("<path>\regsvr32
<path>\richtx32.ocx") in a batch file. Name the batch file with "install",
or "setup" in the name (eg, MyInstall.bat), then run the batch file.


--

Steve Easton


Show quote
"jim evans" <jimsTAKEOUTne***@houston.rr.com> wrote in message
news:ou2c43pbpvins16kus7qas7lkpsfu83179@4ax.com...
> On Sat, 12 May 2007 10:21:06 -0400, "Steve Easton"
> <ad***@95isalive.com> wrote:
>
>>Read the thread titled: need to register richtx32.ocx in Vista
>>dated Friday, May 11, 2007 12:33 PM  and located 6 items below this one.
>
> I think that must be dependent on your newsreader, your news service,
> and/or your message maintenance settings.
>
> jim
Author
13 May 2007 3:24 AM
jim evans
My program has wide distribution and must work for all Vista users.
Rather than try to prove Microsoft wrong, I'd like to restate my
original question.

Is there a substitute for mscomm32.ocx, or do I throw my program, that
took many months to develop, in the trash?

jim
Author
13 May 2007 3:20 PM
Steve Easton
Read the second reply by Chris on this page.
http://www.vbforums.com/archive/index.php/t-91768.html

It appears to be an API that will eliminate the need for mscomm32.ocx
I have not tried it.


--

Steve Easton



Show quote
"jim evans" <jimsTAKEOUTne***@houston.rr.com> wrote in message
news:pv0d43t5diss48pc2i15li5i8fr7ucn6vs@4ax.com...
> My program has wide distribution and must work for all Vista users.
> Rather than try to prove Microsoft wrong, I'd like to restate my
> original question.
>
> Is there a substitute for mscomm32.ocx, or do I throw my program, that
> took many months to develop, in the trash?
>
> jim
Author
13 May 2007 6:49 PM
jim evans
On Sun, 13 May 2007 11:20:44 -0400, "Steve Easton"
<ad***@95isalive.com> wrote:

>Read the second reply by Chris on this page.
>http://www.vbforums.com/archive/index.php/t-91768.html
>
>It appears to be an API that will eliminate the need for mscomm32.ocx
>I have not tried it.

Thanks for that reference.  I hope I don't have to go that route.
Much code was posted that didn't work and choppy fixes were posted,
then only send was addressed.  Receive was left to a user to work out.
Also, do you know if any API that worked in XP works in Vista?  I
would have thought mscomm OCX would have been using this API.

Thanks again though.

jim
Author
13 May 2007 8:48 PM
Steve Easton
Show quote
"jim evans" <jimsTAKEOUTne***@houston.rr.com> wrote in message
news:36ne43pr719gnh3bs4nsihbuehovehi1jr@4ax.com...
> On Sun, 13 May 2007 11:20:44 -0400, "Steve Easton"
> <ad***@95isalive.com> wrote:
>
>>Read the second reply by Chris on this page.
>>http://www.vbforums.com/archive/index.php/t-91768.html
>>
>>It appears to be an API that will eliminate the need for mscomm32.ocx
>>I have not tried it.
>
> Thanks for that reference.  I hope I don't have to go that route.
> Much code was posted that didn't work and choppy fixes were posted,
> then only send was addressed.  Receive was left to a user to work out.
> Also, do you know if any API that worked in XP works in Vista?

Any that I've used work "so far." Most of them I found here:
http://vbnet.mvps.org/
Don't let the link fool you, it's all vb Classic stuff

I  would have thought mscomm OCX would have been using this API.
>
Ok I'm confused, my understanding is that using the API eliminates the need for the ocx
and the reference to it in a project.
At least that's how the ones work that replace the common dialog activeX controls.

There's are others who can answer you better. I just stick my nose in when I "think" I
know something.

--

Steve Easton
Author
13 May 2007 9:12 PM
jim evans
On Sun, 13 May 2007 16:48:09 -0400, "Steve Easton"
<ad***@95isalive.com> wrote:

> I  would have thought mscomm OCX would have been using this API.
>>
>Ok I'm confused, my understanding is that using the API eliminates the need for the ocx
>and the reference to it in a project.

Yes, it does, I would say bypasses the ocx.  The original poster's
problem was that the ocx only implements Comm ports up through 8 and
he needed to reach 16.  You may be right that the ocx doesn't use the
API.  I would have guessed it did, but that's just conjecture.

jim
Author
13 May 2007 9:20 PM
jim evans
Correction:

mscomm32.ocx got to Comm port 16 and he needed to go to 17.

jim
Author
14 May 2007 4:45 PM
Dick Grier
SaxComm (www.sax.net) "should work," but I haven't tested it.  It does have
an ActiveX component, with (essentially) the same API as MSComm.  However,
I'm still not sure what doesn't work, and I haven't had a chance to test it
yet -- I've only have my Vista system since April, so I admit, I'm slow.

Please tell me what you have found that fails.

BTW, the API solution that was suggested is not a good idea, if you are
dealing with binary data.

Dick

--
Richard Grier, MVP
Hard & Software
Author of Visual Basic Programmer's Guide to Serial Communications, Fourth
Edition,
ISBN 1-890422-28-2 (391 pages, includes CD-ROM). July 2004, Revised March
2006.
See www.hardandsoftware.net for details and contact information.
Author
14 May 2007 4:40 PM
Dick Grier
Hi,

What about it "doesn't work?" I'm pretty sure that it does work.  I'll do
some testing today.

Dick

--
Richard Grier, MVP
Hard & Software
Author of Visual Basic Programmer's Guide to Serial Communications, Fourth
Edition,
ISBN 1-890422-28-2 (391 pages, includes CD-ROM). July 2004, Revised March
2006.
See www.hardandsoftware.net for details and contact information.
Author
14 May 2007 9:10 PM
Dick Grier
Jim,

I've checked several of my programs that use MSComm under Vista.  They all
work as expected (baring the "normal" headaches).  I'd still like to hear
more about the problems you are seeing.

Dick

--
Richard Grier, MVP
Hard & Software
Author of Visual Basic Programmer's Guide to Serial Communications, Fourth
Edition,
ISBN 1-890422-28-2 (391 pages, includes CD-ROM). July 2004, Revised March
2006.
See www.hardandsoftware.net for details and contact information.

AddThis Social Bookmark Button