我用mfc开发一个控件,然后在Asp中调用,调用代码如下:
 <object classid="clsid:DEA5C484-CD8B-4033-8031-92FE99938E2E" id="VideoMedia1" width="601" height="202">
        <param name="_Version" value="65536">
        <param name="_ExtentX" value="15901">
        <param name="_ExtentY" value="5345">
        <param name="_StockProps" value="0">
   <%       
    if not RS.eof  Then      
       UserIP=RS("VServerMultiCastIP")
       StrPort=RS("VServerMultiCastPort") 
    %>   
       <param name="PlayIP" value="<%=UserIP%>">
        <param name="PlayPort" value="<%=StrPort%>">
        <param name="State" value="0">
   <%     else %>
        <param name="PlayIP" value="10.9.2.1">
        <param name="PlayPort" value="57001">
        <param name="State" value="1">   
   
  <%  End if 
    RS.Close
    MyConn.Close
     %>     
      </object>      其中的PlayIP、PlayPort、state参数是随着调用页面来改变的,同时我在组件程序中给这些参数赋了初值:
void CVideoMediaCtrl::DoPropExchange(CPropExchange* pPX)
{
ExchangeVersion(pPX, MAKELONG(_wVerMinor, _wVerMajor));
COleControl::DoPropExchange(pPX); // TODO: Call PX_ functions for each persistent custom property.
         PX_String(pPX,"PlayIP",m_playIP,"10.9.2.205");
PX_Long(pPX,"PlayPort",m_playPort,57001);
PX_Bool(pPX,"State",m_state,TRUE);
}
然后我在OnDraw函数中用到这些PlayIP、PlayPort、State,但是我发现这些值在OnDraw函数中还是原来的初值,也就是说并没有通过上面的网页把参数传进来,这是为什么?