标签: mono

如何在Windows中为Visual Studio项目创建Debian安装包?

我正在Visual Studio下开发一些针对Mono的跨平台软件,并且希望能够通过单击按钮来构建Windows和Linux(特别是Ubuntu)的安装程序.我想我可以通过从后期构建事件中调用cygwin来做到这一点,但我希望充其量只是一个Visual Studio插件,或者更糟糕的是更多的Windows本地方式.看起来封装格式相当简单,这必须是常见的需求.

编辑:由于重复登录问题,在其他帐户下重新提问.

windows mono cross-platform visual-studio

19
推荐指数
3
解决办法
3922
查看次数

如何以便携方式在C#中播放压缩声音文件?

是否有一种可移植的,而非专利限制的方式来播放C#/ .Net中的压缩声音文件?我想在节目中发生的各种事件上播放短暂的"叮当"声.

System.Media.SoundPlayer只能处理WAV,但这些通常很大,可嵌入到可下载的应用程序中.MP3受专利保护,因此即使有完全管理的解码器/播放器,它也不能自由重新分配.可用的最佳格式似乎是OGG Vorbis,但我没有运气让任何C#Vorbis库工作(我设法用csvorbis提取原始PCM,但我不知道如何在之后播放它).

我既不想用我的应用程序分发任何二进制文件,也不想依赖于P/Invoke,因为该项目至少应该在Windows和Linux上运行.只要它们与GPL许可兼容,我就可以捆绑.Net程序集.

[这个问题是对一年前mono-dev邮件列表邮件列表讨论的跟进]

.net c# audio mono oggvorbis

19
推荐指数
1
解决办法
9050
查看次数

iPhone上的单声道?

Mono已被移植到iPhone了吗?我喜欢为iPhone编写.NET应用程序,而且学习Objective C对我来说不是一个选择.

.net iphone clr mono

19
推荐指数
4
解决办法
1万
查看次数

如何使用MONO进行线程转储?

如何在与MONO一起运行的挂起应用程序中显示线程(stacktraces)?

我知道我可以使用Managed Stack Explorer(MSE)在.NET中完成它.因为应用程序仅与MONO挂起,我需要使用MONO.

或者还有其他想法如何找到悬挂的地方?

.net mono stack-trace thread-dump

19
推荐指数
1
解决办法
3573
查看次数

DbProviderFactory与Npgsql?

我有一个项目,我正在尝试从SQL Server移植到PostgreSQL.除了我无法DbProviderFactory使用Npgsql 之外,我几乎已经完成了所有工作.

Factory = DbProviderFactories.GetFactory("Npgsql");
Run Code Online (Sandbox Code Playgroud)

产量

未处理的异常:System.Configuration.ConfigurationErrorsException:无法找到或加载已注册的.Net Framework数据提供程序.

我该如何解决?

.net postgresql mono dbproviderfactories

19
推荐指数
2
解决办法
1万
查看次数

Mono.Cecil TypeReference to Type?

反正有没有从Mono.Cecil的TypeReference转到Type?

c# mono mono.cecil

19
推荐指数
1
解决办法
7147
查看次数

MonoTouch:Frame.Origin在哪里?

我正在尝试将Objective-C中的这个居中代码片段转换为MonoTouch

imageView.frame.origin.x = CGRectGetMidX(view.bounds) - 
            CGRectGetMidX(imageView.bounds)
Run Code Online (Sandbox Code Playgroud)

但找不到哪里Origin.

c# mono xamarin.ios ios cgrect

19
推荐指数
1
解决办法
4805
查看次数

Mono vhost配置错误:地址已在使用中

每次我启动apache时,我的apache错误日志中都有三个不同的错误消息.我已多次阅读mod_mono配置部分,所以请给我一个提示如何摆脱这些消息.应用程序(3个asp.net项目)运行正常.

第一:

Listening on: /tmp/mod_mono_server_global
Root directory: /
Error: Address already in use
Run Code Online (Sandbox Code Playgroud)

第二:

Error: There's already a server listening on /tmp/mod_mono_server_global
Run Code Online (Sandbox Code Playgroud)

第三:

Listening on: /tmp/mod_mono_server_example.com
Root directory: /srv/www/vhosts/example.com
Error: There's already a server listening on /tmp/mod_mono_server_example.com
Run Code Online (Sandbox Code Playgroud)

vhost配置

MonoServerPath example.com "/usr/bin/mod-mono-server4"
MonoDebug example.com false
MonoSetEnv example.com MONO_IOMAP=all

MonoApplications example.com "/:/srv/www/vhosts/example.com"

 <Directory "/srv/www/vhosts/example.com">
     MonoSetServerAlias example.com
     SetHandler mono
 </Directory>
Run Code Online (Sandbox Code Playgroud)

OpenSuse 11.4,Mono 2.10.2

apache asp.net mono mod-mono

19
推荐指数
1
解决办法
2033
查看次数

如何正确检测Windows,Linux和Mac操作系统

我找不到任何真正有效的方法来正确检测我的C#progrma运行的平台(Windows/Linux/Mac),特别是在返回Unix的Mac上,并且几乎不能与Linux平台区别开来!

因此,基于Mac的特性,我做了一些不太理论化,更实用的东西.

我发布了工作代码作为答案.请评论它是否适合您/可以改进.

谢谢 !

回应:

这是工作代码!

    public enum Platform
    {
        Windows,
        Linux,
        Mac
    }

    public static Platform RunningPlatform()
    {
        switch (Environment.OSVersion.Platform)
        {
            case PlatformID.Unix:
                // Well, there are chances MacOSX is reported as Unix instead of MacOSX.
                // Instead of platform check, we'll do a feature checks (Mac specific root folders)
                if (Directory.Exists("/Applications")
                    & Directory.Exists("/System")
                    & Directory.Exists("/Users")
                    & Directory.Exists("/Volumes"))
                    return Platform.Mac;
                else
                    return Platform.Linux;

            case PlatformID.MacOSX:
                return Platform.Mac;

            default:
                return Platform.Windows;
        }
    }
Run Code Online (Sandbox Code Playgroud)

c# macos mono cross-platform

19
推荐指数
2
解决办法
1万
查看次数

在Unity 5中使用.NET 4.5代码

我正在使用Unity3D版本5开发游戏.游戏应该使用已经在C#.NET4.5引擎中编程的严格业务规则.使用Xamarin/Mono,我们希望在Windows,Android,其他方面使其可用...

我尝试将引擎构建到dll中,并将其用作Unity中的托管插件.但Unity使用旧版Mono来编译整个游戏并拒绝使用.NET 4.5 dll.

我真的需要使用这个代码,我考虑将它降级到.NET 3.5,但鉴于已经在引擎上完成的工作,它不是一个可接受的解决方案.

关于android,我认为使用Xamarin获取原生的android代码并将其用作Unity中的本机插件.现在我需要Windows的解决方案.我正在研究如何使用C++中的C#代码来创建一个非托管的DLL,但我很难理解COM interop,C++/CLI或其他方法之间适用的方式.

有没有人知道如何在Unity中包含来自.NET 4.5的代码而没有/只需要很少的努力?

.net c# mono unity-game-engine

19
推荐指数
3
解决办法
4万
查看次数