Ir ao conteúdo
  • Cadastre-se
yurimn

Programas compilados pelo Visual C++ 2010 Express só funcionam no meu PC

Recommended Posts

Olá pessoas, eu instalei o visual studio aqui, e compilei um programa no visual studio, quando um amigo foi testar, ele falou que apareceu um erro falando que precisa de uma dll: http://prntscr.com/1fgkha

Isso significaria que só quem tivesse o Visual Studio poderia rodar meu programa?

Código do programa:

ClassTestt.cpp


// ClassTestt.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "winac.h"

using namespace std;

class Pessoa {
private:
string name;
int heigth;
public:
string getName() const;
void setName(string);
int getHeigth() const;
void setHeigth(int);
};
string Pessoa::getName() const {
return name;
}
void Pessoa::setName(string s) {
if(s.length() == 0) {
name = "No name assigned";
}
else {
name = s;
}
}

int Pessoa::getHeigth() const {
return heigth;
}
void Pessoa::setHeigth(int h) {
if(h < 0) {
heigth = 0;
}
else {
heigth = h;
}
}
void setValues(Pessoa&);
void getValues(const Pessoa&);
int _tmain(int argc, _TCHAR* argv[])
{
Pessoa p1;
setValues(p1);
cout << "Mostrando dados da pessoa...\n";
cout << "============================\n";
getValues(p1);
#ifdef WIN32
system("pause");
#else
getch();
#endif // WIN32
return 0;
}
void setValues(Pessoa& pers) {
string str;
int h;
cout << "Enter persons name: ";
cin >> str;
pers.setName(str);
cout << "Enter height in milimeters: ";
cin >> h;
cin.ignore();
pers.setHeigth(h);
}
void getValues(const Pessoa& pers) {
cout << "Nome da pessoa: " << pers.getName() << endl;
cout << "Altura da pessoa em milímitros: " << pers.getHeigth() << endl;
}

stdafx.h


// stdafx.h : include file for standard system include files,
// or project specific include files that are used frequently, but
// are changed infrequently
//

#pragma once

#include "targetver.h"

#include <stdio.h>
#include <tchar.h>
#include <iostream>
#include <string>
#include <stdlib.h>
#ifndef WIN32
#include <conio.h>
#endif // WIN32



// TODO: reference additional headers your program requires here

Compartilhar este post


Link para o post
Compartilhar em outros sites

a pessoa não possuí o .net Framework 3.5 ou 4.0, a pessoa deve entrar no site da microsoft e baixer esse framework.

ou você faz a compilação do seu programa usando uma versão mais antiga, ja que pelo que vi, você não esta usando nada do novo framework.

abs.

Compartilhar este post


Link para o post
Compartilhar em outros sites
a pessoa não possuí o .net Framework 3.5 ou 4.0, a pessoa deve entrar no site da microsoft e baixer esse framework.

ou você faz a compilação do seu programa usando uma versão mais antiga, ja que pelo que vi, você não esta usando nada do novo framework.

abs.

O projeto dele é C++ Native e não CLI, logo não depende do .NetFramework.

Coloque a compilação no modo Release (para ficar rapidão), enquanto desenvolve, deixe na opção Debug

Acesse Properties do seu projeto(botao direito Properties) -> Configuration Properties -> C/C++ -> Code Generation -> RuntimeLibrary = MultiThreaded (sem DLL)

Note que os executaveis ficaram mais pesados. porém sem dependencia da Redistributable.

Isso tambem pode ser feito com C++/CLI, porém neste caso ainda precisa do .NetFramework

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×