Comnpilacion inicial de libreria partiendo de la de v2008

master
Gerardo 2020-04-06 12:58:42 +02:00
commit 976c758abd
23 changed files with 1984 additions and 0 deletions

5
.gitignore vendored Normal file
View File

@ -0,0 +1,5 @@
/Debug/*
/Release/*
/x64/*
/licUtiles.aps
/licUtiles.vcproj.NELIAM.Elena.user

132
ConexionClienteLicSrv.cpp Normal file
View File

@ -0,0 +1,132 @@
#include "StdAfx.h"
#include "ConexionClienteLicSrv.h"
#define MODULO "ConexionClienteLicSrv"
#include "_log.h"
#include "licencia.h"
ConexionClienteLicSrv::ConexionClienteLicSrv(void)
{
pirate =false;
}
ConexionClienteLicSrv::~ConexionClienteLicSrv(void)
{
}
void ConexionClienteLicSrv::run()
{
int nr =0;
C_log::log(MODULO, "Iniciada Conexion");
Licencia lic;
BYTE bufout[sizeof(int)+sizeof(Licencia)];
if(!manager)
pirate =true;
while(!pirate && (!soc->pirate || !*soc->pirate))
{
if(soc->sock_cerrado)
{
pirate = true;
C_log::log(MODULO, "Cliente desconectado");
continue;
}
if(!soc->recibe_package(0))
{
nr++;
if(nr>1000)
{
pirate = true;
C_log::log(MODULO, "Sobrepasado tiempo de espera.");
}
else
Sleep(1);
continue;
}
nr =0;
//recive package-------------
if(soc->nb<sizeof(int))
{
C_log::log(MODULO, "Datos erroneos");
pirate = true;
continue;
}
int idp = *(int*)soc->buf;
int nb =soc->nb-(sizeof(int));
void* buf = &((int*)soc->buf)[1];
switch(idp)
{
case(PETICION_GENERAL_OK):
if(!envia(PETICION_GENERAL_OK))
{
C_log::log(MODULO, "Error al enviar no");
pirate = true;
}
break;
case(PETICION_GENERAL_PRESENTA):
if(nb!=sizeof(Licencia))
{
C_log::log(MODULO, "Presenta defectuoso");
envia(PETICION_GENERAL_NO);
pirate = true;
break;
}
if(!lic.setLic(buf))
{
C_log::log(MODULO, "Licencia defectuosa");
envia(PETICION_GENERAL_NO);
pirate = true;
break;
}
//seguridad--------------
lic.set_nulls();
C_log::log(MODULO, "Peticion licencia: user: %s produc: %s, clave: %s, version: %s idm: %s", lic.nombre_user, lic.nombre_producto, lic.clave, lic.version_producto, lic.idm);
if(!manager->Get(&lic) || !lic.getLic((void*)&bufout[sizeof(int)]))
{
C_log::log(MODULO, "Licencia No conseguida");
envia(PETICION_GENERAL_NO);
pirate = true;
}
if(lic.id<0)
{
C_log::log(MODULO, "Sin licencia");
envia(PETICION_GENERAL_NO);
}
(*(int*)bufout) = PETICION_GENERAL_OK;
if(!envia(bufout, sizeof(int)+sizeof(Licencia)))
{
C_log::log(MODULO, "Error al enviar licencia");
pirate = true;
}
break;
case(PETICION_GENERAL_NO):
C_log::log(MODULO, "Peticion de fin");
pirate = true;
break;
default:
C_log::log(MODULO, "id no reconocido");
pirate = true;
break;
}
}
}
//*****************************************************************************
bool ConexionClienteLicSrv::envia(int id)
{
return soc->envia_package((BYTE*)&id, sizeof(id)) == TRUE;
}
//*****************************************************************************
bool ConexionClienteLicSrv::envia(void *buf, int siz)
{
return soc->envia_package((BYTE*)buf, siz) == TRUE;
}
//*****************************************************************************

24
ConexionClienteLicSrv.h Normal file
View File

@ -0,0 +1,24 @@
#pragma once
#include "LicUtilesDef.h"
#include "proceso_cliente.h"
#include "sock_sv.h"
#include "LicenciasManager.h"
class LICUTL_EXPORT ConexionClienteLicSrv :
public Cproceso_cliente
{
public:
bool pirate;
LicenciasManager *manager;
ConexionClienteLicSrv(void);
~ConexionClienteLicSrv(void);
virtual void run();//funcion que hace el thread
private:
bool envia(int id);
bool envia(void *buf, int siz);
};

214
LicCliente.cpp Normal file
View File

@ -0,0 +1,214 @@
#include "StdAfx.h"
#include "LicCliente.h"
#include "b_file.h"
#include "Csock_cl.h"
//*********************************************************************************************************************
LicCliente::LicCliente(void)
{
lic.clear();
pathf[0]=0;
}
//*********************************************************************************************************************
LicCliente::~LicCliente(void)
{
}
//*********************************************************************************************************************
bool LicCliente::cargaLicencia( LicClientEscucha* escucha, char* exePath )
{
this->escucha = escucha;
lic.clear();
pathf[0]=0;
if(!lic.fillLic(exePath))
{
escucha->muestaError("Error, no se puede inicializar licencia", lic.nombre_producto);
return false;
}
//revisa archivo--------------
if(!cargaArchivo())
{
if(!escucha->getClave(lic.clave, lic.nombre_producto))
return false;
}
if(!lic.clave[0])
{
lic.id = -1;
goto fin;
}
lic.instaVersion[0]=0;
//conecta---------------------
conectaServer();
fin:
if(lic.id<0)
{
lic.permisos =0;
escucha->muestaError("Sin licencia para este producto", lic.nombre_producto);
borraFileLic();
return false;
}
grabaFile();
if(lic.instaVersion[0] && strcmp(lic.instaVersion, lic.version_producto))
{
if(!escucha->descargaInstalador(&lic))
return false;
}
return lic.id >=0 ;
}
//*********************************************************************************************************************
bool LicCliente::cargaArchivo()
{
Cb_file f;
char str[128];
if(lic.nombre_producto[0])
sprintf(str,"%s.lic",lic.nombre_producto);
else
strcpy(str,LU_DEFAULT_FILE);
if(!f.abre(str,1))
{
pathf[0]=0;
if(!escucha->getPathLic(pathf, lic.nombre_producto)|| !pathf[0] || !f.abre(pathf,1))
{
if(!pathf[0])
strcpy(pathf, str);
return false;
}
}
else
strcpy(pathf, str);
Licencia l;
if(!l.leeLic(&f))
return false;
if(l.tipo == 2)//licencia propietario
{
l.fillidmYuser();
}
if(strcmp(l.idm, lic.idm)|| strcmp(l.nombre_producto, lic.nombre_producto))
return false;
strcpy(l.version_producto, lic.version_producto);
lic = l;
lic.id;
//comprueba fechas----------------
if(lic.tipo == 1)
{
//CTime tiempo = CTime::GetCurrentTime();
__int64 tact = CTime::GetCurrentTime().GetTime();
if(lic.caducidad<=tact || (lic.ultimo_acceso+lic.renovacion)<=tact)
lic.id = -1;
}
return true;
}
//*********************************************************************************************************************
void LicCliente::grabaFile()
{
Cb_file f;
if(!f.abre(pathf,2) || !lic.grabaLic(&f))
escucha->muestaError("Error al grabar licencia", lic.nombre_producto);
}
//*********************************************************************************************************************
void LicCliente::borraFileLic()
{
DeleteFile(pathf);
}
//*********************************************************************************************************************
void LicCliente::conectaServer()
{
Csock_cl* sc = new Csock_cl();
BYTE bufout[sizeof(int)+sizeof(Licencia)];
int fin =PETICION_GENERAL_NO;
int idp;
int nb ;
int ii=0;
char LicServerUrl[128];
int puerto = lic.puertoServerLic;
strcpy(LicServerUrl, lic.LicServerUrl);
for(int ii =0; ii<2; ii++)
{
sc->conectar(LicServerUrl, puerto);
if(envia_ok(sc))
break;
if(!escucha->getServer(LicServerUrl, &puerto, lic.nombre_producto))
return;
}
if(ii>=2)
{
delete sc;
return;
}
lic.puertoServerLic =puerto;
strcpy(lic.LicServerUrl, LicServerUrl);
(*(int*)bufout) = PETICION_GENERAL_PRESENTA;
lic.getLic(&bufout[sizeof(int)]);
if(!sc->envia_package(bufout,sizeof(int)+sizeof(Licencia)))
{
delete sc;
return;
}
if(!sc->recibe_package(0))
{
delete sc;
return;
}
idp = *(int*)sc->buf;
nb =sc->nb-(sizeof(int));
void* buf = &((int*)sc->buf)[1];
sc->envia_package((BYTE*)&fin, sizeof(fin));
if(nb<sizeof(Licencia) || idp != PETICION_GENERAL_OK)
{
if( idp != PETICION_GENERAL_OK)
lic.id = -1;
delete sc;
return;
}
lic.setLic(buf);
delete sc;
}
//*********************************************************************************************************************
bool LicCliente::envia_ok(Csock_cl* sc)
{
int pok=PETICION_GENERAL_OK;
if(!sc->envia_package((BYTE*)&pok, sizeof(int)))
{
return false;
}
if(!sc->recibe_package(0))
{
return false;
}
return (sc->nb == sizeof(int)) && (*(int*)sc->buf == pok);
}
//*********************************************************************************************************************
bool LicCliente::isLicencia()
{
return lic.id >=0;
}
//*********************************************************************************************************************
int LicCliente::getPermisos()
{
return lic.permisos;
}
//*********************************************************************************************************************
bool LicCliente::creaLicPropietaria( char *key, int tipo, char *path )
{
lic.clear();
lic.fillLic(path);
strcpy(lic.clave, key);
lic.tipo = tipo;
lic.idm[0]=0;
lic.id = 0;
lic.nombre_user[0]=0;
sprintf(pathf,"%s.lic", lic.nombre_producto);
grabaFile();
return true;
}
//*********************************************************************************************************************

25
LicCliente.h Normal file
View File

@ -0,0 +1,25 @@
#pragma once
#include "Licencia.h"
class Csock_cl;
class LICUTL_EXPORT LicCliente
{
private:
Licencia lic;
LicClientEscucha* escucha;
char pathf[257];
public:
LicCliente(void);
~LicCliente(void);
bool cargaLicencia(LicClientEscucha* escucha, char* exePath= NULL);
bool creaLicPropietaria(char *key, int tipo, char *path);
bool isLicencia();//devuelve si tiene licencia o no
int getPermisos();//devuelve permisos
private:
bool cargaArchivo();
void borraFileLic();//borra archivo licencia
void grabaFile();//borra archivo licencia
void conectaServer();
bool envia_ok(Csock_cl* sc);
};

68
LicUtiles.cpp Normal file
View File

@ -0,0 +1,68 @@
#include "StdAfx.h"
#include "LicUtiles.h"
#include "Resource.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
//
//TODO: If this DLL is dynamically linked against the MFC DLLs,
// any functions exported from this DLL which call into
// MFC must have the AFX_MANAGE_STATE macro added at the
// very beginning of the function.
//
// For example:
//
// extern "C" BOOL PASCAL EXPORT ExportedFunction()
// {
// AFX_MANAGE_STATE(AfxGetStaticModuleState());
// // normal function body here
// }
//
// It is very important that this macro appear in each
// function, prior to any calls into MFC. This means that
// it must appear as the first statement within the
// function, even before any object variable declarations
// as their constructors may generate calls into the MFC
// DLL.
//
// Please see MFC Technical Notes 33 and 58 for additional
// details.
//
// CFileTransferApp
BEGIN_MESSAGE_MAP(LicUtilesApp, CWinApp)
END_MESSAGE_MAP()
// CFileTransferApp construction
LicUtilesApp::LicUtilesApp()
{
// TODO: add construction code here,
// Place all significant initialization in InitInstance
}
// The one and only CFileTransferApp object
LicUtilesApp theApp;
// CFileTransferApp initialization
BOOL LicUtilesApp::InitInstance()
{
CWinApp::InitInstance();
if (!AfxSocketInit())
{
//AfxMessageBox(IDP_SOCKETS_INIT_FAILED);
return FALSE;
}
return TRUE;
}

22
LicUtiles.h Normal file
View File

@ -0,0 +1,22 @@
#ifndef __AFXWIN_H__
#error "include 'stdafx.h' before including this file for PCH"
#endif
#include "resource.h" // main symbols
// CFileTransferApp
// See FileTransfer.cpp for the implementation of this class
//
class LicUtilesApp : public CWinApp
{
public:
LicUtilesApp();
// Overrides
public:
virtual BOOL InitInstance();
DECLARE_MESSAGE_MAP()
};

44
LicUtilesDef.h Normal file
View File

@ -0,0 +1,44 @@
#pragma once
#ifndef LICUTL_EXPORT
#ifdef _WINDLL
#define LICUTL_EXPORT __declspec(dllexport)
#else
#define LICUTL_EXPORT __declspec(dllimport)
#endif
#define VERSION_LICENCIA 100
#define LU_LICENCIA_CADUCA 1 //licencia normal
#define LU_LICENCIA_PROPIETARIA 2 //licencia propietaria, por defecto da licencia
#define LU_DEFAULT_FILE "data.lic"
#define LU_DEFAULT_SERVER "desa.narvaling.com"
//#define LU_DEFAULT_SERVER "192.168.1.60"
#define LU_DEFAULT_PUERTO 8051
class Licencia;
//structuras
class LICUTL_EXPORT DBLicProvider
{
public:
virtual bool fill( Licencia* lic )=0;//rellena datos licencia
virtual int licCount( Licencia* lic )=0;//cuenta numero de licencias
virtual bool fillInstal( Licencia* lic )=0;//rellena instalador
virtual bool setAcceso( Licencia* lic, __int64 *ultAcc, __int64 *actualAcceso)=0;
virtual bool getConf( char *ip, int *port )=0;//configuracion de escucha
};
class LICUTL_EXPORT LicClientEscucha
{
public:
virtual bool getClave(char* clave, char* producto )=0;//pide clave (pidiendosela al usuario)
virtual bool getServer( char*server, int *puerto, char* producto){ server[0]=0;*puerto=0;return false;}//pide servidor de licencias (no obligada)
virtual bool getPathLic( char* path, char* producto ){path[0]=0; return true;}//pide path de archivo de licencia (no obligada)
virtual void muestaError(char* info, char* producto){}
virtual bool descargaInstalador(Licencia *lic){return true;}//true si revisamos instalador, false si no
};
#endif

124
Licencia.cpp Normal file
View File

@ -0,0 +1,124 @@
#include "StdAfx.h"
#include "Licencia.h"
#include "utl.h"
#include "dir_manager.h"
#include "b_file.h"
#include "LicUtilesDef.h"
#include "_app.h"
//*********************************************************************************************************************
Licencia::Licencia(void)
{
clear();
}
void Licencia::clear()
{
memset(this, 0, sizeof(Licencia));
id = -1;
}
//*********************************************************************************************************************
Licencia::~Licencia(void)
{
}
//*********************************************************************************************************************
void* Licencia::getLic( void *buf )
{
memcpy(buf,this, sizeof(Licencia));
Cutl::cifra1((BYTE*)buf, sizeof(Licencia));
return buf;
}
//*********************************************************************************************************************
Licencia* Licencia::setLic( void *buf )
{
Cutl::descifra1((BYTE*)buf, sizeof(Licencia));
*this=*(Licencia*)buf;
return this;
}
//*********************************************************************************************************************
char* Licencia::getIdm( char *buf )
{
return Cutl::id_pc(buf,128);
}
//*********************************************************************************************************************
bool Licencia::fillLic( char* pathProducto /*= 0;*/ )
{
char path[256];
strcpy(LicServerUrl, LU_DEFAULT_SERVER);
puertoServerLic = LU_DEFAULT_PUERTO;
Cutl::getWinUser(path)[31] = 0;
strcpy(nombre_user,path);
if(pathProducto)
strcpy(path, pathProducto);
else
{
if(C_app::GetApp()->archi.path_ejecutable[0] == 0)
{
if(!C_app::GetApp()->archi.rellena_dirs_ejecucion())
return false;
}
strcpy(path,C_app::GetApp()->archi.path_ejecutable);
}
if(!getIdm(idm))
return false;
if(!Cdir_manager::getVersionFile(path,version_producto))
return false;
char name[32];
if(!Cdir_manager::nombre_archivo(path,name))
return false;
char *ext =Cdir_manager::extension_archivo(name);
if(ext)
*(ext-1)=0;
strcpy(nombre_producto, name);
return true;
}
//*********************************************************************************************************************
bool Licencia::leeLic( Cb_file * f )
{
int i;
Licencia buf;
if(!f->lee(&i, sizeof(int)) || i != VERSION_LICENCIA)
return false;
if(!f->lee(&buf, sizeof(buf)))
return false;
setLic(&buf);
*this = buf;
return true;
}
//*********************************************************************************************************************
bool Licencia::grabaLic( Cb_file * f )
{
int i=VERSION_LICENCIA;
Licencia buf;
if(!f->escribe(&i, sizeof(int)))
return false;
if(!f->escribe(getLic(&buf), sizeof(Licencia)))
return false;
return true;
}
//*********************************************************************************************************************
void Licencia::set_nulls()
{
clave[31]=0;
nombre_user[31]=0;
version_producto[31]=0;
idm[127]=0;
nombre_producto[127]=0;
instaUsu[31]=0;
instaKey[31]=0;
instaVersion[31]=0;
}
//*********************************************************************************************************************
bool Licencia::fillidmYuser()
{
char buf[256];
Cutl::getWinUser(buf)[31] = 0;
strcpy(nombre_user,buf);
return getIdm(idm)!= NULL;
}
//*********************************************************************************************************************

