Ponto V!

Home C/C++ Visual C++ Como utilizar o Visual Studio C++ - Parte 1
Bruno Crivelari Sanches
Como utilizar o Visual Studio C++ - Parte 1Imprimir
Escrito por Bruno Crivelari Sanches

O Visual Studio é um pacote de programas da Microsoft para desenvolvimento de software, suportando diversas linguagens como C#, C++, C, Java, Visual Basic, etc. Nesta série de tutoriais vou focar apenas no Visual C++ Express 2008, mas a maioria da dicas / comandos devem funcionar em outras versões do Visual C++.

As versões express do Visual Studio são versões grátis que a microsoft disponibiliza e obviamente elas não possuem todas as funcionalidades das versões pagas, mas na minha opinião o Visual C++ Express é a melhor ferramenta "grátis" para se trabalhar com C++ no Windows.

Sobre o Visual C++ 2010

Este artigo foi escrito usando como base o Visual C++ 2008. Pouco muda no processo de instalação da versão 2010 e não vemos necessidade um artigo apenas sobre ele. Caso tenha problemas na instalação, deixe um comentário aqui que ajudaremos no que for possível

Link para download: Visual C++ 2010 Express

Instalando

O primeiro passo é instalar a ferramenta, e o jeito mais simples é indo ao site oficial: Visual C++ Express. Logo ali no lado direito tem um botão "Download Now", escolha a linguagem (Inglês no meu caso) e clique em Download.

Após concluído o download, execute o programa para inicializar a instalação que a principio é como qualquer outro programa, aceitar licença, instalar algum atalho extra, etc.

A versão atual do instalador pergunta se você quer instalar o Microsoft Silverlight Runtime e o Microsoft SQL Server, nenhum dos dois é necessário, a menos que você queira usar o SQL Server como banco de dados para suas aplicações ou utilizar o Silverlight

Opcionais do Visual C++ Express

Após escolher os adicionais, vem a escolha do diretório de instalação, de novo, é a gosto do fregues. Clicando em "Next" é iniciado o download. Existe no site da Microsoft imagens de CD para quem quiser instalar em um computador que não tenha acesso a rede.

Rodando

Após concluída a instalação, o instalador cria um atalho no menu iniciar, basta então acessar ele e clicar no "Microsoft Visual C++ Express Edition 2008". O Visual vai carregar e você deve ver uma tela parecida com a abaixo:

Tela inicial do Visual

A versão express costuma solicitar registro, basta seguir o link do dialogo que surgir, entrar com os dados e depois inserir a chave de registro no visual.

Criando a primeira Solução (projeto)

O Visual Studio gerencia o software criado através de soluções, cada solução possui um ou mais projetos, que formam o software ou o conjunto de software sendo criado.

Para criarmos nosso "Hello Visual", clique em "File" -> "New" -> "Project". Surge então um dialogo parecido com o abaixo:

Criando novo projeto

Clique em Win32, depois selecione "Win32 Console Application". Entre com o nome do projeto, diretório onde ele vai ser criado, e nome da solução (que é opcional), em seguida clique em "Ok".

Configurando o novo projeto

Surge então a primeira tela do Application Wizard, clique em "Next", na segunda tela selecione "Console Application" e marque a caixa "Empty Project ". Dessa forma é criada uma aplicação vazia, e sem o código de "Hello World" do visual. Depois de criado, o projeto pode ser modificado para aplicação com janela, dll ou biblioteca.

Selecionando o tipo de projeto a ser criado

Agora clique em “Finish” e o projeto vai ser criado.

Após criada a aplicação, deve surgir então o "Solution Explorer", que é uma janela (que costuma ficar do lado esquerdo da tela) com a visão de todos os projetos e arquivos da sua solução.

Visão do Solution Explorer

No nosso caso ela vai estar vazia, agora criaremos o primeiro arquivo de código: clique com o botão direito do mouse no nome do projeto (meuPrimeiroProjeto, no exemplo), selecione "Add" -> "New Item". Na janela que aparecer, selecione "C++ File (.cpp)", entre com o nome do arquivo e clique em "Add".

Criando novo arquivo para o projeto

Vai surgir então um lindo arquivo em branco, repare no "Solution Explorer" que o arquivo foi adicionado ao seu projeto, agora basta entrar com o código do "Hello World":

#include <stdio.h>

int main(int argc, char **argv) 
{     
    printf("Hello Visual");    
    return 0; 
}

Após entrar com o código, clique na opção "Build" (menu principal) e selecione "Build", ou então pressione F7. Na parte de baixo da tela vai surgir a tela de output, que mostra o que o compilador esta fazendo e no final do processo ela indica se houve algum erro ou não. Se aconteceu algum erro, dando um clique duplo sobre a mensagem de erro foca o mesmo na tela.

Programa de teste após compilação

Rodando o "Hello World"

Agora que o projeto já foi compilado, basta executar ele. No menu principal, selecione "Debug" -> "Start Without Debugging", ou pressione "CTRL + F5". Pronto, vai surgir uma janela de console com a saída do seu programa.

No proximo tutorial, vamos aprender um pouco mais sobre o build do visual.


