QQ登录

只需要一步,快速开始

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

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

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

24

主题

8

听众

2286

积分

升级  9.53%

  • 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等的文章很少大都是那几个 ,我自己在网上找了些东西总结了下:
    & W7 A. b9 n: g0 Z9 \+ B+ F; Z" }; B+ C
    1.Matlab环境设置
    要建立独立运行的C应用程序,系统中需要安装MatlabMatlab编译器、C/C++编译器以及Matlab C/C++数学库函数和图形库函数。& F, ?, w9 h. U' Z2 a3 y5 V2 W
    Matlab编译器使用mbuild命令可以直接将C/C++源代码编译为独立运行程序,在这些源代码中可以使用Matlab提供的接口来调用Matlab数学库函数。
    / t+ A* c" i* K' _2 {' t& I8 S
    虽然生成的可执行程序可以脱离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.lib4 p' i5 \, w) V- N/ Z% [: B
    libmat.lib
    " ^+ u# s, w7 v* F: `; _libmex.lib/ T$ K1 H$ s: z" H5 Y$ O
    libmx.lib
      
    注:1.lib文件包含在<MATLAB>\R2010b\extern\lib\win64\microsoft,可根据需要增减
    2.附件依赖性在VS2010前以空格隔开,在VS2010后使用;隔开。
    截图:
    项目右键->属性->链接器->高级->目标计算机:更改(只针对64WINDOWS
    MachineX86 -> MachineX64
    注:分析原因为MATLAB根据计算机平台选择了X64编译环境,如此处不修改会出现 错误3
    3)配置管理器设置(只针对64WINDOWS
    生成->配置管理器->平台:更改
    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"

    & G9 X- \7 X" u  
    4 N  u, _1 e! r; X; q1.设置编译器:! C' @$ W- T  p
    在确定安装好Matlab Compiler后,还需要对Compiler进行适当的配置,方法是在Matlab命令窗口输入:
    3 C! A& ^  y$ q" x. w9 r$ r/ cMbuild –setup, 按提示选择matlab自带编译器LCC。9 Y$ h( L8 D, Q( T* p) V

    2 V% u6 v) \7 L  A5 ^3 ]  i2.将脚本编译为可执行文件:7 ?1 i1 J% ?6 t: m& {9 i
    如项目文件包含:gui.m, gui.gif, fun1.m。
    + g: L( g5 m' h5 P1 G0 o7 d2 {3 N9 ?2 A2 g+ b
    在此路径下命令行输入: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环境运行必需的文件。  O! s  M8 x3 w+ P7 e: s4 v( p  W

    & g& z7 J) B  I: b' h/ f( V% \$ n3.在未安装matlab的机器上运行可执行程序。) J! H& u- S7 x. l+ b0 J1 S; Y
    将R22007b\toolbox\compiler\deploy\win32中的MCRinstaller.exe安装到该计算机上,将生成可执行程序脱离matlab运行所需的函数库。
    ) P" p/ y/ @; M$ V9 R  h将2中生成的gui.ctf,gui.exe拷贝到该计算机同一路径。运行gui.exe将生成gui_mcr文件夹,包含程序运行所需的库。至此完成。8 [* |4 |. x5 x2 `) g

    7 s$ T: y2 m5 @0 ]# W, w4.去除独立可执行程序运行时的“DOS黑窗口”。
    * w- v" |/ Z: ]0 w' k& Y; F2 m0 l以上生成的exe程序运行时首先弹出一个DOS界面窗口,如果不需要其输出数据和错误信息,可将其去除。
    9 k8 ^7 E% o+ K1 x! k& q, T" E/ c  K0 Z# q% J- S. R/ U
    matlba命令行输入:. K- M7 o  ]8 g7 G! p2 `% V
    + N4 G. w" s, H# K" O* z! d9 Q
    cd(prefdir)
    6 p' f1 H0 Z. t! H* j* Ledit compopts.bat% ~6 M, O& G3 x: i. w$ B

    : i# G8 I" a+ ~, M此时compopts.bat打开,在文件最后添加:& C9 B- ~1 @2 g: y0 g8 g- u
    + o% J  M) E1 f( W, w
    set LINKFLAGS=%LINKFLAGS% -subsystem windows
    ; e' Y2 ]- E  t& l5 ~2 u& Z
    ( p% a! I8 P/ G4 q' B" v5 O( w) E如果程序比较复杂,易出现异常,则不建议去除这个dos窗口以便调试。
    ! J' e& m0 H$ b  u- `1 p9 {- f7 a& I/ A' a+ w
    另外,这个办法是适用于你用的编译器为LCC,如果是其他的,那么所加语句有所不同
    * x1 `5 G: W' V. b
    / ~2 n2 y5 y8 }Microsoft Visual C/C++:
    . u( c! Y9 H$ }* r* m( S: e
    , ~7 ?, V" K( n- n+ Iset LINKFLAGS=%LINKFLAGS% /SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup& P$ U0 ]5 P% Z0 L# g- U

    0 b- C6 i- f6 m5 PBorland:8 R$ t7 }: M/ f4 O5 w

      M& z& A- Q6 U7 k3 Zset LINKFLAGS=%LINKFLAGS% -aa- X0 P6 k) I, [. D) l
    ———————————————————————————————————————–1 `4 ~+ ^& v" m3 M7 {; W1 ~: U) @
    7 U2 D" G3 s# O. b8 C* K. [
    方法一:' k) L+ s  B4 S# X# Q
    已有gui.m文件和gui.fig文件
    + |3 f' @% Q$ Y- l0 Y' I- s1 在matlab的command窗口中输入
    5 v: m7 X7 i. n/ B0 j1 Ymcc -B sgl GUI.m' `% g0 ?# X. \/ x/ j  n' b% m
    2.将上步生成的文件包括*m 文件和*.fig文件一起考到待运行的机器
    " ?: ^% O; V2 n7 l" E( k7 O/ D7 [9 F3 x: E
    此时仍需matlab所必需的动态连接库。9 q. G+ c) J' w) @
    3. 将 /extern/lib/win32/mglinstallar.exel拷贝到到待运行机器上
    / W7 J5 J! _8 C( C5 V+ B4.在机器上先运行mglinstallar.exe, 然后选择解压目录,将在将在指定目录下解压缩出bin和toolbox两个子目录,8 G- W! S1 \# c& I
    其中在bin\win32目录下就是数学库和图形库脱离MATLAB运行所需的所有动态连接库,共3 E. j# w5 u; Z
    有37个。可以将这些.dll考入system32, 也可以直接放在应用程序目录下。' `) ]4 F1 f5 }
    而toolbox目录则必须与应用程序同一目录。2 i9 k) a9 o, `2 x. h% g

    * _, W7 C6 m6 l- J4 |/ W! Z, d3 c方法二:
    1 f+ _' Y* w1 U/ g  i6 J' \' E/ r! U
    matlab编程很方便,强大的矩阵运算功能,很多好用的工具箱,但是一般程序都要在matlab环境中运行,能否脱离这个环境打包发布呢,matlab 也提供了这样的工具。
    ( @) w. Z4 C0 |; J4 O
    6 [- |6 @+ x$ u% n  Q/ N' P1. 转化为c/c++程序并编译为.exe
    " M3 {* e' `- e- a9 v( C先验证mcc是否可用,用matlab中的example验证即可  \. ?. }8 k  G/ L
    建议不用matlab默认的lcc 编译器(可能有问题),可使用VC6编译器(按默认路径安装)
    " m1 h) ]) J, b6 ]6 ]0 n8 k由于带有界面,需要图像库支持,编译时应使用命令: mcc -B sglcpp pressure! a9 j& F1 y- M( t% {
    编译生成若干c/c++源码,以及.exe文件、bin目录中figure菜单条/工具条文件(.fig)等% w3 w. F! Y" q9 ^
    程序发布需要.exe、bin\、.fig
    % A2 {, v' ?; y) h
    7 j& T) k: Z4 J1 v2. 在未装matlab的电脑上运行程序需要数学运行时库、图像运行时库以及用到的工具箱mex文件
    & J! g2 g! E' `  B1 W前两者已经在\matlab\extern\lib\win32mglinstaller.exe压缩包中,将其解压,并在环境变量path中添加解压到的路径- X4 q8 C) n  |3 y& z( ~
    另外若程序中还用到其他工具箱的东西,那么需要将此工具箱中需要的mex文件也一并放在解压到的路径,子文件夹位置与matlab中的位置相同$ e6 X. L7 ^/ }" x5 C. w- _

    % y$ l% Y5 T* ~3 n' ^- x8 {3. 在确保.exe程序可以运行的情况下 可以用setup factory打包发布
    9 X9 R, {% L7 y" d! t+ k以下通过注册表自动添加path路径' d* C, ?6 s6 w1 D
    %————————————————————————————–
    2 a" a7 T  S8 E5 [  X0 j& cScreen.Next(); — 进入下一个屏幕( B3 [2 e$ b' F- n( E; F0 H
    resultDialog = Dialog.Message(“注意”, “向环境变量中加入matlab数学库及图象库的安装路径?”, MB_YESNO, MB_ICONINFORMATION, MB_DEFBUTTON1);1 J; K. z4 b3 ~) N9 N
    if (resultDialog == IDYES) then –加入安装路径
    . `! [/ h3 j& w3 w) \strPath = Registry.GetValue(HKEY_CURRENT_USER, “Environment”, “path”, true);: x) }1 U3 W3 n& O# ?/ \' Y0 R4 \
    if strPath ~= “” then
    * p6 Q7 B2 C4 Q% \, \ strPath = String.Concat(strPath, “;”);
    7 s" {# b' B/ q8 b% r3 h5 b' |% |end
    / }7 y; N% m9 G5 l' R strPathToAdd = SessionVar.Expand(“%AppFolder%”);& V# h. _8 E' [8 @' P
    strPathToAdd = String.Concat(strPathToAdd,”file://MATLAB6p5//bin//win32″);$ R* ]8 B( k' I0 r0 B9 M1 p
    — 如果路径中无该位置,则加入& I* V* @9 U$ Z" u. C/ V
    if String.Find(strPath,strPathToAdd) == -1 then
    7 y0 i" M% P; k; |& K strPath = String.Concat(strPath, strPathToAdd);
    7 P% i$ T- Z) i7 s) X( ^- ? Registry.SetValue(HKEY_CURRENT_USER, “Environment”, “path”, strPath, REG_SZ);$ }& w" J2 E2 a. h7 r- W  x9 b
    end
    ' K" I* F- ]! e* Oend
      ]( s. V2 V5 Q+ T# r! ~9 t! [# t%————————————————————————————–  c8 o/ r& e$ B& A
    方法三:9 C3 M" g+ m( Y, s
    在网上搜了一个方法,还没有用过, 贴在这里仅供参考:
    * |8 L* o# m7 G' I2 t) d8 h, J一、 完全可以,而且生成的.exe文件可以在没有安装matlab的机器上使用,方法吗---6 f" f0 U; F) o% M1 N
    首先,使用mcc编译得到.exe文件,具体参数见帮助文件;% v5 B7 j" K5 u. P
    其次,将.exe文件及相关资源文件以及一个称为mglinstaller.exe的软件包一起拷到别的机器上,运行mglinstaller.exe,并添加环境变量path,即可执行.exe文件
    * ~2 C7 y, J+ Z, \6 X( v( K第三,在MATLAB环境,执行命令
    ; ^8 X5 i4 ]: `0 W- l4 @  Dmcc -m -B sgl file.m3 z; R+ D/ W& W/ ]1 c& R. r' b
    或者 mcc -p -B sglcpp file.m
    * c5 b; s' J/ E4 `2 ~- F请键入help mcc看帮助。
    / z0 J! n2 ~# i7 l1 Pmcc是在“command windows” 用的吗?
    5 N; k: \. Y1 e- S4 ^只要“mglinstaller.exe”,与.exe文件及相关资源文件就可以了吗.
    ' J$ S5 n  y) Z0 K; v还有“添加环境变量path”是path到.exe文件的环境中是吧?
    6 v6 S. Y" i) j/ j
    6 K- M! @4 f* O% G7 u6 V二、 在matlab下的workspace里打comtool,点file-open project将我们先前建好的 comtest.cbl工程文件打开,再点component–package component就实现了打包,此时到 comtest\distrib文件夹里看,生成的comtest.exe就是打包后的解压程序,双击它会解压出一些文件,再点击解压出来的 _install.bat就可以实现安装
    7 P5 q0 f  M* R5 ?6 |$ q三、 如何将gui生成exe ?
    ; H! Y9 g/ A9 x. ?/ ~6 K已有gui.m文件和gui.fig文件2 G5 L! t0 n9 _7 z
    1 在matlab的command窗口中输入
      D9 G# t% @' wmcc -B sgl GUI.m
    : s+ J2 u7 D, q3 E; n3 P$ P  s2.将上步生成的文件包括*m 文件和*.fig文件一起考到待运行的机器- A" P- d" s, |. f( ]& z! D
    此时仍需matlab所必需的动态连接库。
    $ r: I6 c5 _: g$ t3. 将 /extern/lib/win32 /mglinstallar.exel拷贝到到待运行机器上
    . D2 O' R* l$ c/ ?# T, U4.在机器上先运行mglinstallar.exe, 然后选择解压目录,将在指定目录下解压缩出bin和toolbox两子目录,其中在 bin\win32目录下就是数学库和图形库脱离MATLAB运行所需的所有动态连接库,共有37个。可以将这些.dll考入system32, 也可以直接放在应用程序目录下。而toolbox目录则必须与应用程序同一目录。
    3 a8 R7 L. g( f, ?9 ?; U5.大功告成。 0 `7 s* @5 p& Q! d! |; a
    % a/ \4 ]2 \  D4 t1 H3 [* E( z- _
    外一篇:MATLAB M文件变exe文件
    ( _3 y. v7 `4 l9 X' M# J! z我也是最近才搞定的这个问题,按下述步骤进行,就没有问题,我已经运行成功,但是遇到你程序的bug的话,便会出现错误,关闭整个程序
    1 u- ^$ K" u. F希望这些对你有用# A0 i! r5 Y+ a5 \  Q
    : G3 `! Y1 p/ \: A" z" O
    如何将MATLAB程序编译成独立可执行的程序?如何将编译好的独立可执行程序发布在没有安装MATLAB的电脑上?下面将一步步实现:
    ) u/ E, I7 }8 Q1 k# T  l+ S7 `  D) O9 d. y, z) {! ~
    一、生成独立可执行的程序(exe文件)步骤* @  j8 Q1 r4 @$ [

    + n7 c, e# z& M/ b8 \% k" ~& t1、安装编译器。可有多种选择,matlab自带了一个LCC,推荐使用VC++6.0,我基于VS 2003实现。: \4 |/ k$ \$ G1 g7 q# ^
    2、设置编译器。在matlab命令行输入mbuild –setup以及mex –setup,选择安装的c编译器。5 Q* V3 f( Y. R/ p/ b
    3、调用编译器。此处使用MATLAB下的一个GUI平台deploytool下完全实现。在命令窗口输入deploytool即可看到。具体使用方法请Help。3 V$ N7 J; z* c9 w+ x: J4 R
    当然,也可以输入mcc -m filaname, filaname为要转成exe的m文件;
    ( y8 a% f" O0 T- i8 Y注:在以前的版本中,用编译命令mcc -B sglcpp filaname;自2006的版本后,替换为mcc -mfilaname;4 q2 v8 v8 V" f' D5 R
    4、安装\toolbox\compiler\deploy\win32目录下的MCRInstaller。
    # m! \& m' V! T) v
    " o9 ~  ]! d4 v9 T/ z) \, u二、脱离matlab运行可执行程序6 l, u* h+ l* q  `1 B
    MCR是由matlab的运行环境,占用不到300M的对于用不同matlab版本生成的exe文件,MCR版本也会有不同,因此,在程序打包时,最好将相应版本的MCR一起打包。MCR环境的设置文件存放目录如下:
    ! K* Y; w2 b) |* z* i) _+ J" n, }- d \toolbox\compiler\deploy\win328 r4 e" w) A" }4 P0 P7 S9 z
    文件名为MCRInstaller.exe。可将其拷贝到自己的文件夹中,(7.0以前的版本是mglinstaller.exe)。
    3 B6 w6 p# g& D9 {; T" Y在MATLAB里运行可执行程序的办法是在前面加一个!,比如:!picshow,后缀名可有可无。
    8 {% a8 m: n& H: {+ h' N# B! g0 a在其它没有安装matlab的机器上运行exe文件前:6 {$ n% {2 B! o' B' _8 }
    首先安装matlab的运行环境。在同一机器上可以并存不同版本的matlab环境(换句话说不同版本不兼容)。& o* F" s. Z2 A1 G8 T. J
    其次是要将“MCRinstaller.exe安装目录\runtime\win32”这个路径添加到该计算机的环境变量中,通常是自动加载。; d; i% l5 t: Y( R) H
    如果没有,也可手动安装,添加的方法是:
    , `8 o: j( p0 W6 y右击“我的电脑”“属性”“高级”“环境变量”“添加”指定一个变量名,然后将上述路径复制到里面就可以了。* I8 k2 M' ]: U7 F; {- W( O: q
    注:在安装过程中会弹出让安装Microsoft.NETFramework可以不用安装。0 y$ v0 j: N1 ~! T/ b- V
    最后就是将编译生成的相相关文件拷贝到同一目录下,双击即可运行。
    1 B4 G6 y9 A: [! u  h4 d" M' s问题:目前此方法可完全运行在没有安装MATLAB以及C/C++的电脑上,但是如果是在AMD的CPU可以运行,但是不会出现任何MATLAB编译的界面。  V5 c7 _+ }9 ?( B& O9 S0 _
    美中不足就是,运行的时候dos的那个黑色地窗口一直存在。下面将实现去除黑屏的办法:' F6 K: _" s2 r" I

    - D: E: U3 P5 ~1 l) b2 R消除运行MATLAB生成的exe程序的dos黑屏的办法
    3 \8 ^" o- S9 n基于MATLAB生成exe文件后,每次运行都存在dos黑屏的问题,现在可以通过以下方法解决:" v0 A/ c% n- C
    方法一: 在命令窗口输入:6 P) f$ r, V' k' i7 f  i' @
    cd(prefdir)( j# p: H1 d0 Q( Z# m6 x! f! H
    edit compopts.bat
    ( b# y3 F# N4 O- s7 e0 K- Q在打开的文件最后添加以下语句:
    7 i6 g+ ^5 k- [7 D$ e! t  |  |
    , I/ U' s  z( |3 N4 R7 FA.VC环境下:
    + l2 M- o2 h2 ^+ H7 w
    2 U+ b% h0 S! n+ ~/ Tset LINKFLAGS=%LINKFLAGS%/SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup # ]% W# A3 u! x1 Z4 l9 @

    8 `' a5 {& l. {2 T7 k+ _1 EB.LCC环境下:
    % X5 I$ N+ U$ L6 kset LINKFLAGS=%LINKFLAGS% -subsystemwindows
    : [# Z2 c' G7 p$ o, s
    , n3 m3 R/ }7 W- d; ?C. Borland:: T, i, V* X/ R% G  N7 Z# \4 c: C
    set LINKFLAGS=%LINKFLAGS% -aa; U$ Z6 e& Y% [; n

    7 ~3 V3 X7 B( a' E2 V5 O# _3 B保存以后,再重新编译m文件,生成的exe文件运行起来就没有dos窗口了! H" Z4 a8 f/ W' K$ o; i
    ' J7 {9 u" ^4 r9 s/ ^' W
    方法二:使用suppress工具:
    * c; T$ V6 J0 }/ H下载附件中的suppress压缩包后解压,(当然您可以自己去Google然后再下载)会看到一个suppress.ini文件,用记事本打开,然后将 其中“Name=test.exe”中text.exe的改为你生成的exe文件名。将suppress.exe(有个关盘和显示器的图标),改后的 suppress.ini放到你生成的exe的同目录下。执行suppress.exe或者您自己生成的exe可以了。当然您可以自己修改 suppress.exe的名字,改为您自己想要的名字。, r; K; {1 d! J! p- V( H

    * v2 s& I$ N+ q4 n) ]3 j其中的方法一在使用后生成的exe再到没有任何安装MATLAB的机子上运行也不会有黑屏了。
    ( a* ^) y/ n. K- G) X) _方法二的缺点就是要同时存在您生成的exe以及supress.exe,必须在同一目录下。* [, R! U3 h) y. H7 v9 G, @9 ]% T
    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, 2025-6-23 00:51 , Processed in 0.568268 second(s), 71 queries .

    回顶部