51
Licencia.h Normal file
View File

@ -0,0 +1,51 @@
#pragma once
#include "LicUtilesDef.h"
class Cb_file;
class LICUTL_EXPORT Licencia
{
public:
__int64 caducidad;
__int64 renovacion;
__int64 ultimo_acceso;
int id;
int tipo;
int permisos;
int max_user;//uso interno
int idCliente;//uso interno
int idProducto;//uso interno
int puertoServerLic;
char clave[32];
char nombre_user[32];
char idm[128];
char LicServerUrl[128];
char nombre_producto[128];
char version_producto[32];
//info instalador---------------------
int instaId;
char instaServer[128];
char instaUsu[32];
char instaKey[32];
char instaPath[256];
char instaDescrip[256];
char instaVersion[32];
Licencia(void);
~Licencia(void);
bool leeLic(Cb_file * f);
bool grabaLic(Cb_file * f);
void clear();
void set_nulls();
void* getLic( void *buf);
Licencia* setLic( void *buf);
bool fillLic(char* pathProducto = 0);
bool fillidmYuser();
private:
char* getIdm(char *buf);//buffer de tamaño 128
};

91
LicenciasManager.cpp Normal file
View File

@ -0,0 +1,91 @@
#include "StdAfx.h"
#include "LicenciasManager.h"
#include "licencia.h"
#define MODULO "LicenciasManager"
#include "ConexionClienteLicSrv.h"
#include "_log.h"
//************************************************************************
LicenciasManager::LicenciasManager(void)
{
}
//************************************************************************
LicenciasManager::~LicenciasManager(void)
{
fin();
}
//************************************************************************
Licencia* LicenciasManager::Get( Licencia* lic )
{
if(!dbProvider->fill(lic))
{
C_log::log(MODULO, "Sin licencia, clave: %s usuario: %s; producto: %s idm: %s",lic->clave, lic->nombre_user, lic->nombre_producto, lic->idm);
lic->id =-1;
return lic;
}
__int64 accesodb, accesoAct;
if(!dbProvider->setAcceso(lic,&accesodb, &accesoAct))
{
C_log::log(MODULO, "Sin al guardar acceso, clave: %s usuario: %s; producto: %s idm: %s",lic->clave, lic->nombre_user, lic->nombre_producto, lic->idm);
lic->id =-1;
return lic;
}
lic->ultimo_acceso = accesoAct;
if(lic->tipo == LU_LICENCIA_CADUCA)
{
if(lic->caducidad<=accesoAct)
{
C_log::log(MODULO, "Licencia caducada clave: %s usuario: %s; producto: %s idm: %s",lic->clave, lic->nombre_user, lic->nombre_producto, lic->idm);
lic->id =-1;
return lic;
}
if(lic->max_user>=0)
{
int nlic =dbProvider->licCount(lic);
if(nlic>lic->max_user)
{
C_log::log(MODULO, "Maximo numero de usuarios alcanzado en licencia clave: %s usuario: %s; producto: %s idm: %s",lic->clave, lic->nombre_user, lic->nombre_producto, lic->idm);
lic->id =-1;
return lic;
}
}
}
if(lic->instaId>=0)
{
if(!dbProvider->fillInstal(lic))
C_log::log(MODULO, "Error al rellenar instalador clave: %s usuario: %s; producto: %s idm: %s",lic->clave, lic->nombre_user, lic->nombre_producto, lic->idm);
}
return lic;
}
//************************************************************************
bool LicenciasManager::inicia( DBLicProvider* dbProv )
{
if(!dbProv)
return false;
dbProvider = dbProv;
sc.escucha = this;
char ip[128];
int port;
dbProv->getConf(ip, &port);
bool res =sc.liseningThread(port,ip)== TRUE;
if(res)
C_log::log(MODULO, "Escucha en ip: %s:%ld;",ip, port);
return res;
}
//************************************************************************
void LicenciasManager::fin()
{
sc.close();
}
//************************************************************************
Cproceso_cliente* LicenciasManager::crea_cliente( BOOL *pirate )
{
ConexionClienteLicSrv* cli = new ConexionClienteLicSrv();
cli->manager = this;
return cli;
}
//************************************************************************

