Jump to content
TLThings

Actualizar source de cliente para compilar no VS2017


Recommended Posts

Boa Noite.

Como o Titulo diz vou ensinar a actualizar uma source criada num Visual Studio mais antigo para compilar no 2017 e para isso vamos precisar:

VS2017

SDK 7.1

A source de um cliente neste caso vou usar 

e tambem precisamos do Cryptopp 5.6.1 e libjpeg

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

 

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

 

Agora que ja temos tudo  vamos compilar o cryptopp561 para isso vamos a pasta e abrimos o ficheiro ''cryptest.sln'' com o Visual Studio 2017 e compilamos no modo Debug deixamos acabar e voltamos a compilar no modo Release quando acabar vamos para a pasta onde ficaram as libs compiladas  ''Tutorial\cryptopp561\Win32\Output'' e dentro dessa pasta vao ter duas pastas Debug e Release dentro de cada uma dessas pastas terao um ficheiro chamado cryptlib.lib esses 2 fucheiros deverao ser renomeados entao renomei o que esta dentro da pasta Debug para Cryptopp_lib_debug e o que esta dentro da pasta release para Cryptopp_lib_release.lib estes 2 ficheiros depois de renomeados devem ser copiados para a pasta das libs na extern da source do cliente neste cliente seria ''ClienteMetin2_speed\extern\library'' ele vai pedir para substituir e substituimos. (Na source de outros clientes estes ficheiros podem ser encontrados com outros nomes se nao pedir para substituir quando estiver a copiar estranhe e procure ficheiros com nomes parecidos).

Agora vamos ao libjpeg tambem vamos ter de compilar este mas de maneira diferente vamos abrir ''Developer Command Prompt for VS 2017'' que e uma linha de comandos nessa linha de comandos vamos executar o comando ''cd'' para a pasta do lib jped sera quaquer coisa como isto:

cd C:\Users\migue\Desktop\Tutorial\jpeg-6b

e depois vamos dar o seguinte comando

set INCLUDE=%INCLUDE%;c:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include

e depois desse outro que ja nos vai compilar a lib

nmake /f makefile.vc  nodebug=1 libjpeg.lib

e agora dentro da pasta jpeg-6b devemos ter um ficheiro chamado ''libjpeg.lib'' este ficheiro foi compilado com a flag nodebug=1 por outras palavras Release mode entao deve ser renomeado para ''libjpeg-6bMT.lib'' e copiado para a pasta ''ClienteMetin2_speed\extern\library''  depois disso devemos procurar por todos os ficheiros .obj na pasta jpeg-6b e apagalos depois disso voltamos a ;ina de comandos do visual studio e damos o seguinte comando :

nmake /f makefile.vc  libjpeg.lib

que nos vai recompilar a source mas desta vez nao usamos a flag nodebug portanto compilamos em Release mode vamos voltar a procurar o ficheiro  ''libjpeg.lib'' dentro da pasta jpeg-6b e vamos renomealo para 

''libjpeg-6bMTd.lib'' e copialo para a pasta ''ClienteMetin2_speed\extern\library''.

Ok agora ja temos a as libs compiladas no VS2017 na nossa source do cliente vamos abrir a solução para podermos alterar algumas coisa no codigo.

Entao vamos ao projecto SphereLib e vamos abrir o ficheiro spherepack.h nesse ficheiro vamos procurar

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

guardamos e passamos ao proximo ficheiro que vai ser no projecto EterLib  o ficheiro JpegFile.cpp

neste vai ser um pouco mais compicado vamos ter de encontar todos os data e size e renomealos para outra coisa por exemplo size_1 e data_1 ou sizeX e dataX...

Mostrar vos como fazer mas se me esquecer de algum e der erro a compilar e so ver o que esta sublinhado a vermelho e alterar

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

depois de alterar isto no mesmo projecto vamos alterar o ficheiro JpegFile.h

e vamos fazer os mesmo

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

agora dentro do projecto UserInterface vamos procurar o ficheiro UserInterface.rc e vamos dar 2 cliques em cima o VS vai abrir um modo de exploração onde vamos clicar no mesmo ficheiro UserInterface.rc com o botao direito do rato e vamos clicar no menu incluir recursos dentro desse menu vao encontrar a inclusao

#include "afxres.h"

que tem de ser alterada para isto

#include "winres.h''

depois de feito isto podemos compilar o cliente e deve funcionar em caso de algum erro ou de nao percebam porque e um dos meus primeiros tutoriais e nao sou muito bom professor e so perguntar que estou ca para ajudar

Aqui deixo tambem a source do cliente ja actualizada no caso de alguem a quere e nao querer ter este trabalho de actualizar.

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

Hidden Content

    Give reaction or reply to this topic to see the hidden content.

Créditos a mim pelo Tutorial

Terri Lopes pela source do cliente.

Tutorial feito para TMoore Tutorials por favor nao compartilhar em outras comunidades.

Edited by MiguelFC
Adicionados Source VS2017 e Creditos
  • Like 12
  • Upvote 1
Link to post
Share on other sites
  • 10 months later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.