这样返回两个值的处理我也没做过.,不过我倒是有两个想法,提出来供楼主参考,如果楼下没有更好的办法的话,楼主不防考虑:
1、将存储过程写成函数,各返回一个值,然后分别取值。
2、根据你的需求。你把记录集取到了一个recordset中了;Set RsMessage = Server.CreateObject("ADODB.Recordset")  set RsMessage.Source = CMD
set RsMessage = CMD.Execute 
recordset中不是可以计算行的总数的吗?所以你上面的存储过程就返回一个r_cursor就行了。v_count在前端处理。