19
LicenciasManager.h Normal file
View File

@ -0,0 +1,19 @@
#pragma once
#include "LicUtilesDef.h"
#include "sock_sv.h"
class Licencia;
class LICUTL_EXPORT LicenciasManager : Cescucha_sock_sv
{
DBLicProvider* dbProvider;
Csock_svThread sc;
public:
LicenciasManager(void);
~LicenciasManager(void);
bool inicia(DBLicProvider* dbProvider);
void fin();
Licencia* Get(Licencia* lic);
virtual Cproceso_cliente* crea_cliente( BOOL *pirate );
private:
};

54
ReadMe.txt Normal file
View File

@ -0,0 +1,54 @@
========================================================================
DYNAMIC LINK LIBRARY : licUtiles Project Overview
========================================================================
AppWizard has created this licUtiles DLL for you.
This file contains a summary of what you will find in each of the files that
make up your licUtiles application.
licUtiles.vcproj
This is the main project file for VC++ projects generated using an Application Wizard.
It contains information about the version of Visual C++ that generated the file, and
information about the platforms, configurations, and project features selected with the
Application Wizard.
licUtiles.cpp
This is the main DLL source file.
When created, this DLL does not export any symbols. As a result, it
will not produce a .lib file when it is built. If you wish this project
to be a project dependency of some other project, you will either need to
add code to export some symbols from the DLL so that an export library
will be produced, or you can set the Ignore Input Library property to Yes
on the General propert page of the Linker folder in the project's Property
Pages dialog box.
/////////////////////////////////////////////////////////////////////////////
AppWizard has created the following resources:
licUtiles.rc
This is a listing of all of the Microsoft Windows resources that the
program uses. It includes the icons, bitmaps, and cursors that are stored
in the RES subdirectory. This file can be directly edited in Microsoft
Visual C++.
Resource.h
This is the standard header file, which defines new resource IDs.
Microsoft Visual C++ reads and updates this file.
/////////////////////////////////////////////////////////////////////////////
Other standard files:
StdAfx.h, StdAfx.cpp
These files are used to build a precompiled header (PCH) file
named licUtiles.pch and a precompiled types file named StdAfx.obj.
/////////////////////////////////////////////////////////////////////////////
Other notes:
AppWizard uses "TODO:" comments to indicate parts of the source code you
should add to or customize.
/////////////////////////////////////////////////////////////////////////////

