牢骚几句

Opencore不是一般的复杂,各个层次的调用,设计模式,插件技术,等等混合在一起使用。

庆幸能有sourceinsight用,否则,还真不知道从哪里看起。

 

 

接触opencore有了2个多月时间了,以前我自己做了一个系统,是用OpenMax1.2的。全年的时候公司项目经理考虑到移植性的问题,所以让我来负责采用这么个开放API协议的系统。原因是因为opencore也是采用OpenMax1.2来做codec层。

 

当时考虑的是挺好,可是后来在项目压力以及软硬件条件的局限下,这个系统就不那么的有兼容性和扩充性了。

 

我具体的做法是参考Bellagio(一个开源的Openmax IL实现),然后在此基础上交叉编译到我们自己的板子上。结果发现这个实现在写一个component的时候实在痛苦,而且那些代码看的巨痛苦,所以做了若干更改...经过无数个纠结的加班夜,终于将写一个component的代码行数从2000行减少到400行就可以搞定,其中有200行是重复代码,直接从以前的代码中copy过来即可。其他同事看两下以前的code,也能2天就写一个新的component,调试2天,基本一周就能运行起来。

 

而在此系统上,也运行了大量的应用,像mp3,midi,wav播放,mp4播放,手机电视,录像...。也还算稳定,跑个几千上万次没啥问题。

 

一年后回头一看,此时的code已经面目全非了。几乎看不出是从Bellagio改过来的了。

 

但是缺陷非常明显,就是兼容性太差,虽说是根据OpenMax 1.2的标准文档做出来的,但是由于所有的内容都是自己做,所以很多地方处理起来非常dirty,例如对于录音,每个buffer的大小就假定是4096了。

 

半年前公司要上android系统了,于是我很自然地要完成OpenMax系统移植的工作,这时候才发现兼容性是个致命的问题。

 

我发现无法维护一套code来同时运行以前的应用,以及在集成到opencore中。

 

于是,我主张重新在opencore框架下移植我们自己的codec。

 

 

为什么在html页面点击选择之后进行表单的提交,不能跳转到相应的asp页面中!!求求帮忙!! 这是html部分的代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>性格测试</title> </head> <body> <form method="get" action="grade.asp"> <p>从排队看你的性格类型?</p> <p>通常在排队的时候你来晚了,下面哪种方式属于你或者是与你比较接近?请选择一种:</p> <a href="grade.asp?choice=1"><input type="radio" name="choice" value="1">(1)规规矩矩地排在最后一个。</a><br> <a href="grade.asp?choice=2"><input type="radio" name="choice" value="2">(2)面带微笑,随便排在最后。</a><br> <a href="grade.asp?choice=3"><input type="radio" name="choice" value="3">(3)满腹牢骚,怪自己来得太晚或是排队的 人太多,并试着去加塞,别人不让还不高兴,甚至与人争吵。</label></a><br> <a href="grade.asp?choice=4"><input type="radio" name="choice" value="4">(4)不加塞,帮着维持秩序或者是加塞,呵斥别人让开点。</a> <br><br> <input type="submit" value="已选好,看看结论"> <input type="reset" value="重新选"> </form> </body> </html> 这是asp部分的代码: <%@ LANGUAGE="VBScript" %> <html> <head> <meta charset="UTF-8"> <title>结果</title> </head> <body> <% Dim a a = Request.QueryString("choice") Select Case CInt(a) Case 1 Response.Write "1完美型" Case 2 Response.Write "2平和型" Case 3 Response.Write "3活泼型" Case 4 Response.Write "4领导型" End Select %> </body> </html>
最新发布
05-28
### HTML表单提交后无法跳转到ASP页面的解决方案 HTML表单提交后无法跳转到ASP页面的问题,通常涉及以下几个方面:表单的`action`属性配置错误、服务器端脚本未正确处理请求或响应、以及客户端与服务器端之间的通信问题。以下是详细的分析和解决方法。 #### 1. 检查表单的`action`属性 确保HTML表单的`action`属性指向正确的ASP页面路径。如果路径不正确,表单提交后将无法跳转到目标ASP页面。例如: ```html <form action="target.asp" method="post"> <input type="text" name="username" /> <input type="password" name="password" /> <input type="submit" value="Submit" /> </form> ``` 上述代码中,`action="target.asp"`指定了表单提交的目标ASP页面[^4]。如果目标页面位于不同的目录下,需要使用相对路径或绝对路径来指定目标页面的位置。 #### 2. 确保服务器支持ASP页面 HTML表单提交后无法跳转到ASP页面,可能是因为服务器未正确配置以支持ASP脚本运行。检查服务器是否启用了ASP解析功能,并确认目标ASP页面能够正常访问。如果服务器未启用ASP支持,可以参考以下步骤进行配置: - 在IIS(Internet Information Services)中,确保ASP模块已安装并启用。 - 测试一个简单的ASP页面,例如以下代码,验证服务器是否能正确解析ASP脚本: ```asp <% Response.Write("ASP is working!") %> ``` #### 3. 处理表单提交后的跳转逻辑 在ASP页面中,可以通过多种方式实现页面跳转。例如,使用`Response.Redirect`方法强制跳转到另一个页面。以下是一个示例: ```asp <% Dim username, password username = Request.Form("username") password = Request.Form("password") If username = "admin" And password = "123456" Then Response.Redirect("success.asp") ' 跳转到成功页面 Else Response.Redirect("error.asp") ' 跳转到错误页面 End If %> ``` 上述代码中,`Response.Redirect`方法用于在表单提交后跳转到指定页面[^2]。确保在ASP页面中正确处理表单数据,并根据逻辑决定跳转目标。 #### 4. 防止表单重复提交导致跳转失败 如果表单提交后出现重复提交的情况,可能会导致跳转失败。可以通过以下方法防止重复提交: - 在表单提交后,立即禁用提交按钮。 - 使用JavaScript控制表单提交行为。例如: ```javascript function submitForm() { document.getElementById("submitButton").disabled = true; // 禁用提交按钮 return true; } ``` 结合HTML表单使用: ```html <form action="target.asp" method="post" onsubmit="return submitForm();"> <input type="text" name="username" /> <input type="password" name="password" /> <input type="submit" id="submitButton" value="Submit" /> </form> ``` #### 5. 检查跨域或锚点跳转问题 如果目标ASP页面包含锚点(如`#section1`),确保锚点地址正确配置在`action`属性中,而不是在按钮的`onclick`事件中[^4]。例如: ```html <form action="target.asp#section1" method="post"> <input type="text" name="username" /> <input type="password" name="password" /> <input type="submit" value="Submit" /> </form> ``` #### 6. 调试与日志记录 如果仍然无法解决问题,可以在ASP页面中添加调试信息或日志记录,检查表单数据是否正确传递到服务器端。例如: ```asp <% Dim username, password username = Request.Form("username") password = Request.Form("password") Response.Write("Username: " & username & "<br>") Response.Write("Password: " & password & "<br>") If username = "admin" And password = "123456" Then Response.Redirect("success.asp") Else Response.Redirect("error.asp") End If %> ``` 通过输出表单数据,可以确认表单提交是否成功以及数据是否正确传递。 --- ###
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值