Visual Studio 2008 com o Vista, projetos GLUT dá erro em tempo de execução
-
16-09-2019 - |
Pergunta
Eu tenho certeza que não há nada de errado com o meu projeto. Porque eu tentei no meu ex computador com visual studio 2005 e Windows XP Pro, e ele funciona livre de erros.
Eu posso compilar meu projeto. Não há erros na fase de construção. Mas quando tento executar o meu projeto diz "* .exe parou de funcionar".
Então eu corri-lo em modo de depuração. Vi que me leva a uma linha em glut.h
static int APIENTRY glutCreateWindow_ATEXIT_HACK(const char *title)
{
return __glutCreateWindowWithExit(title, exit);
}
Eu realmente não entendo por que ele não está funcionando ..
Copiei glut32.dll para C: \ Windows \ System32
glut.h para C: \ Program Files \ Microsoft Visual Studio 9.0 \ VC \ include \ GL
e glut32.lib para C: \ Program Files \ Microsoft Visual Studio 9.0 \ VC \ lib
Solução
Você tentou desligar DEP (prevenção de execução de dados) na sua aplicação?
clique direito em Meu computador e ir para as configurações de memória virtual. Sob a guia DEP, adicionar seu aplicativo à lista de ignorados.
Você pode precisar de um novo glut.h, ou reescrever o seu. Ou seja, uma biblioteca GLUT diferente.
Outras dicas
Eu vejo erros como este muito - o que outros arquivos que você está incluindo? Tente incluir "glut.h" antes ou depois de todos os outros cabeçalhos. Além disso, se você incluir glut.h, você não precisa gl.h ou glu.h -. Eles estão automaticamente incluídos
Por alguma razão, o glut.h não joga bem com os outros cabeçalhos. Pode haver uma resposta mais técnica para a pergunta ou uma solução melhor, mas alterando a ordem sempre trabalhou para mim!