17
Resource.h Normal file
View File

@ -0,0 +1,17 @@
//{{NO_DEPENDENCIES}}
// Microsoft Visual C++ generated include file.
// Used by licUtiles.rc
//
#define IDS_APP_TITLE 103
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 101
#define _APS_NEXT_COMMAND_VALUE 40001
#define _APS_NEXT_CONTROL_VALUE 1000
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif

125
licUtiles.rc Normal file
View File

@ -0,0 +1,125 @@
// Microsoft Visual C++ generated resource script.
//
#include "resource.h"
#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// English (U.S.) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
#pragma code_page(1252)
#endif //_WIN32
#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//
1 TEXTINCLUDE
BEGIN
"resource.h\0"
END
2 TEXTINCLUDE
BEGIN
"#include ""afxres.h""\r\n"
"\0"
END
3 TEXTINCLUDE
BEGIN
"\r\n"
"\0"
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// String Table
//
STRINGTABLE
BEGIN
IDS_APP_TITLE "licUtiles"
END
#endif // English (U.S.) resources
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// Spanish resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ESN)
#ifdef _WIN32
LANGUAGE LANG_SPANISH, SUBLANG_SPANISH_MODERN
#pragma code_page(1252)
#endif //_WIN32
/////////////////////////////////////////////////////////////////////////////
//
// Version
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 1,0,0,1
PRODUCTVERSION 1,0,0,1
FILEFLAGSMASK 0x17L
#ifdef _DEBUG
FILEFLAGS 0x1L
#else
FILEFLAGS 0x0L
#endif
FILEOS 0x4L
FILETYPE 0x2L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "0c0a04b0"
BEGIN
VALUE "CompanyName", "Narvaling"
VALUE "FileDescription", "Librería de Licencias"
VALUE "FileVersion", "1.0.0.1"
VALUE "InternalName", "licUtiles"
VALUE "LegalCopyright", "(c) Narvaling. All rights reserved."
VALUE "OriginalFilename", "licUtiles.dll"
VALUE "ProductName", "licUtiles"
VALUE "ProductVersion", "1.0.0.1"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0xc0a, 1200
END
END
#endif // Spanish resources
/////////////////////////////////////////////////////////////////////////////
#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED

