共享软件嵌入广告是一个维护软件作者利益的不错的方法,目前不光共享软件,很多商业软件也嵌入了广告,嵌入广告是怎样实现的呢?软件作者怎样才能控制广告的显示?经过我多次实践后得出一些心得和大家分享。(以下代码用C++ builder 和ASP实现)
软件一旦发布出去,控制权就很难掌握在作者的手中,为了能够保证作者的利益,就不能单一的显示某一个广告,而应该动态的可以由作者控制的定时滚动显示广告,如何做到这一点?这就要作者在写代码的时候不能将广告链接代码固定在一个某一个广告上,而应该链接到自己的网站上的某个ASP或者JSP页面,ASP或者JSP页面再将广告显示出来,这样做的话,显示什么样的广告控制权就掌握在作者的手中了。比如作者要滚动显示两个广告,可以在ASP用随机数来控制或者重点推一个广告,这个由作者决定。
在生成ASP页面以前,要先申请几个广告链接代码,可以到
http://www.sharebank.com.cn网站的“网站联盟”申请几个广告链接,具体ASP关键代码如下:
<STYLE type=text/css>BODY {MARGIN-TOP: 0px; MARGIN-LEFT: 0px ;MARGIN-BOTTOM: 0px; MARGIN-RIGHT: 0px}</STYLE>
这段代码主要是用于显示的控制,因为显示广告的地方有限,这段代码可以将网页显示的各个边距减为0,可以充分利用空间。
<%
dim random
RANDOMIZE
random = INT((1+1)*RND)
%>
<%
if random=0 then
%>
将广告链接代码1复制到此处
<%
else
if random=1 then
%>
将广告链接代码2复制到此处
<%
end if
end if
%>
以上代码就可以实现随机显示广告的功能,如果广告较多,还可以无限扩充下去。如果在某一段时间,作者要重点推销某一个广告,就将随机数取消,只显示一个广告即可。
ASP页面做完后,该考虑在你的软件添加广告显示的功能了。这就需要在你的软件中留出一个地方用来显示广告,一般都是将广告显示位置定在最醒目的地方,显示广告最好用IE浏览器的控件,这样显示的内容可以很丰富,有文字、图片、GIF动画、flash等,在C++ builder或者Delphi中对应的VCL控件为TCppWebBrowser,将一个TCppWebBrowser控件拖入到你的Form中,并在程序初始化时加入以下代码:
CppWebBrowser1->Navigate(WideString("
http://www.xxxx.com/logo.asp"));
logo.asp就是上边做的ASP页面,
www.xxxx.com就是你的网站的地址。如果用户在使用你的软件时没有连上互联网,就需要显示默认的广告链接了,不然显示的就是空白或者ERROR 404的错误。具体做法是将一个广告存成静态HTML文件随软件主体一起发布,一旦用户没有连接互联网就将TCppWebBrowser指向本地硬盘,关键代码如下:
void __fastcall TForm1::CppWebBrowser1NavigateError(TObject *Sender,
LPDISPATCH pDisp, Variant *URL, Variant *Frame, Variant *StatusCode,
VARIANT_BOOL *Cancel)
{
CppWebBrowser1->Navigate(WideString("c:\\你的软件的安装位置\\广告.htm")) ;
}
为了实现滚动显示的效果,需要在程序中增加一个定时器,比如间隔10分钟更新一次广告,关键代码如下:
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
CppWebBrowser1->Refresh() ;
}
通过以上描述的方式就实现了广告的嵌入,欢迎和我交流 QQ:1441641,网站:http://www.efuyun.com,祝大家多多赚钱,共同推动共享软件事业。