当前位置:  开发笔记 > 编程语言 > 正文

在单声道上运行WinForm应用程序的实际成本是多少?

如何解决《在单声道上运行WinForm应用程序的实际成本是多少?》经验,为你挑选了2个好方法。

我的公司有一个现有的WinForm应用程序,它运行在WinXP上.该应用程序使用DirectSound进行了大量的声音处理.

我的公司想评估Mono,作为Vista/Win Server 2008每工作站成本的替代方案.

我听说过不同的估计,从'它将在Mono上轻松工作'到'在某些情况下可能需要几个月的重新编码才能让WinForm应用程序与Linux上的Mono一起运行'.

有没有人有这个真正的世界经验?一个很好的链接参考?在我承诺测试之前,我想得到一个更好的主意.

谢谢!



1> postfuturist..:

WinForms部分很简单,你可能不得不做很少,因为Mono现在声称支持Winforms 100%,但是所有DirectSound调用都必须重写以使用Linux上可用的API,ALSA是显而易见的选择.

我在VS 2005中编写了小应用程序,并轻松地将它们移植到Mono.如果你做了很多P/Invokes,那么你必须考虑到这一点,因为这些可能必须被完全重写或重新考虑.

另外,请查看MOMA:"Mono迁移分析器(MoMA)工具可帮助您识别将.Net应用程序移植到Mono时可能遇到的问题.它有助于查明特定于平台的调用(P/Invoke)和尚未支持的区域Mono项目."



2> miguel.de.ic..:

Mono可以帮助您移动托管代码,但它不会帮助您移动音频层.

遗憾的是,.NET框架没有为音频处理提供全面的API.它只是提供了一种播放小型声音样本的方法,它甚至都不是很好(参见Jeroen关于在IKVM下运行C64仿真器时的音频间隙的帖子).

您将不得不研究哪个Linux API最适合您的音频应用程序正在执行的操作.

Lennart关于音频的Poettering博客条目是一个很好的起点:

http://0pointer.de/blog/projects/guide-to-sound-apis.html

一旦决定了API,就像在Windows中一样,您将不得不P/Invoke适合您的API.

推荐阅读
家具销售_903
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有