459
licUtiles.vcproj Normal file
View File

@ -0,0 +1,459 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9,00"
Name="licUtiles"
ProjectGUID="{04E5B10E-5A75-48A2-857B-805659C7877D}"
RootNamespace="licUtiles"
Keyword="Win32Proj"
TargetFrameworkVersion="196613"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)"
ConfigurationType="2"
UseOfMFC="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\utiles"
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;LICUTILES_EXPORTS"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="2"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="utiles.lib"
LinkIncremental="2"
AdditionalLibraryDirectories="..\..\lib\$(ConfigurationName)"
GenerateDebugInformation="true"
SubSystem="2"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
CommandLine="copy $(ConfigurationName)\$(TargetFileName) ..\..\BIN\$(ConfigurationName)&#x0D;&#x0A;copy $(ConfigurationName)\licUtiles.lib ..\..\lib\$(ConfigurationName)&#x0D;&#x0A;&#x0D;&#x0A;"
/>
</Configuration>
<Configuration
Name="Debug|x64"
OutputDirectory="$(PlatformName)\$(ConfigurationName)"
IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
ConfigurationType="2"
UseOfMFC="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TargetEnvironment="3"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\utiles"
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;LICUTILES_EXPORTS"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="2"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="utiles.lib"
LinkIncremental="2"
AdditionalLibraryDirectories="..\..\lib\x64\$(ConfigurationName)"
GenerateDebugInformation="true"
SubSystem="2"
TargetMachine="17"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
CommandLine="copy $(PlatformName)\$(ConfigurationName)\$(TargetFileName) ..\..\BIN\x64\$(ConfigurationName)&#x0D;&#x0A;copy $(PlatformName)\$(ConfigurationName)\licUtiles.lib ..\..\lib\x64\$(ConfigurationName)&#x0D;&#x0A;&#x0D;&#x0A;"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)"
ConfigurationType="2"
UseOfMFC="2"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
EnableIntrinsicFunctions="true"
AdditionalIncludeDirectories="..\utiles"
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;LICUTILES_EXPORTS"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="2"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="utiles.lib"
LinkIncremental="1"
AdditionalLibraryDirectories="..\..\lib\$(ConfigurationName)"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
CommandLine="copy $(ConfigurationName)\$(TargetFileName) ..\..\BIN\$(ConfigurationName)&#x0D;&#x0A;copy $(ConfigurationName)\licUtiles.lib ..\..\lib\$(ConfigurationName)&#x0D;&#x0A;&#x0D;&#x0A;"
/>
</Configuration>
<Configuration
Name="Release|x64"
OutputDirectory="$(PlatformName)\$(ConfigurationName)"
IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
ConfigurationType="2"
UseOfMFC="2"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
TargetEnvironment="3"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
EnableIntrinsicFunctions="true"
AdditionalIncludeDirectories="..\utiles"
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;LICUTILES_EXPORTS"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="2"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="utiles.lib"
LinkIncremental="1"
AdditionalLibraryDirectories="..\..\lib\x64\$(ConfigurationName)"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="17"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
CommandLine="copy $(PlatformName)\$(ConfigurationName)\$(TargetFileName) ..\..\BIN\x64\$(ConfigurationName)&#x0D;&#x0A;copy $(PlatformName)\$(ConfigurationName)\licUtiles.lib ..\..\lib\x64\$(ConfigurationName)&#x0D;&#x0A;"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File
RelativePath=".\ConexionClienteLicSrv.cpp"
>
</File>
<File
RelativePath=".\LicCliente.cpp"
>
</File>
<File
RelativePath=".\Licencia.cpp"
>
</File>
<File
RelativePath=".\LicenciasManager.cpp"
>
</File>
<File
RelativePath=".\LicUtiles.cpp"
>
</File>
<File
RelativePath=".\stdafx.cpp"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug|x64"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|x64"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
<File
RelativePath=".\ConexionClienteLicSrv.h"
>
</File>
<File
RelativePath=".\LicCliente.h"
>
</File>
<File
RelativePath=".\Licencia.h"
>
</File>
<File
RelativePath=".\LicenciasManager.h"
>
</File>
<File
RelativePath=".\LicUtiles.h"
>
</File>
<File
RelativePath=".\LicUtilesDef.h"
>
</File>
<File
RelativePath=".\Resource.h"
>
</File>
<File
RelativePath=".\stdafx.h"
>
</File>
<File
RelativePath=".\targetver.h"
>
</File>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
<File
RelativePath=".\licUtiles.rc"
>
</File>
</Filter>
<File
RelativePath=".\ReadMe.txt"
>
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@ -0,0 +1,121 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioUserFile
ProjectType="Visual C++"
Version="9,00"
ShowAllFiles="false"
>
<Configurations>
<Configuration
Name="Debug|Win32"
>
<DebugSettings
Command=""
WorkingDirectory=""
CommandArguments=""
Attach="false"
DebuggerType="3"
Remote="1"
RemoteMachine="YANDRAK"
RemoteCommand=""
HttpUrl=""
PDBPath=""
SQLDebugging=""
Environment=""
EnvironmentMerge="true"
DebuggerFlavor=""
MPIRunCommand=""
MPIRunArguments=""
MPIRunWorkingDirectory=""
ApplicationCommand=""
ApplicationArguments=""
ShimCommand=""
MPIAcceptMode=""
MPIAcceptFilter=""
/>
</Configuration>
<Configuration
Name="Debug|x64"
>
<DebugSettings
Command=""
WorkingDirectory=""
CommandArguments=""
Attach="false"
DebuggerType="3"
Remote="1"
RemoteMachine="YANDRAK"
RemoteCommand=""
HttpUrl=""
PDBPath=""
SQLDebugging=""
Environment=""
EnvironmentMerge="true"
DebuggerFlavor=""
MPIRunCommand=""
MPIRunArguments=""
MPIRunWorkingDirectory=""
ApplicationCommand=""
ApplicationArguments=""
ShimCommand=""
MPIAcceptMode=""
MPIAcceptFilter=""
/>
</Configuration>
<Configuration
Name="Release|Win32"
>
<DebugSettings
Command=""
WorkingDirectory=""
CommandArguments=""
Attach="false"
DebuggerType="3"
Remote="1"
RemoteMachine="YANDRAK"
RemoteCommand=""
HttpUrl=""
PDBPath=""
SQLDebugging=""
Environment=""
EnvironmentMerge="true"
DebuggerFlavor=""
MPIRunCommand=""
MPIRunArguments=""
MPIRunWorkingDirectory=""
ApplicationCommand=""
ApplicationArguments=""
ShimCommand=""
MPIAcceptMode=""
MPIAcceptFilter=""
/>
</Configuration>
<Configuration
Name="Release|x64"
>
<DebugSettings
Command=""
WorkingDirectory=""
CommandArguments=""
Attach="false"
DebuggerType="3"
Remote="1"
RemoteMachine="YANDRAK"
RemoteCommand=""
HttpUrl=""
PDBPath=""
SQLDebugging=""
Environment=""
EnvironmentMerge="true"
DebuggerFlavor=""
MPIRunCommand=""
MPIRunArguments=""
MPIRunWorkingDirectory=""
ApplicationCommand=""
ApplicationArguments=""
ShimCommand=""
MPIAcceptMode=""
MPIAcceptFilter=""
/>
</Configuration>
</Configurations>
</VisualStudioUserFile>