Comentários (129)
  • Luiz Gustavo  - Parabens
    avatar

    Estou no primeiro periodo de Ciência da Computação e esse tutorial me ajudou um pouco a entender o visual. obrigado.

    Agora uma pergunta qual seria melhor o devc++, ou o visual studio para programar. obrigado espero resposta. :cheer:

  • Bruno Crivelari Sanches
    avatar

    Por nada Luiz!

    Sobre o DevC++, para mim ele é um exemplo de como não deve ser feito uma IDE, tem diversos problemas e é péssimo para projetos grandes. Sem falar que não é atualizado a anos (esta abandonado) e ele causa muitos problemas até mesmo na compilação, já vi varias pessoas que não estavam conseguindo compilar um programa e bastou trocar de ambiente.

    Resumindo: visual sem duvida.

  • Vinícius Godoy de Mendonça  - DevCpp
    avatar

    Concordo em gênero, número e grau com o Bruno. O devcpp também vem com uma versão de compilador tão pré-histórica quanto ele.

    Não tem suporte ao depurador, ferramenta essencial para identificar erros no código.

    Se quiser uma IDE portátil, para ter no PenDrive, que usa o mesmo compilador do DevCpp, mas numa versão mais nova e que também rode em Linux e Mac, use o Code::Blocks

    http://www.codeblocks.org


    Agora, sem dúvida o Visual é uma alternativa muito superior a essas duas, mesmo na sua versão Express. Se puder usa-lo, fique com ele.

  • Luiz Gustavo  - Vlw
    avatar

    vlw mesmo. pensei q iria demorar muito para alguem responder mas isso não vem ao caso.
    No caso quando sai um tutorial novo tipo minha maior dificuldade agora são as declarações , ou se ja teriam algum material ,livro ou apostilas para eu dar uma olhada. Começei o curso agora mas já sei aonde quero ir , gosto muito de programar e quero trabalhar na area de desenvolvimentos de jogos e software , princpalmente criando jogabilidades inovadoras. entao quero agradecer a atenção de vcs.

    Agradecimentos de um pequeno programador. :lol:

  • Vinícius Godoy de Mendonça
    avatar

    Dê uma olhada no nosso Roadmap C++, tem sugestões de livros lá. Inclusive um para download, em português e gratuito. :)

  • Luiz Gustavo  - re: obrigado
    avatar

    Obrigado. voltarei com mais duvidas futuramente. :lol:

  • Luiz Gustavo  - declaração
    avatar

    Em relação as declarações elas so devem ser feitas assim
    int main(int argc, char **argv)

    ou podem seguir algum outro padrão , se sim qual seria ele.

    obrigado

  • Bruno Crivelari Sanches
    avatar

    Mas você quer dizer a função main ou funções em geral?

    Funções usam apenas essa sintxe:

    [tipoRetorno] nome([parametros])'

    Dai pode ser:
    void funcao()
    int outraRuncao();
    void funcaoCompParam(int param);

    Isso não muda, apenas conforme a necessidade, da uma olhada la no roadmap e pega a apostila de c++ e olha a parte de funções que eles devem dar detalhes.

    T+

  • Luiz Gustavo
    avatar

    a questao é q eu começei pelo devc++ entao declarava as variaveis assim
    int numero, cont;
    char nome;

    e no visual vc declarou assim
    int main(int argc, char **argv)

    queria saber se o visual aceita essa declaração como o dev ou tem q ser como a usada por vc?

  • Bruno Crivelari Sanches
    avatar

    Essa variáveis são parâmetros da função main, um pouco diferentes das outras variáveis do seu código.

    Na parte de funções da apostila deve falar sobre isso (acho) :)

  • Vinícius Godoy de Mendonça
    avatar

    Acho que você está um pouco confuso. É melhor pegar uma apostila ou livro dos recomendados e estudar com cuidado.

    A forma recomendada de declaração do main é a que o Bruno usou. Mas o main pode ser declarado de outras formas como simplesmente:
    void main()

    Há formas diferentes para o C e o C++ (o C++ é mais restrito nesse quesito).

    Agora, isso não tem nada a ver com declaração de variáveis. Isso é uma declaração de função e, no caso, de uma função muito especial: a que marca o início do programa.

  • Luiz Gustavo  - re:
    avatar

    entao elas devem estar ligadas ao parâmetros da sua função?

    poderia me passar um codigo simples como calcular uma media ou qual quer coisa ... obrigado

  • Luiz Gustavo
    avatar

    agora q vc explicou entendi a questão do retorno antes do main(), fiz um test de um execicio q eu ja tinha feito no dev e deu certo
    #include
    #include
    #include
    #include
    #include
    int main()
    {
    int x,y,tam;
    char nome[30];
    printf("Digite uma palavra: ";);
    gets(nome);
    tam = strlen(nome);
    printf("\n A palavra de tras pra frente e: ";);
    for (x=tam-1; x >= 0; x--)
    printf("%c",nome[x]);
    printf("\n\n";);
    system("pause";);
    return 0;
    }


    a minha duvida estava na declaração das variaveis. mas agora esta ok.

    mais uma vez muito obrigado.

  • Ana Mearpi
    avatar

    Oi estou aprendendo a linguagem C e uso o Visual Basic, já fiz 7 programas e todos foram mas o 8º está dando erro, e ñ estou conseguindo acha-lo, por favor me ajude!!

  • Bruno Crivelari Sanches
    avatar

    Se você esta aprendendo C ou C++, deveria usar Visual C++ e nãoVisual Basic.

    Qual erro que ocorre? Sem saber o erro é impossível ajudar.

  • Pedro Henrique de Faria  - Duvida!
    avatar

    Galera, comecei a utlizar o Visual C++ faz pouco tempo, ainda nao me acostumei, sou programador DELPHI e JAVA, porem a empresa solicitou o desenvolvimento de um sistema de segurança nesta linguagem (Visual C++ ), quem puder me ajudar, ficarei muito agradecidooooo !
    Estou executando 2 Video cameras pelo Visual chamando o DOS e executando o GSTREAMER. Porem quando clico nos botões para que estes executem suas funções, a janela do DOS fica "POR CIMA" da interface do sistema, como faço para execultar com o DOS oculto ou que ele fique atraz do sistema?
    Vou deixar e-mail para contato e MSN, Desde já Agradeço !

    pedro.aspro@yahoo.com.br
    pedr005.sk8@hotmail.com
    pedro.faria@grupofox.com.br

    Abraços

  • Bruno Crivelari Sanches
    avatar

    Eu ando enferrujado com detalhes da Win32, mas acho que você pode usar a função Showwindow para esconder as janelas do console:

    http://msdn.microsoft.com/en-us/library/ms633548(VS.85).aspx

  • Pedro Henrique de Faria
    avatar

    Brunão, muito obrigado pela sua resposta !
    Ainda não consegui ! Achei uma linha para que o DOS execute minimizado, porem nao consigo aplicar no Visual C++, vou colocar aqui a linha de comando, se voce puder me ajudar, novamente ficarei muito grato !!!


    ......

    #pragma endregion

    private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {

    system("gst-launch autovideosrc device-index=4 ! ffmpegcolorspace ! dshowvideosink";);

    private: System::Void button2_Click(System::Object^ sender, System::EventArgs^ e) {
    system("gst-launch autovideosrc device-index=4 ! ffmpegcolorspace ! dshowvideosink";);
    }
    private: System::Void button3_Click(System::Object^ sender, System::EventArgs^ e) {
    system("gst-launch autovideosrc device-index=4 ! ffmpegcolorspace ! dshowvideosink";);
    }
    private: System::Void button4_Click(System::Object^ sender, System::EventArgs^ e) {
    system("gst-launch autovideosrc device-index=4 ! ffmpegcolorspace ! dshowvideosink";);
    }
    private: System::Void button5_Click(System::Object^ sender, System::EventArgs^ e) {

    int x=1;
    int n=1;
    for(x=1;x

  • Pedro Henrique de Faria
    avatar

    Desculpe, a linha que localizei é : cmd /c start /min

  • Bruno Crivelari Sanches
    avatar

    Tente utilizar a CreateProcess, é possível passar um flag dizendo para que não sejam criadas janelas ou console, dai acho que você consegue esconder o processo:

    http://msdn.microsoft.com/en-us/library/ms684320(VS.85).aspx

  • PedroHenrique  - Visual C++
    avatar

    Bruno, tenho algumas duvidas e alguns problemas, se voce puder me ajudar novamente, ficarei muito agradecido .

    Bom, a primeira é : Como executar arquivos .bat dentro do Visual C++ ?

    E tambem, utilizo o Visual C++ e preciso executar um video dentro da interface do sistema, como se fosse uma Picture Box, mas com a função de executar o video.

    Desde já Agradeço !

    Abraços !

  • Bruno Crivelari Sanches
    avatar

    Nunca tentei executar bat, deve ser via createProcess ou via system, tem que pesquisar.

    Sobre os vídeo, procure por directshow, basta usar ele.

    Abraços

  • Pedro Henrique
    avatar

    Nao localizei a ferramente DirectShow no Visual
    Utilizo o Directshow mas é no GStreamer.
    Ou estou fazendo errado.
    Bruno muito obrigado pela paciencia e pelas respostas !

    Abraço

  • Bruno Crivelari Sanches
    avatar

    O DirectShow não é ferramenta, é uma API. Se o seu Visual Studio for profissional você já deve ter ela ai, basta usar. Se for o Express e tiver instalado o Windows SDK já vai ter também.

    Sobre o DirectShow: DirectShow API

  • Pedro Henrique
    avatar

    O meu é o Visual Express, estou fazendo download do Windows SDK!
    Resolve o meu problemaw

    Abraços

  • pedreo henrique
    avatar

    Brunao, estou abrindo o SDK, ele diz que eu nao tenho o visual 2005 nem o 2008 - utilizo o 2010 !
    É obrigatorio utilizar uns desses dois para funcionar?

    Abraços

  • Bruno Crivelari Sanches
    avatar

    Estranho ela pedir o Visual Studio, pois a SDK costuma vir até com compilador.

    De qualquer forma, a ultima versão parece ser essa aqui: SDK

  • Pedro Henrique
    avatar

    Bom dia Bruno, algo errado com o link?

  • Bruno Crivelari Sanches
    avatar

    Ops, corrigido...

  • Pedro Henrique de Faria
    avatar

    Bruno Boa tarde !
    Estou utilizando o GStreamer com o Visual C++ para Fluxos de vídeo (Cameras de Segurança), porem o GStreamer é muito complexo, você conhece algum framework que trabalhe junto com o Visual C++ e que converta videos, audio, etc. Um dos problemas que agora eu tenho, é fazer com que esse framework execute uma câmera via IP, no formato JPEG (Frames), precisa rodar dentro do Visual C++ que é onde desenvolvi a interface. Desde já agradeço !

  • Bruno Crivelari Sanches
    avatar

    As poucas vezes que trabalhei com vídeo foi utilizando DirectShow. Não sei exatamente o que quer fazer mas se quer extrair audio e imagens de um vídeo acredito que a solução possa ser o DirectShow mesmo, criando um filtro de vídeo para ele é possível extrair tudo isso, tem exemplos disso na SDK do Windows.

  • Pedro Henrique  - C++
    avatar

    Bom dia Bruno !

    Preciso capturar imagens de um dispositivo de câmera pelo Visual C++
    Vou tentar explicar : 1 PLACA possue 4 CHIPS, e cada CHIP executa 4 cameras, ou seja, 16 saídas de vídeo.

    Como posso fazer para escolher as cameras serem executas na linha de programação? Vou utilizar o DirectShow ! Sei que primeiro preciso identifica-las uma a uma, pelo BUFFER. Mas até então o meu problema é fazer a Linguagem conversar com o Hardware.

    Desde já Agradeço

  • Bruno Crivelari Sanches
    avatar

    Se as câmeras são reconhecidas pelo windows como se fossem webcams é vida DirectShow mesmo, bastando listar os dispositivos e usar aquele que você quer, tipo:

    Selecting a Capture Device

  • Pedro Henrique
    avatar

    Bom, é uma placa PCI.
    Obrigado novamente bruno, estou te devendo mais uma !
    kkk Abraços !

  • Pedro
    avatar

    Bruno bom dia !
    Preciso de uma ajuda agora, de como colocar a execução de uma camera ao vivo dentro do Visual C++.

    Ja consigo capturaras imagens, quial ferramente do Visual c++ que eu utilizo, voce havia me respondido em um outro TOPICO para utilizar o DirectShow, ja utilizaei para capturar imagens. Eu preciso agora executar essas imagens dentro de uma quadrado do software, de forma que a imagem nao abra em POP-UP. E outra duvida, como posso compilar um SDK da placa que utilizo para o VC++?

    Abraços!

  • Bruno Crivelari Sanches
    avatar

    Basta olhar nos samples do DirectShow que vem com a SDK do windows ou no site da msdn que tem varios exemplos de como rodar videos DirectShow na tela...

    Sobre SDK, como assim compilar um SDK? Você diz criar uma lib? Basta mudar a configuração do seu projeto para biblioteca (library) que ele gera um .lib.

    T+

  • Pedro
    avatar

    Isso Bruno, exemplo linha de comando :

    DWORD RiscCodeBase[256]; // Declare RISC Program Space in host memory
    RiscCodeBase[0] = 0xC0000000; // Get Sync in Odd field
    RiscCodeBase[1] = 0x00000000; // DW1 of SYNCO instruction

    Esta dentro da SDK, quero dizer compilar tudo que esta dentro da sdk, criar uma biblioteca para que o VC++ consiga entender. É só mudar o arvuivo para .lib ?

    Obrigafo pela resposta

  • Bruno Crivelari Sanches
    avatar

    Agora fiquei perdido. Se você quer fazer um SDK para distribuir para outros usarem esse hardware tem que se fazer uma análise de como isso vai ser distribuido: lib / dll / serviço etc...

    Criar mesmo é simples, tem bastante documentação sobre como gerar libs. Eu tenho um artigo sobre isso aqui na fila, mas deve demorar um pouco para ser publicado.

  • Pedro
    avatar

    Bom, resumindo Rs
    eu preciso compilar um arquivo para ser executado no VC++.

  • Bruno Crivelari Sanches
    avatar

    Arquivo para ser executado no VC? O Visual não executa nada, só compila :).

    Acho que deve ser lib o que você precisa. Procure por lib ou libraries que você deve achar informações de como criar, tipo: http://msdn.microsoft.com/en-us/library/ms235627.aspx

  • Pedro
    avatar

    Obrigado Bruno !

    Abraços

  • Pedro Henrique
    avatar

    Burno, como faço para a TextBox ler algo que esta escrito ? Exemplo : Uma pessoal entra com um valor e clica em OK para que o sistema leia este arquivo.

    Obrigado e Bom Dia !

  • Bruno Crivelari Sanches
    avatar

    Depende muito do que você usou para fazer a textbox. Sugiro dar uma olhada nos documentos da API que você usou que lá deve explicar facilmente como pegar o texto de uma text box.

    Eu aqui não sei dizer de cabeça, então vou ter que ir no google procurar, faz um tempo que não crio GUI em C++ (tenho usado outras linguagens para isso).

  • Pedro Henrique
    avatar

    Ok Bruno, obrigado !

    ABraços

  • Pedro Henrique de Faria
    avatar

    Bom Dia Bruno, como vai ?
    Bruno tenho um arquivo .bat para ser compilar no VC++, porem tenho problemas; Utilizei o ShellExecute -> ShellExecute(NULL,"C:\run.vbs", SW_SHOWMAXIMIZED); error C2660: 'ShellExecuteW' : function does not take 3 arguments; se aumento os argumento ou de tiro ele me apresenta o mesmo erro; utilizei tambem o CreateProcess -> CreateProcess (NULL,"C:\run.vbs", SW_SHOWMAXIMIZED) error C2660: 'CreateProcess : function does not take 3 arguments

    Pesquisei no Site da MSDN, mas não encontrei nada que me ajude.

    Outro problema que tenho, eu coloquei 2 Botões (Exemplo), cada um com a função de abrir câmeras distintas, porém quando clico em um botão, ele abre uma camera, mas eu nao consigo clicar no outro botão, o sistema fica inativo, somente as imagens da cameras que trabalham; pode ser um problema de lógica ? Existe alguma comando em C/C++ que permita o usuario clicar nesse botoes quando outros ja estão fazendo suas devidas funções ?

    Dese já Agradeço
    Abraços

  • Bruno Crivelari Sanches
    avatar

    Se você olhar na documentação da msdn vai ver que tanto ShellExecute quanto CreateProcess recebem mais do que 3 parâmetros, você não pode chamar uma função com parâmetros faltando, tem que suprir todos. Basta ver na documentação o que é cada um e suprir.

    O problema do botão certamente é de lógica, sem ver o código é dificil dizer, mas chuto que me parece que você abriu um dialog modal e dialog modais não permitem que você interaja com a janela anterior até que ele seja fechado. Basta ver na documentação da função que você usou para a abrir a janel como fazer uma janela não modal.

  • Pedro Henrique
    avatar

    Pesquisei na Documentação da MSDN, utilizei exatamente da mesma forma mas continua o mesmo erro; se o ShellExecute necessita de mais de 3 parametros, posso utilizar o NULL certo ?

    private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {

    CreateProcess (NULL,"C:\run.vbs", SW_SHOWMAXIMIZED);

    }

    Bruno, desculpe-me mas nao entendi esse "MODAL", seria a forma em que a janela será aberta ?

    Utilizei 2 Buttons

    Obrigado pela resposta

  • Pedro Henrique
    avatar

    Utilizei Este :

    CreateProcess ("C:\run.vbs", SW_SHOWMAXIMIZED, NULL);

    resultado :

    error C2660: 'CreateProcessW' : function does not take 3 arguments

  • Pedro Henrique
    avatar

    Boa Tarde Bruno.
    Obrigado pelas respostas consegui resolver o problema dos botões, mas quanto ao CreateProcess :

    usei esta linha de comando

    private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {

    //system("C:\run.vbs", SW_NORMAL);

    CreateProcess("C:\run.vbs", NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, SW_SHOWMAXIMIZED);


    Erro : cannot convert parameter 1 from 'const char [10]' to 'LPCWSTR'

  • Pedro Henrique
    avatar

    Bruno, tentei fazer a conversão de alguma forma, compilou mas quando clico no botão ele não faz a função, utilizei esta :

    wchar_t * arg1 = L"something1";

    CreateProcess(L"C:\run.vbs", NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, SW_SHOWMAXIMIZED);

  • Bruno Crivelari Sanches
    avatar

    Acho que usei CreateProcess 1 ou talvez duas vezes na minha vida e se não me engano no Erinia, a uns 7 anos atrás :).

    Veja o valor de retorno da função e como dizem os docs, use GetLastError para ver o que aconteceu.

    Acredito que você não tem como lançar um processo "run.vbs", pois um script não é processo, teria que lançar a vm ou o script host do windows e passar o run.vbs como parâmetro, mas posso estar enganado.

  • rafael rocha  - visual studio
    avatar

    meu computador nao esta querendo rodar videos pelo media player por causa que eu desinstalei o visual studio, quando ele esta instalado nao rodava por causa de uma mensagens que aparecia do visual studio, e agora o que faço?

  • Bruno Crivelari Sanches
    avatar

    Não acredito que seja problema do Visual Studio, me parece mais um problema no seu media player, principalmente pelo fato de você comentar que os vídeos já não rodavam com ele instalado.

    Sugiro procurar um forum de windows ou de suporte do media player para tentar conseguir mais informações ou algo que possa resolver o problema.

    T+

  • Cleber  - Instalação do vc++ express
    avatar

    Prezado Bruno e d+ programadores,

    Ao tentar instalar essas versoes Microsoft VC++ , VB e VC#,
    aparece o mesmo erro para qualquer desses programas.

    "
    Setup could not install the following component:

    Microsoft Application Error Reporting

    "

    Vcs sabem o que pode estar impedindo a instalação ?
    Obrigado.

  • Bruno Crivelari Sanches
    avatar

    Nossa, não tenho a menor idéia! Tente colocar a mensagem de erro no google e veja se aparece algo que possa lhe dar uma luz. :(

  • Ismael Lima  - Programação Básica
    avatar

    Amigos, eu queria criar um sisteminha bem básico, que para vcs é molesa, é o seguinte... Gostaria de um sisteminha de executar músicas, por exemplo tenho 610 músicas em power point numa pasta, e o sistema é apenas pra eu selecionar música Nº 499 e dar um ENTER e pronto, abre o power point na música 499, basta uma caixa com o espaço para digitar o número... Alguem pode me ajudar como eu faço isso?

  • Bruno Crivelari Sanches
    avatar

    Ismael, procure um forum de desenvolvedores que talvez consiga alguém que possa lhe dar uma ajuda ou quem sabe alguém que já fez algo assim. Uma boa opção é o guj

    T+

  • Ataide  - Parabéns
    avatar

    Parabéns a todos vc's do site queria deixar aqui também somente um lembrete no 1° codigo ai em cima citado

    colocando mais um include

    podemos usar o System("pause";); para que se possa ver o Olá mundo
    algo muito util para os iniciantes o codigo ficaria a sim


    #include
    #include

    int main(int argc, char **argv){
    printf("Hello Visual \n\n";);
    system("pause";);
    return 0;
    }


    Parabéns mesmo pelo belo site que vc's tem !!! entro aqui todos os dias ! estou no 6 semestre de sistemas é estou sempre procurando algo sobre games abraço

  • Vinícius Godoy de Mendonça
    avatar

    Aliás, vale para o Code::Blocks também. Ele automaticamente para a execução no final, e ainda mostra quanto tempo o programa ficou rodando.

    Acho que a maior parte das boas IDEs já retirou a necessidade do System("pause";). E há bons motivos para isso. O primeiro, é que o programador pode esquecer o comando ali, o que não faz sentido para o programa de verdade. E o segundo, é que o comando pause é exclusivo do Windows.

  • Bruno Crivelari Sanches
    avatar

    Obrigado Ataide.

    O System("pause";) é uma boa dica, mas no caso do Visual não é muito necessário, ao menos para ver o final do programa pois quando se executa com CTRL+F5 ele para a execução no final automaticamente.

    T+

  • Tiago Peczenyj  - maneiro!
    avatar

    C++ é uma linguagem que nunca utilizei direito, deve ser pq penso em ANSI C na hora de programar.

    Agora o tutorial poderia ser atualizado para o visual studio 2010? Tive q habilitar uma parada de simbolos para o exemplo rolar 100% do contrario recebia erros terriveis.

  • Bruno Crivelari Sanches
    avatar

    Valeu Tiago!

    Atualizar para Visual 10 esta na minha todo list :)

    Engraçado que simplesmente criar um hello world como este do exemplo funciona sem problemas, pelo menos aqui.

    T+

  • andré
    avatar

    Bruno, mto bom o post, mas comigo aconteceu um erro:

    error PRJ0003 : Error spawning 'cmd.exe'.

    oq será q estou fazendo de errado???
    procurei um pouco sobre este erro, e encontrei isto:

    http://social.msdn.microsoft.com/Forums/en/vcgeneral/thread/be69a2f e-df55-432b-8c53-9edd10e1d745

    mas naum compreendi bem oq deve ser feito...
    oq da pra tentar????

    vlw

  • andré
    avatar

    Bruno, estou com problema para criar classes no projeto...

    eu criei, via : add >> class , uma classe de teste chamada Grade,
    porem quando eu referencio uma instancia da classe, aparece o seguinte erro:

    warning C4930: 'Grade grade2(void)': prototyped function not called (was a variable definition intended?)

    e o codigo no construtor da class nao é executado...
    oq posso tentar fazer???

    flw

  • Bruno Crivelari Sanches
    avatar

    Experimente usar apenas:
    Grade grade2;

    T+

  • Reinaldo Deprera
    avatar

    Mels Dels :woohoo: Programação a 2 na cara larga!

    Não esquece da comissão em Bruno... você merce!

  • Washington
    avatar

    Tipo quando eu compilo algum programa em visual ele abri uma janela fecha na hora como faz para ficar

  • Washington
    avatar

    Deixa pra la li os comentarios a cima e conseguir :D

  • Scrofyle West  - Confusão
    avatar

    Ola Bruno acabei de baixar o mcsotf Visual da versão 2010 quase não estou entender nada por favor quero uma ajuda tua irmão,...até mais...

  • Scrofyle West  - CONFUSÃO
    avatar

    Ola Bruno como vai olha irmão acabei de baixar o micrsft visual da versão 2010 não estou conseguindo trabalho recorro a tua ajuda senão nunca vou mexer neste programa por favor quem domina bem este programa peço ajuda do início adiante...boa compreensão p'ra voces...espero a resposta.

  • Bruno Crivelari Sanches
    avatar

    A unica coisa que realmente mudou nele em relação ao 2008 foram algumas configurações, de resto esta quase tudo igual.

    Qual o seu problema?

  • Scrofyle West  - re: CONFUSÃO
    avatar

    o 2010 me parece complicado e acho que está um pouquinho veloz ao abrir as opções, o meu indica coisas mas o programa é quase diferente.
    preciso de ajuda é o microsoft visual c++ 2010

  • Bruno Crivelari Sanches
    avatar

    Que tipo de ajuda? Sem saber do que você precisa não tem como ajudar.

  • Scrofyle West  - re: re: CONFUSÃO
    avatar

    que está me complica é a pagina inicial dele vou no file>new project abertura é diferente do 2008, quero primeiro conhecer todas as ferramentas do programa e as funcionalidades ou funções do programa por favor manda-me o processo básico do 2010 ok irmão até a proxima....vc é um génio

  • Vinícius Godoy de Mendonça
    avatar

    A única mudança mais significativa que eu citaria é o fato de que o menu VC++ Directories agora fica no projeto, e não mais global em Windows->Preferences.

  • Anônimo
    avatar

    No site da visual so esta disponibilizado o visual c++ 2010 express edition.

    ele tem alguma diferença grande com o 2008 ou da pra fazer o tutorial normalmente?

  • Bruno Crivelari Sanches
    avatar

    É quase idêntico, a unica mudança significativa, como comentado ali em cima, é que a configuração de diretórios de bibliotecas, includes, etc, fica vinculado ao projeto e não a IDE, apesar de também ser possível configurar para a IDE toda.

  • Anônimo
    avatar

    Oi,eu estava instalando o visual studio e acabei selecionando Microsoft Office Developer Tools e queria saber como faço para mudar para Microsoft Visual C++ 2010.Obrigada.

  • Bruno Crivelari Sanches
    avatar

    Olá ,

    tente rodar o setup novamente, ele vai lhe dar a opção para instalar componentes adicionais, basta selecionar o visual ou remover o office.

    T+

  • Anônimo  - Criar mais de um arquivo num projeto
    avatar

    Boa noite, procurei bastante, porém não encontrei, como faço para fazer um projeto com dois arquivos .cpp sem que dê erro?

    Pois quando rodo o arquivo 2 , lá em baixo nos erros diz que o main já está declarado no arquivo 1.

    Obrigado

  • Bruno Crivelari Sanches
    avatar

    Cada projeto só pode ser uma função main, se você precisa de uma segunda, vai ter que criar um novo projeto.

    Basta clicar com o botão direito na solução selecionar "Add -> New Project".

    Ou então criar uma solução nova.

  • Carlos Alberto  - Criando projeto!
    avatar

    Oi, um amigo me mostrou o Visual Stúdio então baixei e instalei, porém toda vida que vou criar um novo projeto nunca consigo chegar a janela de edição. Faço o seguinte:New Project->Win32->Win32 Console Application, dou nome ao arquivo e quando clico em OK não vai, aparece uma janela como se quisesse abrir uma página da internet, coloquei o internet explorer como meu navegador padrão e mesmo assim não deu! Aparece uma janela me dando as opções de fechar o programa, depurá-lo ou procurar solução online, testei todas as três e o "burro continua empacado"!
    Meu SO é Windows 7 Home Premium, se puder me ajudar agradeço, pois já estou quase desistindo dele, ah o "Visual" que estou usando é o Visual Studio C++ 2010 Express que baixei no site da microsoft!

  • Bruno Crivelari Sanches
    avatar

    Nunca passei por esse problema. Aqui funciona perfeitamente com esses passos.

  • cristian calza  - erro
    avatar

    eu instalei tudo certo..
    ele ate funciono por um tempo.
    mas agora pede uma senha de acesso,sera q vc pode me ajudar.
    obrigado

  • Bruno Crivelari Sanches
    avatar

    Mesmo a versão Express precisa ser registrada. O próprio visual lhe da o link para você se cadastrar no site da ms, onde vai ser gerada a chave para liberar ele.

    T+

  • Sérgio  - Diferenças entre programas
    avatar

    BOA NOITE BRUNO,QUERO SABER SE OS PROGRAMSAS C# E C++ SÃO A MESMA COISA OU NÃO, E SE FOREM DISTINTOS,QUAIS SÃO AS DIFERENÇAS BÁSICAS.

    GRATO

  • Bruno Crivelari Sanches
    avatar

    C# e C++ não são programas, são linguagens. Sim, são bem diferentes e o conceito de trabalho em cada uma delas é bem diferente.

    T+

  • Andre
    avatar

    Olá Bruno, preciso de uma ajuda sobre como pegar a imagem de uma placa de captura para utilizala em uma aplicação em c++ no visual 2010.

    Desde já obrigado.

  • Bruno Crivelari Sanches
    avatar

    Olá Andre,

    nosso enfoque aqui é sobre jogos. Se precisa de uma ajuda mais genérica em C/C++ recomendo o grupo c & C++ Brasil: https://groups.google.com/group/ccppbrasil

    T+

  • Cesar  - Valeu pelo tutorial...
    avatar

    Excelente sua iniciativa de fazer esse tutorial companheiro. Está ajudando muito. Obrigado

  • Bruno Crivelari Sanches
    avatar

    Obrigado Cesar!

  • renato  - Problema visual studio 2008
    avatar

    Boa Tarde tudo bem? estou aprendendo a mexer no visual studio 2008, entao eu fiz uns 3 projetos usando no C++ usando o Qt, rodou lindo, ele executou tudo certinho! ai eu fui criar um formulario, so digitei os codigos corrigi os erros, agora o meu programa esta sem nenhum erro porem o start que e para mim executar o programa esta oculto, eu nao consigo executar o programa, ele esta na tela porem oculto, nao da para clicar, eu ja reparei ja desinstalei o visual ja instalei de novo e nada, alguem tem alguma solução? estou usando windows xp. obigado! abraços

  • Bruno Crivelari Sanches
    avatar

    Se acessando o menu Debug não tem a opção "start Debugging" e nem "Start without Debugging", verifique se foi carregado uma solução e se existe algum projeto dentro dela.


    Tente pressionar F5 ou CTRL+F5 para ver se o programa inicia.

  • renato
    avatar

    oie Bruno tbm nao rodou eu pressionei F5 ctrl F5 nao roda, os erros ele acha ai eu corrijo os erros e o botao start continua oculto, no debug so tem a opçao release e configuration manager.

  • Bruno Crivelari Sanches
    avatar

    Me parece que você esta confundindo a caixa de seleção de configuração com o menu "Debug". quando falo menu "Debug" me refiro ao menu na parte mais alta da tela, onde tem as opções File / Edit / View / Project / build / Debug / Tools / Window / Help

    Clique no menu debug que vai ter as opções mencionadas no artigo.

    T+

  • renato
    avatar

    entendi mais nao tem! o que tem aqui e file/edit/view/Qt/project/build/tools/test/window/help so essas opçoes. e o programa da um erro assim
    mais eu ja ouvi falar que isso nao tem nada a ver, eu nao sei estou começando a mexer com isso.. vc sabe alguma coisa Bruno?

    Warning 1 warning LNK4099: PDB 'vc_ib_1.pdb' was not found with 'C:\QtSDK\Desktop\Qt\4.7.3\msvc2008\lib\qt maind.lib' or at 'C:\Documents and Settings\renato\Meus documentos\Visual Studio 2008\Projects\FindDialog\Debug\vc_ib_1.pdb'; linking object as if no debug info qtmaind.lib

  • Bruno Crivelari Sanches
    avatar

    Até onde sei o Qt apenas instala plugin do visual nas versões pagas do visual, logo esse não é o express e pode ser que por ser um projeto Qt o plugin do Qt mude a configuração.

    Como nunca usei Qt com visual, não sei como ajudar.

    Essa mensagem não é erro, apenas um aviso, não vai impactar a execução.

    T+

  • renato
    avatar

    e vc nao conhece nenhuma outra soluçao para mim usar o visual studio Bruno? e pq aqui e uma empresa tem outros computadores eles tbm estão usando o visual studio e o Qt, e no menu deles aparece o debug, so no meu que ficou oculto ja pesquisei revirei e nao consegui resolver.

  • Bruno Crivelari Sanches
    avatar

    SE você clicar com botão direito do mouse na barra de menu, vai aparecer uma opção customize, verifica se o debug e as opções dele não estão la, vai ver você removeu elas do menu por engano.

    T+

  • renato
    avatar

    e Bruno deu algum pau loco aki no visual studio e eu nao removi nada, pq quando eu entro no menu tools depois options ai eu entro em debugging ai nao abre as opçoes general edit and continue nao abre essas opçoes e apare uma frase de erro assim an error ocurred loading this property page.. mais valeu pela ajuda abraços

  • renato
    avatar

    oie Bruno eu consegui achei nesse site como dar um reset no visual studio e voltou a funcionar o debugging

    http://social.msdn.microsoft.com/Forums/en/vsdebug/thread/99558b82- 7bd0-4f9b-8316-424c4318dd0a

    E Bruno vc nao tem nenhum material de C++ para me enviar ou livro que vc indique em português e pq estou começando agora e nao sei nada, se tiver algo e poder enviar no renatotizo@yahoo.com.br

    obrigado! abraços

  • renato
    avatar

    bom dia Bruno tudo bem? eu estou tentando rodar um programa no visual studio 2008 c++ so que esta dando esse erro vc conhece sabe o que poderia ser? abraços

    Error 1 error LNK2019: unresolved external symbol "private: class QString __thiscall MainWindow::strippedName(class QString const &)" (?strippedName@MainWindow@@AAE?AVQString@@ABV2@ ;@Z) referenced in function "private: void __thiscall MainWindow::setCurrentFile(class QString const &)" (?setCurrentFile@MainWindow@@AAEXABVQString@@@ Z) mainwindow.obj

  • Vinícius Godoy de Mendonça
    avatar

    Aparentemente, você não implementou a função strippedName que aceita como parâmetro uma QString&.

    Se implementou, verifique se a sintaxe está correta.

  • renato
    avatar

    Obrigado Vinicius parece que eu resolvi esse erro agora esta dando esse outro erro vÊ se vc conhece? e que eu estou mexendo agora com c++ e estou apanhando muito ainda rsrs

    Error 1 error LNK2019: unresolved external symbol "public: __thiscall FindDialog::FindDialog(class QWidget *)" (??0FindDialog@@QAE@PAVQWidget@@@Z) referenced in function "private: void __thiscall MainWindow::find(void)" (?find@MainWindow@@AAEXXZ) mainwindow.obj

  • Vinícius Godoy de Mendonça
    avatar

    Todo erro de linker geralmente significa a mesma coisa: Algo foi encontrado no .h, mas não foi encontrado no .cpp, ou nas libs do projeto.

    Como você pode ver na mensagem de erro ele reclama do construtor da classe FindDialog, especificamente um que recebe um QWidget* como parâmetro.

    Esse construtor está mesmo implementado?

  • Anônimo
    avatar

    oie entao eu estou olhando agora mais nem sei se esta sendo implementado ou nao e pq estou começando a mexer com c++ agora, entao estou apanhando muito, e nao tem ninguem me ensinando aki, vc tem algum livro em português de c++ para me indicar? ou apostila? e que eu comecei pelo Qt mais ainda nao conheço muito.. entao nao sei nem esses erros aonde concertar!

  • Vinícius Godoy de Mendonça
    avatar

    Sim, dê uma olhada em nosso roadmap:
    http://pontov.com.br/site/cpp/46-conceitos-basicos/88-roadmap-c

    Inclui livros gratuitos de C++, em português.

  • Bruno Crivelari Sanches
    avatar

    Apenas reforço o link sugerido pelo Vinícius e ainda sugiro deixar Qt de lado por enquanto, até se familiarizar com a linguagem.

  • Pedro
    avatar

    Eu gostaria de saber se o Visual C++ faz interface gráfica, diferentemente do Dev C++?

    Grato, Pedro.

  • Vinícius Godoy de Mendonça
    avatar

    Oi.

    O DevCpp não é mais uma boa opção para desenvolvimento hoje em dia. É uma IDE velhíssima, com um compilador igualmente pré-histórico.

    No C++, existem diversas bibliotecas para construção de interfaces gráficas. Não sei qual você usa no Dev, mas creio que seja a wxWidgets.

    O Visual Studio trabalha muito com a MFC e, nas últimas versões, com o Windows Forms. É uma boa plataforma, porém, não permite que você compile suas aplicações fora do Windows.

    Se você quiser uma aplicação portável, sugiro usar o QT Creator, da Nokia. É mais fácil e mais poderoso que o que você provavelmente está usando.

    Uma alternativa pequena, leve e também baseada em wxWidgets, como o DevCpp é o Code::Blocks. Use-o se precisar de uma IDE portátil (do tipo que vc instala num pendrive, e leva para onde quiser).

    não use o DevCpp.

  • Michael Angelo  - Versão do C++
    avatar

    Olá !

    Alguém sabe como ver qual a versão do C++ usada pelo Visual Studio 2010?

    Abraços,
    Michael

  • Vinícius Godoy de Mendonça
    avatar

    Clique em Project->Properties.

    Na janela que abrir, selecione na árvore
    Configuration Properties->General

    Procure pelo campo Platform Toolset.

    Se estiver escrito v100 é porque é o Visual C++ 10.0 (última versão).
    v90 é o Visual C++ 9.0 (versão anterior). E assim por diante.

  • Ana Mearpi
    avatar

    Eu consegui achar, só ñ consigo consertar o erro pois esta certo o código, veja:
    #include
    void main ()
    {
    int Dias;
    float Anos;
    printf ("Entre com o número de dias: ";);
    scanf ("%d",&Dias);
    Anos=Dias/365.25;
    printf ("\n\n%d dias equivalem a %f anos.\n",Dias,Anos);
    }

  • Ana Mearpi  - re:
    avatar

    Eu baixei o Visual C e C++, e está dizendo que tem 2 erros mais não consigo identificar quais são!!!
    Veja o código que eu postei acima.

  • Bruno
    avatar

    Qual a mensagem de erro do compilador?

  • faster  - faster
    avatar

    ana use int main () em vez de void main ()

  • Arnaldo  - ...
    avatar

    Olá!Sou novato na área do C++ , eu pratico no Visual Basic 2008,mas ai descobri esse e fui logo baixar,não entendo nada,mas vou aprender,eu crio jogos e alguns programas e nada é impossivel....meus parabens!Vocês me ajudaram muito. :whistle:

  • Arnaldo  - Não estou conseguindo me cadastrar
    avatar

    Eu não consigo me cadastrar!!!!Ele me da o serial mas depois que eu introduzo o serial,fala que esta errado ou não existe!

  • Bruno Crivelari Sanches
    avatar

    Tente gerar novo serial, se não funcionar contacte o suporte da ms.

    T+

  • Arnaldo  - Obrigado...
    avatar

    Obrigado :confused: ....gerar um novo serial não deu certo....na verdade,eu criei um email novo mas mesmo assim esta dando o mesmo serial e o mesmo erro,eu testei no email de alguns amigos e falei para eles confirmarem mas sempre da o mesmo serial e o mesmo erro ¬¬ vou contatar a ms,acho que o site esta burlado,vou contatar a ms agora....mas como eu não sei se tem que traduzir a mensagem para ingles....vou mandar uma traduzida e outra em portugues,por enquanto estou estudando mais um pouquinho....comprei 3 apostilas e 1 livro para estudar o C++ :D obrigado por me avisar,nem tinha me passado na cabeça de me contatar ao suporte da Ms :whistle: como eu estou aqui....qual a diferença entre a linguagem C,Vb e aquela antiga la...o Ms-Dos eu acho?Qual a mais legal de aprender?Eu crio por diversão e para divulgar meus projetos,tanto que criei um blog para eles né..quero aprender um pouco de cada um,mas vou começar pela mais facil,e ja passei da fase do Visual Basic :unsure:

  • Bruno Crivelari Sanches
    avatar

    Diferença entre C e VB? Digamos quase tudo... acho que lendo aqui http://pt.wikipedia.org/wiki/Visual_Basic e aqui http://pt.wikipedia.org/wiki/C_(linguagem_de_programa%C3%A7%C3%A3o) deve dar uma noção...

    Ms-Dos não é linguagem...

    T+

  • Anônimo
    avatar

    Você esqueceu de dizer onde fica o programa, amigão

  • Bruno Crivelari Sanches
    avatar

    Do visual? Existem vários links ao longo do artigo, basta clicar em um deles...

  • Marcelo
    avatar

    Caro Bruno, estou começamdo a usar o Visual C++ Express 2010, e fiz o meu primeiro projeto, segui os passos indicados aqui. Mas dá umas menssagens quando compilo tipo:

    "......'C:\Windows\..............\ntdll.dll', Cannot find or open the PDB file
    ......'C:\Windows\..............\kernel132.dll', Cannot find or open the PDB file
    ......'C:\Windows\..............\msvcr100d.dll', Símbolos carregados.
    O programa '[4456] meuPrimeiroProjeto.exe: Nativo' foi encerrado com o código 0 (0x0).

    Realmente já procurei muita ajuda na net mas nada consegui encontrar, espero que você possa me ajudar.

    Aguardo sua resposta.

  • Bruno Crivelari Sanches
    avatar

    Isso não é problema, o visual esta tentando carregar simbolos de debug dos componentes do próprio windows, que é claro ele não vai encontrar.

    Depois o seu programa foi executado e terminou a execução, não tem problemas ai. Correu tudo normalmente.

    T+

Escrever um comentário
Your Contact Details:
Gravatar enabled
Comentário:
[b] [i] [u] [url] [quote] [code] [img]   
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch::(:shock:
:X:side::):P:unsure::woohoo::huh::whistle:;):S:!::?::idea::arrow:
Security
Por favor coloque o código anti-spam que você lê na imagem.
LAST_UPDATED2  

Busca

Linguagens

Twitter