首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

BCB程序,被ASP引用的有关问题

2012-03-01 
BCB程序,被ASP引用的问题用BCB写的程序,在asp里引用object classidclsid:B536D91D-C5FE-4369-A80D-9DB5

BCB程序,被ASP引用的问题
用BCB写的程序,在asp里引用 
<object classid="clsid:B536D91D-C5FE-4369-A80D-9DB52CBBE55E" id="Headcall" width="1" height="1" ></object> 
var myObject = Headcall;
//遍历对象的所有属性
for (prop in myObject)
{
document.write("属性:" + prop + "=" + myObject[prop]);
document.write("<br>");
}



读出来的属性如下

属性:language=
属性:scrollHeight=1
属性:isTextEdit=false
属性:currentStyle=[object]
属性:document=[object]
属性:onmouseup=null
属性:oncontextmenu=null
属性:isMultiLine=true
属性:clientHeight=1
属性:onrowexit=null
属性:onbeforepaste=null
属性:onactivate=null
属性:scrollLeft=0
属性:lang=
属性:onmousemove=null
属性:onmove=null
属性:onselectstart=null
属性:parentTextEdit=[object]
属性:oncontrolselect=null
属性:canHaveHTML=false
属性:onkeypress=null
属性:oncut=null
属性:onrowenter=null
属性:onmousedown=null
属性:onpaste=null
属性:className=
属性:id=Headcall
属性:onreadystatechange=null
属性:onbeforedeactivate=null
属性:hideFocus=false
属性:dir=
属性:isContentEditable=false
属性:onkeydown=null
属性:clientWidth=1
属性:onlosecapture=null
属性:parentElement=[object]
属性:ondrag=null
属性:ondragstart=null
属性:oncellchange=null
属性:recordNumber=null
属性:onfilterchange=null
属性:onrowsinserted=null
属性:ondatasetcomplete=null
属性:onmousewheel=null
属性:ondragenter=null
属性:onblur=null
属性:onresizeend=null
属性:onerrorupdate=null
属性:onbeforecopy=null
属性:ondblclick=null
属性:scopeName=HTML
属性:onkeyup=null
属性:onresizestart=null
属性:onmouseover=null
属性:onmouseleave=null
属性:outerText=
属性:innerText=
属性:onmoveend=null
属性:tagName=OBJECT
属性:title=
属性:offsetWidth=1
属性:onresize=null
属性:contentEditable=inherit
属性:runtimeStyle=[object]
属性:filters=[object]
属性:ondrop=null
属性:onpage=null
属性:onrowsdelete=null
属性:tagUrn=
属性:offsetLeft=10
属性:clientTop=0
属性:style=[object]
属性:onfocusout=null
属性:clientLeft=0
属性:ondatasetchanged=null
属性:canHaveChildren=false
属性:ondeactivate=null
属性:isDisabled=false
属性:onpropertychange=null
属性:ondragover=null
属性:onhelp=null
属性:ondragend=null
属性:onbeforeeditfocus=null
属性:disabled=false
属性:onfocus=null
属性:behaviorUrns=[object]
属性:accessKey=
属性:onscroll=null
属性:onbeforeactivate=null
属性:onbeforecut=null
属性:readyState=4
属性:all=[object]
属性:sourceIndex=4
属性:onclick=null
属性:scrollTop=0
属性:oncopy=null
属性:onfocusin=null
属性:tabIndex=0
属性:onbeforeupdate=null
属性:outerHTML=
属性:innerHTML=
属性:ondataavailable=null
属性:offsetHeight=1
属性:onmovestart=null
属性:onmouseout=null
属性:scrollWidth=1
属性:offsetTop=28
属性:onmouseenter=null
属性:onlayoutcomplete=null
属性:offsetParent=[object]
属性:onafterupdate=null
属性:ondragleave=null
属性:children=[object]
属性:declare=false
属性:codeBase=
属性:firstChild=null
属性:type=
属性:height=1
属性:alt=
属性:codeType=
属性:BaseHref=file://C:\Documents and Settings\Administrator\桌面\wpa.html
属性:onerror=null
属性:hspace=0
属性:previousSibling=null
属性:nodeName=OBJECT
属性:nodeType=1
属性:attributes=[object]
属性:childNodes=[object]
属性:dataFld=
属性:archive=
属性:ownerDocument=[object]
属性:parentNode=[object]
属性:altHtml=
属性:form=null
属性:standby=
属性:width=1
属性:align=
属性:useMap=
属性:code=
属性:nextSibling=[object]
属性:vspace=0
属性:dataSrc=
属性:nodeValue=null
属性:border=
属性:lastChild=null
属性:dataFormatAs=
属性:name=


如果我想增加和修改这些属性,应该怎样去做啊

[解决办法]
<object id="wmvPlay" classid='CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6' width="210" height="30" codebase="http://activex.microsoft.com/activex/controls/mplay" er="er"/en/nsmp2inf.cab#Version=5,1,52,701standby=Loading microsoft?="Microsoft?" windows="Windows" media?="Media?" player="Player" components...="components..." type="application/x-oleobject">


<param name='URL' value='1.mid' />
<param name='UIMode' value='full' />
<param name='AutoStart' value='false' />
<param name='Enabled' value='true' />
<param name='enableContextMenu' value='false' /> //属性
</object>

[解决办法]
你想在BCB里面引用一个ACTIVEX控件,还是想做好一个ACTIVEX控件给asp等类型的网页去调用啊.

其实,用都差不多. bcb的话要引入import哪个DLL进来,你就能看见一个类型库了. 网页上面写了 怎么样.

实现的一个ACTIVEX控件,你要的那些不都是属性吗. 你实现那些属性就好了.
另外在加上安全接口的调用啥的就好了。


[解决办法]
估计这个哥们自己都没明白,如果是EXE的话,那么是COM型的,还是普通的啦. 比如哪个wmp.
纯粹一个EXE 用SCRIPTMANAGER好了. 让他来启动这个EXE 设置参数运行.
如果是COM程序,和一个对象一样用 没多大分别.
[解决办法]
既然能被ASP调用,肯定是COM程序了。
new一个ActiveX Library, C++Builder会自动生成一个框架。然后添加一个Active Server Objec,再为其添加相应的属性。。。
[解决办法]
用BCB写的程序,在asp里引用 
<object classid="clsid:B536D91D-C5FE-4369-A80D-9DB52CBBE55E" id="Headcall" width="1" height="1" > </object> 
var myObject = Headcall; 
//遍历对象的所有属性 
for (prop in myObject) 

document.write("属性:" + prop + "=" + myObject[prop]); 
document.write(" <br>"); 



读出来的属性如下 

属性:language= 
属性:scrollHeight=1 

这个是COM程序的用法.
=======================================================>>>
普通EXE就没有办法这样用. 普通程序只能这样.
<SCRIPT language=javascript>
function Run(strPath) {
// exe.value=strPath; //notepad
try {

var objShell = new ActiveXObject("wscript.shell");
objShell.Run(strPath);
objShell = null;
}
catch (e){alert('找不到文件"'+strPath+'"(或它的组件之一)。请确定路径和文件名是否正确,而且所需的库文件均可用。')
}
}
</SCRIPT>

热点排行