241
licUtiles.vcxproj Normal file
View File

@ -0,0 +1,241 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{04E5B10E-5A75-48A2-857B-805659C7877D}</ProjectGuid>
<RootNamespace>licUtiles</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<UseOfMfc>Dynamic</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<UseOfMfc>Dynamic</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<UseOfMfc>Dynamic</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<UseOfMfc>Dynamic</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>15.0.28127.55</_ProjectFileVersion>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(Configuration)\</OutDir>
<IntDir>$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(Platform)\$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(Configuration)\</OutDir>
<IntDir>$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<OutDir>$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(Platform)\$(Configuration)\</IntDir>
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\utiles;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;LICUTILES_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>Use</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>utiles.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>..\..\lib\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)$(TargetFileName) ..\bin\$(IntDir)
copy $(OutDir)licUtiles.lib ..\lib\$(IntDir)</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
</Midl>
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\utiles;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;LICUTILES_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>Use</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>utiles.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>..\..\lib\x64\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<TargetMachine>MachineX64</TargetMachine>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)$(TargetFileName) ..\bin\$(IntDir)
copy $(OutDir)licUtiles.lib ..\lib\$(IntDir)</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>..\utiles;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;LICUTILES_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader>Use</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>utiles.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>..\..\lib\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)$(TargetFileName) ..\bin\$(IntDir)
copy $(OutDir)licUtiles.lib ..\lib\$(IntDir)</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
</Midl>
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>..\utiles;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;LICUTILES_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader>Use</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>utiles.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>..\..\lib\x64\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX64</TargetMachine>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)$(TargetFileName) ..\bin\$(IntDir)
copy $(OutDir)licUtiles.lib ..\lib\$(IntDir)</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="ConexionClienteLicSrv.cpp" />
<ClCompile Include="LicCliente.cpp" />
<ClCompile Include="Licencia.cpp" />
<ClCompile Include="LicenciasManager.cpp" />
<ClCompile Include="LicUtiles.cpp" />
<ClCompile Include="stdafx.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="ConexionClienteLicSrv.h" />
<ClInclude Include="LicCliente.h" />
<ClInclude Include="Licencia.h" />
<ClInclude Include="LicenciasManager.h" />
<ClInclude Include="LicUtiles.h" />
<ClInclude Include="LicUtilesDef.h" />
<ClInclude Include="Resource.h" />
<ClInclude Include="stdafx.h" />
<ClInclude Include="targetver.h" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="licUtiles.rc" />
</ItemGroup>
<ItemGroup>
<None Include="ReadMe.txt" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\TransferSrv\TransferSrv\TransferSrv.vcxproj">
<Project>{30c05365-2dfc-4ad4-905e-8a414ae0d0a0}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ProjectReference Include="..\Utiles\utiles.vcxproj">
<Project>{aa58c828-7025-4a4c-868e-76b8902af6bb}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

