关于GPL反射调用的问题

微笑者 发布于 2012/04/07 16:25
阅读 220
收藏 0

老大,我准备发布一个商业软件,一个ORM需要能够使用mysql,但是mysql的驱动是GPL的,我是否可以通过反射的方式在内部实现其调用,由用户根据配置文件去加载mysql驱动.

<add key="dbType" value="MYSQL" />

        <add key="MYSQL_PATH" value="c:\MySql.Data.dll" />


如:

public override System.Data.Common.DbCommand GetDbCommand(string cmdString)
        {
            DbConnection conn=GetDbConnection();
            Type MyAppType=_assembly.GetType("MySql.Data.MySqlClient.MySqlCommand");
            Type[] types = new Type[2];
            types[0] = typeof(string);
            types[1] = conn.GetType();
            ConstructorInfo constructor=MyAppType.GetConstructor(types);
            object app=constructor.Invoke(new object[]{cmdString,conn});
            return (DbCommand)app;
        }

加载中
0
红薯
红薯

别的软件的做法是不包含mysql的驱动,让用户自己去下载mysql驱动然后扔到项目里头,只需要在配置中提供mysql的配置方法即可。

这样就不会牵扯 GPL 的问题

红薯
红薯
就是告诉用户怎么用,但不要包含mysql的软件包
微笑者
微笑者
只需要在配置中提供mysql的配置方法即可。 什么意思?
返回顶部
顶部