QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 14153|回复: 3
打印 上一主题 下一主题

[其他资源] matlab生成exe文件(总结)

[复制链接]
字体大小: 正常 放大
我能 实名认证    中国数模人才认证   

24

主题

8

听众

2291

积分

升级  9.7%

  • TA的每日心情
    慵懒
    2023-4-27 19:48
  • 签到天数: 321 天

    [LV.8]以坛为家I

    社区QQ达人

    群组: 中国矿业大学数模培训

    群组: 数学建模培训课堂2

    群组: 2011年第一期数学建模

    群组: 学术交流B

    跳转到指定楼层
    1#
    发表于 2012-11-2 13:08 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    matlab功能相当的强大,写好了m文件但是其他很多电脑没有安装matalb,不能运行,所以我们想找到生成exe的可执行文件,我么就想到了和c语言c++进行混合编程,在windows下生成exe文件,matlab和vs等的文章很少大都是那几个 ,我自己在网上找了些东西总结了下:1 B. s3 [- e$ }! U
    / b6 p0 a# g$ J& G" w8 z
    1.Matlab环境设置
    要建立独立运行的C应用程序,系统中需要安装Matlab、Matlab编译器、C/C++编译器以及Matlab C/C++数学库函数和图形库函数。+ S+ C$ k2 X7 C+ E0 }* e
    Matlab编译器使用mbuild命令可以直接将C/C++源代码编译为独立运行程序,在这些源代码中可以使用Matlab提供的接口来调用Matlab数学库函数。
    - E$ j8 I6 e+ m8 M+ _$ f' w
    虽然生成的可执行程序可以脱离Matlab环境运行,但是它需要Matlab C/C++数学库文件或者图形库文件的支持才能运行。但如果C/C++源代码完全是按传统C/C++源代码语法规则编写,没有包含Matlab数学库和图形库的调用,则不仅可以独立与Matlab环境,也不需要那两个库函数的支持。
    在 Matlab 的Command Window 下输入命令
    mbuild – setup
    操作过程如下图:
                                  
    然后输入命令
    mex – setup
    以类似的方法配置编译器。Matlab 的配置完成。
    2.VS环境设置
    (1)设置Include 和Library 目录
    项目右键->属性->VC++目录->包含目录:添加
    <MATLAB>\R2010b\extern\include\win64
    <MATLAB>\R2010b\extern\include\
    项目右键->属性->VC++目录->库目录:添加
    <MATLAB>\R2010b\extern\lib\win32\microsoft
    <MATLAB>\R2010b\extern\lib\win64\microsoft
    截图(部分):
    (2)设置工程目录
    项目右键->属性->C/C++->常规->附件包含目录:添加
    <MATLAB>\R2010b\extern\include\win64
    <MATLAB>\R2010b\extern\include\
    项目右键->属性->链接器->常规:添加
    <MATLAB>\R2010b\extern\lib\win32\microsoft
    <MATLAB>\R2010b\extern\lib\win64\microsoft
    项目右键->属性->链接器->输入->附件依赖性:添加
    libeng.lib
    ' u2 j2 r, A9 L1 K: Mlibmat.lib8 v% K0 h* y' r; \! q$ n
    libmex.lib
    % r0 ]. E& \7 s7 |0 J( G) tlibmx.lib
      
    注:1.lib文件包含在<MATLAB>\R2010b\extern\lib\win64\microsoft,可根据需要增减
    2.附件依赖性在VS2010前以空格隔开,在VS2010后使用;隔开。
    截图:
    项目右键->属性->链接器->高级->目标计算机:更改(只针对64位WINDOWS)
    MachineX86 -> MachineX64
    注:分析原因为MATLAB根据计算机平台选择了X64编译环境,如此处不修改会出现 错误3
    (3)配置管理器设置(只针对64位WINDOWS)
    生成->配置管理器->平台:更改
    Win32->X64
    注:分析原因为配合链接器中目标计算机的修改,如此处不修改会出现 错误4
    截图:
    3.系统(Windows)环境设置
    我的电脑->属性->高级系统设置->高级->环境变量->Path,添加:
    <MATLAB>\R2010b\bin;<MATLAB>\R2010b\extern\lib\win64\microsoft;<MATLAB>\bin\win64
    注:1.Windows7的情况下,“用户变量”和“系统
    变量”都需 添加,如不添加,运行时会出现 错误5
    2.哈哈,别忘记重启哈,重启后生效
    OK!配置就此结束,现在就开始engOpen吧!!对了,别忘记添加#include "engine.h"。
    + G5 l. A3 ~! W& n! d7 u, ~  R
      
    - m* @/ {; I, t9 _, m; C! `% a1.设置编译器:0 y  N: R) w, k* E: V8 a+ O; x
    在确定安装好Matlab Compiler后,还需要对Compiler进行适当的配置,方法是在Matlab命令窗口输入:* n/ a1 p% o# u' B6 h3 _& V
    Mbuild –setup, 按提示选择matlab自带编译器LCC。
    ' c' g: r0 \) a# r$ w! ~* m4 D  ]
    3 v6 n* J9 L) i7 E) N2.将脚本编译为可执行文件:( T2 p( \* \9 @) T% v! O: }
    如项目文件包含:gui.m, gui.gif, fun1.m。) b1 I* h5 N; B# E% w- X# T
    % d3 d& y. Y/ J
    在此路径下命令行输入:mcc –m gui.m,生 成:mccExcludedFiles.log,ReadMe.txt,gui.ctf,gui.prj,gui_main.c,gui_mcc_component_data.c,gui.exe。其中:gui.ctf,gui.exe为脱离matlab环境运行必需的文件。3 \5 R/ A& ]0 m' c
    / v7 s9 P* N) j. f
    3.在未安装matlab的机器上运行可执行程序。# o' c" I4 w4 a( f; ^3 G
    将R22007b\toolbox\compiler\deploy\win32中的MCRinstaller.exe安装到该计算机上,将生成可执行程序脱离matlab运行所需的函数库。1 S: |9 f* E4 J! p+ {2 a' Q
    将2中生成的gui.ctf,gui.exe拷贝到该计算机同一路径。运行gui.exe将生成gui_mcr文件夹,包含程序运行所需的库。至此完成。
    - O! P, v9 J8 J/ t3 }; ~+ ?2 Z' ?: a$ ]3 w
    4.去除独立可执行程序运行时的“DOS黑窗口”。
    2 }7 [% s% ^8 K* ^4 t/ W9 K以上生成的exe程序运行时首先弹出一个DOS界面窗口,如果不需要其输出数据和错误信息,可将其去除。& U& r" {+ c' l6 H6 G% M

    - X4 W/ a* k2 Rmatlba命令行输入:
    ) o) Y" @" S# R# z: F
    8 {* v% ^! W6 Scd(prefdir)
    : [4 }/ f" ?: M0 [1 J( Oedit compopts.bat
    7 w: ?0 F4 A& W' `) D4 J8 C6 V; R/ P7 t' a1 x
    此时compopts.bat打开,在文件最后添加:
    1 m2 J2 N5 c1 Z$ u! J
    ! x3 ~: V# t; \+ n) W7 m/ @  Pset LINKFLAGS=%LINKFLAGS% -subsystem windows
    / B3 j- A0 F( W- y2 k3 c& I! H/ a) R1 I
    如果程序比较复杂,易出现异常,则不建议去除这个dos窗口以便调试。
    2 V1 G8 q2 c& _+ n/ h6 T9 W$ `/ r
    ; Q. N  v) q3 Q* e" \/ g' ?" n另外,这个办法是适用于你用的编译器为LCC,如果是其他的,那么所加语句有所不同; q- n+ V% Y3 R# n- j

    7 Q) ^5 D- S5 e3 D4 [  rMicrosoft Visual C/C++:
    " e( Z2 |4 {# e  e5 {, D6 ^1 z
    set LINKFLAGS=%LINKFLAGS% /SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup
    8 q( e% O9 b5 k4 {/ z' u. o( j' Y$ v" U# L# ?+ V
    Borland:# q7 G1 Q; U- ~5 {. H# H
    5 Q5 E4 ?1 @" z
    set LINKFLAGS=%LINKFLAGS% -aa5 D) m8 |& V  i
    ———————————————————————————————————————–: _" x- K, N' \0 s  A5 P5 S
    / B! F' ?% k: y5 r: m9 N* e
    方法一:+ Z7 V4 \0 Q" ~
    已有gui.m文件和gui.fig文件2 q8 c2 U$ r2 J3 s
    1 在matlab的command窗口中输入
    " z9 v( R9 f% G$ C; m" i' b) Amcc -B sgl GUI.m
    8 C& z  ~. ^/ ?3 o# u6 M2.将上步生成的文件包括*m 文件和*.fig文件一起考到待运行的机器) [2 a) ^$ b0 H5 _+ o
    " L8 {& a' b7 l1 z& m; y
    此时仍需matlab所必需的动态连接库。
    / ?  Q; X1 }# u: w' t0 S) W- ?3. 将 /extern/lib/win32/mglinstallar.exel拷贝到到待运行机器上
    / E, _( Y' ?6 o  S4.在机器上先运行mglinstallar.exe, 然后选择解压目录,将在将在指定目录下解压缩出bin和toolbox两个子目录,
    1 f% [, |# [; X( m9 l$ z其中在bin\win32目录下就是数学库和图形库脱离MATLAB运行所需的所有动态连接库,共
    6 Y+ z2 r, \- l9 g4 {) w& |有37个。可以将这些.dll考入system32, 也可以直接放在应用程序目录下。
    4 ^$ t: w8 `9 V: u而toolbox目录则必须与应用程序同一目录。/ E0 m5 ^$ D0 D% m" J) H
    3 e( V( i0 |" }5 c
    方法二:$ Z' C, K7 i2 k  r6 b

    $ \5 b* `% p3 G! Gmatlab编程很方便,强大的矩阵运算功能,很多好用的工具箱,但是一般程序都要在matlab环境中运行,能否脱离这个环境打包发布呢,matlab 也提供了这样的工具。
    + h0 C- J0 L, Z6 R
    % G; V: O) r" _5 w1. 转化为c/c++程序并编译为.exe
    ) B/ }  b. k1 {1 C1 m: ^- x9 Z先验证mcc是否可用,用matlab中的example验证即可# R# O" l+ Y2 f
    建议不用matlab默认的lcc 编译器(可能有问题),可使用VC6编译器(按默认路径安装)
    * R/ b  n' ]% ^; o! {+ s由于带有界面,需要图像库支持,编译时应使用命令: mcc -B sglcpp pressure' b/ F* K. k" D
    编译生成若干c/c++源码,以及.exe文件、bin目录中figure菜单条/工具条文件(.fig)等4 l1 |5 V5 ?% ^' j5 @
    程序发布需要.exe、bin\、.fig
    * k+ p2 n! d. m" e4 }& W8 f- K& t$ W" x5 S0 T% {7 L6 }) D8 _5 v4 J
    2. 在未装matlab的电脑上运行程序需要数学运行时库、图像运行时库以及用到的工具箱mex文件
    / O$ d( M/ `& g前两者已经在\matlab\extern\lib\win32mglinstaller.exe压缩包中,将其解压,并在环境变量path中添加解压到的路径
    * b3 \1 C. z( `5 j另外若程序中还用到其他工具箱的东西,那么需要将此工具箱中需要的mex文件也一并放在解压到的路径,子文件夹位置与matlab中的位置相同2 m7 e5 [  J$ |  m$ V$ e7 d
    8 x7 S4 a* X# E$ o7 ?
    3. 在确保.exe程序可以运行的情况下 可以用setup factory打包发布
    : a  Y. ]" f' W  |6 x以下通过注册表自动添加path路径! P. }! O, R% {
    %————————————————————————————–
    $ l0 z/ `5 I3 M/ D' P+ \1 O( rScreen.Next(); — 进入下一个屏幕
    ( Y1 ~7 M) C" x: s5 t; A6 h, vresultDialog = Dialog.Message(“注意”, “向环境变量中加入matlab数学库及图象库的安装路径?”, MB_YESNO, MB_ICONINFORMATION, MB_DEFBUTTON1);
    . s+ E0 |4 o' \if (resultDialog == IDYES) then –加入安装路径8 L/ O( m9 Q" ?0 J: P" g8 W5 ?
    strPath = Registry.GetValue(HKEY_CURRENT_USER, “Environment”, “path”, true);
    4 E- G( z* W  d8 W7 N$ E if strPath ~= “” then
    + K1 D! I! \  ?. M, \1 p strPath = String.Concat(strPath, “;”);
    ; w- d9 }5 C! k: R. [: ]( O7 H( ^end
    ; E2 n  b9 Q4 _" G strPathToAdd = SessionVar.Expand(“%AppFolder%”);
    % |  m, z/ e0 \1 gstrPathToAdd = String.Concat(strPathToAdd,”file://MATLAB6p5//bin//win32″);9 U1 A9 `( k- V5 S# V" A7 n
    — 如果路径中无该位置,则加入
    1 l3 [( P5 x) ^' r2 t2 v/ bif String.Find(strPath,strPathToAdd) == -1 then
      }* g) R3 |5 x strPath = String.Concat(strPath, strPathToAdd);
    9 s# a* Q/ g; k& m( ^% G Registry.SetValue(HKEY_CURRENT_USER, “Environment”, “path”, strPath, REG_SZ);/ l6 }4 {7 P" k
    end
    2 P0 r2 {4 M6 ?7 Fend
    . G, Q0 G. G1 B. l- ^. W& M$ y%————————————————————————————–
    # R3 p8 w* V8 I方法三:0 p1 [1 ?8 C5 A6 t
    在网上搜了一个方法,还没有用过, 贴在这里仅供参考:$ f9 z% B6 E) o6 N/ A
    一、 完全可以,而且生成的.exe文件可以在没有安装matlab的机器上使用,方法吗---0 J1 J2 l- c+ Q  U6 O+ x1 m+ K# X
    首先,使用mcc编译得到.exe文件,具体参数见帮助文件;
    9 q* o6 `9 W5 H6 i( q& C4 _# Z其次,将.exe文件及相关资源文件以及一个称为mglinstaller.exe的软件包一起拷到别的机器上,运行mglinstaller.exe,并添加环境变量path,即可执行.exe文件) @6 t1 B! ~% }
    第三,在MATLAB环境,执行命令
    0 f3 ]/ O) q8 C4 o  [) ?; i* |$ Vmcc -m -B sgl file.m
    3 R* t" p; t3 Y- z3 y4 h* K! h或者 mcc -p -B sglcpp file.m
    % A1 U% p4 S2 ?7 T3 I: D请键入help mcc看帮助。' g. n% q0 |+ ^2 ^
    mcc是在“command windows” 用的吗?
    7 \5 V/ G5 r2 i. S" Y" w只要“mglinstaller.exe”,与.exe文件及相关资源文件就可以了吗.
    & d% J& ?0 V1 G: ]还有“添加环境变量path”是path到.exe文件的环境中是吧?
    * f1 {  h; x4 \) x+ J& [4 @' j4 E+ J7 n" h
    二、 在matlab下的workspace里打comtool,点file-open project将我们先前建好的 comtest.cbl工程文件打开,再点component–package component就实现了打包,此时到 comtest\distrib文件夹里看,生成的comtest.exe就是打包后的解压程序,双击它会解压出一些文件,再点击解压出来的 _install.bat就可以实现安装
    6 C6 O. z+ g$ Z& H三、 如何将gui生成exe ?% Q$ r5 z3 X; a" }" b3 k
    已有gui.m文件和gui.fig文件# L% f9 L# M! K( G" T
    1 在matlab的command窗口中输入3 L& v0 w0 ~: k+ }4 {1 U+ f
    mcc -B sgl GUI.m3 [) r5 U9 f: k, p$ s% ]9 V$ ]' k
    2.将上步生成的文件包括*m 文件和*.fig文件一起考到待运行的机器$ \/ T7 C6 ?" Q4 a5 w
    此时仍需matlab所必需的动态连接库。
    4 G+ L2 u% j7 t4 I4 D5 s, f5 h& h7 J3. 将 /extern/lib/win32 /mglinstallar.exel拷贝到到待运行机器上+ V% e* L; |7 Q+ }! o
    4.在机器上先运行mglinstallar.exe, 然后选择解压目录,将在指定目录下解压缩出bin和toolbox两子目录,其中在 bin\win32目录下就是数学库和图形库脱离MATLAB运行所需的所有动态连接库,共有37个。可以将这些.dll考入system32, 也可以直接放在应用程序目录下。而toolbox目录则必须与应用程序同一目录。% {" ]. n( }0 L; O/ f
    5.大功告成。 1 q* T- P# z/ ?6 T) z% z4 ]
    - x; K. \/ {9 I/ J- Y5 K
    外一篇:MATLAB M文件变exe文件
    , K/ n. |6 D" ^0 J; L我也是最近才搞定的这个问题,按下述步骤进行,就没有问题,我已经运行成功,但是遇到你程序的bug的话,便会出现错误,关闭整个程序
    6 T. Q" k6 Y7 g, M" i& H( W希望这些对你有用& k+ h- H; T7 J* [! ^  A$ L; F( y
    8 r( q0 Q1 I3 K( y7 |
    如何将MATLAB程序编译成独立可执行的程序?如何将编译好的独立可执行程序发布在没有安装MATLAB的电脑上?下面将一步步实现:1 \6 z+ [5 I3 j( i
    * N& c4 _3 q( p) H! |: a
    一、生成独立可执行的程序(exe文件)步骤+ s& T. `, }0 S1 _% j% v1 }
    9 Y  J' U" P1 I0 y/ g) k
    1、安装编译器。可有多种选择,matlab自带了一个LCC,推荐使用VC++6.0,我基于VS 2003实现。
    % U" V2 x( {6 o/ P2、设置编译器。在matlab命令行输入mbuild –setup以及mex –setup,选择安装的c编译器。, G2 l! x" e8 j
    3、调用编译器。此处使用MATLAB下的一个GUI平台deploytool下完全实现。在命令窗口输入deploytool即可看到。具体使用方法请Help。1 n( ]. f- N7 O. d5 `2 R
    当然,也可以输入mcc -m filaname, filaname为要转成exe的m文件;
    , [- _6 d& m2 H- k% L; q1 F注:在以前的版本中,用编译命令mcc -B sglcpp filaname;自2006的版本后,替换为mcc -mfilaname;5 K3 X2 v& e9 ?, ~: E+ J& D
    4、安装\toolbox\compiler\deploy\win32目录下的MCRInstaller。% f$ e: g( X$ [* k0 X/ [* N  A' y; m
    , Q$ \1 {8 c6 k7 F( V& W/ Q
    二、脱离matlab运行可执行程序0 R. _7 P1 V3 w5 W. y8 ~( w/ Y: O
    MCR是由matlab的运行环境,占用不到300M的对于用不同matlab版本生成的exe文件,MCR版本也会有不同,因此,在程序打包时,最好将相应版本的MCR一起打包。MCR环境的设置文件存放目录如下:+ ]7 i' X% m5 b0 ]; {
    \toolbox\compiler\deploy\win322 W% c$ z0 t5 m  L; m& I: Z3 L
    文件名为MCRInstaller.exe。可将其拷贝到自己的文件夹中,(7.0以前的版本是mglinstaller.exe)。4 @: ~& L$ |# t
    在MATLAB里运行可执行程序的办法是在前面加一个!,比如:!picshow,后缀名可有可无。2 u1 o5 Z- @* s2 p9 d
    在其它没有安装matlab的机器上运行exe文件前:4 h% V3 Q% ?$ ?* o
    首先安装matlab的运行环境。在同一机器上可以并存不同版本的matlab环境(换句话说不同版本不兼容)。
    1 t  P& F0 Y' m6 G# I其次是要将“MCRinstaller.exe安装目录\runtime\win32”这个路径添加到该计算机的环境变量中,通常是自动加载。
    ! Z% X. U8 o' J' Y# ^如果没有,也可手动安装,添加的方法是:
    4 [, P; U# V3 d: r2 i$ {右击“我的电脑”“属性”“高级”“环境变量”“添加”指定一个变量名,然后将上述路径复制到里面就可以了。
    ! F' x+ h+ X5 s9 {: ?注:在安装过程中会弹出让安装Microsoft.NETFramework可以不用安装。% ]2 k5 R% \& x5 m! C7 w
    最后就是将编译生成的相相关文件拷贝到同一目录下,双击即可运行。# z3 ?& v$ B! H& z! ~9 z
    问题:目前此方法可完全运行在没有安装MATLAB以及C/C++的电脑上,但是如果是在AMD的CPU可以运行,但是不会出现任何MATLAB编译的界面。3 H- @. x' ~" V4 i+ W$ E- n( Z* Y- Q
    美中不足就是,运行的时候dos的那个黑色地窗口一直存在。下面将实现去除黑屏的办法:9 F+ x0 T' G# o9 H( f

    " [7 k3 _- I, @5 [6 c' p消除运行MATLAB生成的exe程序的dos黑屏的办法
    . @9 n  G# b1 |基于MATLAB生成exe文件后,每次运行都存在dos黑屏的问题,现在可以通过以下方法解决:
    % y0 N/ B$ n. f) Z# G方法一: 在命令窗口输入:4 _2 @! T" ]  |% x6 h$ t/ M
    cd(prefdir)
    ! T$ ^$ a+ c( N0 k4 q7 a/ ledit compopts.bat& ?2 \* [7 x3 C! ]) o
    在打开的文件最后添加以下语句:& x7 @6 h! F6 [

    / |) m5 o# o. _& F  K& Y6 RA.VC环境下:5 I: ?& n6 h0 {' {! C
    7 [: Y0 S3 W5 e5 ^9 P- S
    set LINKFLAGS=%LINKFLAGS%/SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup % D: @/ i) Z4 I9 C! U

    ' ]; A0 O8 [# XB.LCC环境下:
    % f* K$ |6 S% Eset LINKFLAGS=%LINKFLAGS% -subsystemwindows 1 v7 J9 `9 H# ]+ i# `  d7 Q! c

      _% M2 i! ~3 {1 YC. Borland:8 O, m4 u. j2 a' D
    set LINKFLAGS=%LINKFLAGS% -aa
    / F6 V: u/ l! F/ e' N- ?. M
    , q. ^) [8 y; z& I4 J保存以后,再重新编译m文件,生成的exe文件运行起来就没有dos窗口了
    ; S+ Y% k: p! J2 v# J& n* J8 Z$ X6 L2 C- P
    方法二:使用suppress工具:
    ' l; M5 {1 W! _7 a+ N% j下载附件中的suppress压缩包后解压,(当然您可以自己去Google然后再下载)会看到一个suppress.ini文件,用记事本打开,然后将 其中“Name=test.exe”中text.exe的改为你生成的exe文件名。将suppress.exe(有个关盘和显示器的图标),改后的 suppress.ini放到你生成的exe的同目录下。执行suppress.exe或者您自己生成的exe可以了。当然您可以自己修改 suppress.exe的名字,改为您自己想要的名字。
    8 x0 y: U0 e% D& B' T( Z; O3 m6 M# e" H3 o% c% B
    其中的方法一在使用后生成的exe再到没有任何安装MATLAB的机子上运行也不会有黑屏了。: |& V$ C( C+ t' S, o6 i  @
    方法二的缺点就是要同时存在您生成的exe以及supress.exe,必须在同一目录下。3 {/ Y1 y3 ]" l, O- D5 h
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

    2

    主题

    6

    听众

    117

    积分

    升级  8.5%

  • TA的每日心情
    开心
    2013-9-18 23:25
  • 签到天数: 53 天

    [LV.5]常住居民I

    群组: Matlab讨论组

    群组: 2013认证赛A题讨论群组

    群组: 数学建模

    回复

    使用道具 举报

    15

    主题

    10

    听众

    799

    积分

    升级  49.75%

  • TA的每日心情
    开心
    2015-7-17 20:50
  • 签到天数: 68 天

    [LV.6]常住居民II

    自我介绍
    我是一名大二学生。

    群组: 2013年国赛赛前培训

    回复

    使用道具 举报

    eagle1208 实名认证       

    1

    主题

    4

    听众

    25

    积分

    升级  21.05%

  • TA的每日心情
    开心
    2014-1-10 19:20
  • 签到天数: 5 天

    [LV.2]偶尔看看I

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-10-27 14:47 , Processed in 4.200976 second(s), 71 queries .

    回顶部