74
licUtiles.vcxproj.filters Normal file
View File

@ -0,0 +1,74 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="ConexionClienteLicSrv.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="LicCliente.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="Licencia.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="LicenciasManager.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="LicUtiles.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="stdafx.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="ConexionClienteLicSrv.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="LicCliente.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="Licencia.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="LicenciasManager.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="LicUtiles.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="LicUtilesDef.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="Resource.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="stdafx.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="targetver.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="licUtiles.rc">
<Filter>Resource Files</Filter>
</ResourceCompile>
</ItemGroup>
<ItemGroup>
<None Include="ReadMe.txt" />
</ItemGroup>
</Project>

4
licUtiles.vcxproj.user Normal file
View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup />
</Project>

8
stdafx.cpp Normal file
View File

@ -0,0 +1,8 @@
// stdafx.cpp : source file that includes just the standard includes
// licUtiles.pch will be the pre-compiled header
// stdafx.obj will contain the pre-compiled type information
#include "stdafx.h"
// TODO: reference any additional headers you need in STDAFX.H
// and not in this file

38
stdafx.h Normal file
View File

@ -0,0 +1,38 @@
// 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"
#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS // some CString constructors will be explicit
#ifndef VC_EXTRALEAN
#define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers
#endif
#include <afx.h>
#include <afxwin.h> // MFC core and standard components
#include <afxext.h> // MFC extensions
#include <afxwin.h> // MFC core and standard components
#ifndef _AFX_NO_OLE_SUPPORT
#include <afxdtctl.h> // MFC support for Internet Explorer 4 Common Controls
#include <afxole.h> // MFC OLE classes
#include <afxodlgs.h> // MFC OLE dialog classes
#include <afxdisp.h> // MFC Automation classes
#endif
#ifndef _AFX_NO_AFXCMN_SUPPORT
#include <afxcmn.h> // MFC support for Windows Common Controls
#endif // _AFX_NO_AFXCMN_SUPPORT
#include <iostream>
// Windows Header Files:
#include <windows.h>
#include <afxsock.h> // MFC socket extensions
// TODO: reference additional headers your program requires here

24
targetver.h Normal file
View File

@ -0,0 +1,24 @@
#pragma once
// The following macros define the minimum required platform. The minimum required platform
// is the earliest version of Windows, Internet Explorer etc. that has the necessary features to run
// your application. The macros work by enabling all features available on platform versions up to and
// including the version specified.
// Modify the following defines if you have to target a platform prior to the ones specified below.
// Refer to MSDN for the latest info on corresponding values for different platforms.
#ifndef WINVER // Specifies that the minimum required platform is Windows Vista.
#define WINVER 0x0600 // Change this to the appropriate value to target other versions of Windows.
#endif
#ifndef _WIN32_WINNT // Specifies that the minimum required platform is Windows Vista.
#define _WIN32_WINNT 0x0600 // Change this to the appropriate value to target other versions of Windows.
#endif
#ifndef _WIN32_WINDOWS // Specifies that the minimum required platform is Windows 98.
#define _WIN32_WINDOWS 0x0410 // Change this to the appropriate value to target Windows Me or later.
#endif
#ifndef _WIN32_IE // Specifies that the minimum required platform is Internet Explorer 7.0.
#define _WIN32_IE 0x0700 // Change this to the appropriate value to target other versions of IE.
#endif