m********o 发帖数: 69 | 1 我的电脑上装了Microsoft Visual Studio 2008
我用C在自己电脑上写的程序,可以顺利运行。
但是,exe文件拷到别的电脑上,就不能运行了。
应该怎么办,才能使程序在所有电脑上都能运行?
以前用过Visual Studio 2005,那时没这个问题。
而且同样的源文件,VS2008搞出来的exe比VS2005做出来的要大。
猜测这个有些关系吧。应该怎样解决? |
w**z 发帖数: 8232 | 2 用Java
【在 m********o 的大作中提到】 : 我的电脑上装了Microsoft Visual Studio 2008 : 我用C在自己电脑上写的程序,可以顺利运行。 : 但是,exe文件拷到别的电脑上,就不能运行了。 : 应该怎么办,才能使程序在所有电脑上都能运行? : 以前用过Visual Studio 2005,那时没这个问题。 : 而且同样的源文件,VS2008搞出来的exe比VS2005做出来的要大。 : 猜测这个有些关系吧。应该怎样解决?
|
a*w 发帖数: 4495 | 3 我猜你用到了.NET的某些库文件,你用VS 2005时,别的电脑上恰好有
相应的.NET 2.0。而你用VS 2008时,别的电脑上没有.NET 3.5。
所以你得给别的电脑装.NET 3.5 或者 Visual C++ 2008
Redistributables。
如果开发电脑和运行电脑的OS都是64或都是32位的,也可以试试把
msvcr90.dll, msvcp***.dll和exe一起拷贝到运行电脑上。这两个dll
文件的名字我不确定,因为我没用过VS 2008。
【在 m********o 的大作中提到】 : 我的电脑上装了Microsoft Visual Studio 2008 : 我用C在自己电脑上写的程序,可以顺利运行。 : 但是,exe文件拷到别的电脑上,就不能运行了。 : 应该怎么办,才能使程序在所有电脑上都能运行? : 以前用过Visual Studio 2005,那时没这个问题。 : 而且同样的源文件,VS2008搞出来的exe比VS2005做出来的要大。 : 猜测这个有些关系吧。应该怎样解决?
|
m********o 发帖数: 69 | 4 谢谢你的解答。
我也不知道用了哪些库文件,是指头文件吗?
#include "math.h"
#include "stdio.h"
#include "string.h"
#include "stdlib.h"
我把*.cpp加到源文件中,然后按了几下F7,就有了EXE
cpp也很简单,就是一百行左右的读取文本文件和简单计算。
有没有办法把dll都整合到EXE中,这样拷到任何一个电脑都能运行?
我是新手,问题可能有些小白。感谢指点。
【在 a*w 的大作中提到】 : 我猜你用到了.NET的某些库文件,你用VS 2005时,别的电脑上恰好有 : 相应的.NET 2.0。而你用VS 2008时,别的电脑上没有.NET 3.5。 : 所以你得给别的电脑装.NET 3.5 或者 Visual C++ 2008 : Redistributables。 : 如果开发电脑和运行电脑的OS都是64或都是32位的,也可以试试把 : msvcr90.dll, msvcp***.dll和exe一起拷贝到运行电脑上。这两个dll : 文件的名字我不确定,因为我没用过VS 2008。
|
l*********s 发帖数: 5409 | 5 for what you do, get a mingw and gcc instead of visual studio.
【在 m********o 的大作中提到】 : 谢谢你的解答。 : 我也不知道用了哪些库文件,是指头文件吗? : #include "math.h" : #include "stdio.h" : #include "string.h" : #include "stdlib.h" : 我把*.cpp加到源文件中,然后按了几下F7,就有了EXE : cpp也很简单,就是一百行左右的读取文本文件和简单计算。 : 有没有办法把dll都整合到EXE中,这样拷到任何一个电脑都能运行? : 我是新手,问题可能有些小白。感谢指点。
|
t****t 发帖数: 6806 | 6 you can either install VS2008 redistributable, or compile with static
library. google both keywords and select one solution.
【在 m********o 的大作中提到】 : 谢谢你的解答。 : 我也不知道用了哪些库文件,是指头文件吗? : #include "math.h" : #include "stdio.h" : #include "string.h" : #include "stdlib.h" : 我把*.cpp加到源文件中,然后按了几下F7,就有了EXE : cpp也很简单,就是一百行左右的读取文本文件和简单计算。 : 有没有办法把dll都整合到EXE中,这样拷到任何一个电脑都能运行? : 我是新手,问题可能有些小白。感谢指点。
|
c****e 发帖数: 1453 | |
c*********e 发帖数: 16335 | 8 你到底写的c,还是c++程序?
【在 m********o 的大作中提到】 : 谢谢你的解答。 : 我也不知道用了哪些库文件,是指头文件吗? : #include "math.h" : #include "stdio.h" : #include "string.h" : #include "stdlib.h" : 我把*.cpp加到源文件中,然后按了几下F7,就有了EXE : cpp也很简单,就是一百行左右的读取文本文件和简单计算。 : 有没有办法把dll都整合到EXE中,这样拷到任何一个电脑都能运行? : 我是新手,问题可能有些小白。感谢指点。
|
q*******g 发帖数: 36 | 9 说详细一点,怎么叫“无法在其他电脑上运行”
多试试几个电脑。 |
l****c 发帖数: 838 | 10 I don't work on Windows, but I think other computers do not
have some necessary libs (or dlls) that you installed on
your development machine. Does VS provide tools to create a package,
such that you run install or setup and copy those libs to necessary
places? In linux, after make and make install, the libs are copied.
【在 m********o 的大作中提到】 : 我的电脑上装了Microsoft Visual Studio 2008 : 我用C在自己电脑上写的程序,可以顺利运行。 : 但是,exe文件拷到别的电脑上,就不能运行了。 : 应该怎么办,才能使程序在所有电脑上都能运行? : 以前用过Visual Studio 2005,那时没这个问题。 : 而且同样的源文件,VS2008搞出来的exe比VS2005做出来的要大。 : 猜测这个有些关系吧。应该怎样解决?
|
|
|
t*****n 发帖数: 4908 | 11 请google microsoft visual studio 2008 redistributable
在对方的机器上装这个package就行
【在 m********o 的大作中提到】 : 我的电脑上装了Microsoft Visual Studio 2008 : 我用C在自己电脑上写的程序,可以顺利运行。 : 但是,exe文件拷到别的电脑上,就不能运行了。 : 应该怎么办,才能使程序在所有电脑上都能运行? : 以前用过Visual Studio 2005,那时没这个问题。 : 而且同样的源文件,VS2008搞出来的exe比VS2005做出来的要大。 : 猜测这个有些关系吧。应该怎样解决?
|
c*****m 发帖数: 1160 | 12
debug version? switch to release version to see?
【在 m********o 的大作中提到】 : 我的电脑上装了Microsoft Visual Studio 2008 : 我用C在自己电脑上写的程序,可以顺利运行。 : 但是,exe文件拷到别的电脑上,就不能运行了。 : 应该怎么办,才能使程序在所有电脑上都能运行? : 以前用过Visual Studio 2005,那时没这个问题。 : 而且同样的源文件,VS2008搞出来的exe比VS2005做出来的要大。 : 猜测这个有些关系吧。应该怎样解决?
|
M********t 发帖数: 5032 | 13 use static link please
Should in the link tab
【在 m********o 的大作中提到】 : 我的电脑上装了Microsoft Visual Studio 2008 : 我用C在自己电脑上写的程序,可以顺利运行。 : 但是,exe文件拷到别的电脑上,就不能运行了。 : 应该怎么办,才能使程序在所有电脑上都能运行? : 以前用过Visual Studio 2005,那时没这个问题。 : 而且同样的源文件,VS2008搞出来的exe比VS2005做出来的要大。 : 猜测这个有些关系吧。应该怎样解决?
|
m********o 发帖数: 69 | |
n*******0 发帖数: 2002 | 15 错误是啥?不支持的指令还是找不到库?
【在 m********o 的大作中提到】 : 我的电脑上装了Microsoft Visual Studio 2008 : 我用C在自己电脑上写的程序,可以顺利运行。 : 但是,exe文件拷到别的电脑上,就不能运行了。 : 应该怎么办,才能使程序在所有电脑上都能运行? : 以前用过Visual Studio 2005,那时没这个问题。 : 而且同样的源文件,VS2008搞出来的exe比VS2005做出来的要大。 : 猜测这个有些关系吧。应该怎样解决?
|
z*******6 发帖数: 133 | 16 有许多软件可以检测 dll dependency, 下载一个试一下。
比如我曾用过一个挺好的 http://www.dependencywalker.com/
在不能运行你的 exe 文件的计算机上试一下,可以检测到哪些文件库没有。
这是development => deployment 的问题
btw, on linux, that's the same as "ldd" |