![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
|
estoy haciendo una aplicacion cliente servidor con paradox ,
en el programa servidor me pasa que convierto varias variables AsiString a entero , el problema es que al hacer esto y construir la aplicacion me da un error de linker error unresolved external 'StrToIntA' referenced from (ruta)/principal.obj El problema es casi seguro que es por el RemoteModule , ya que he hecho otra aplicacion solo para probar , funciona con la base de datos y todo bien , ahora bien , intento convertir una string a entero y el error nuevamente(si es una aplicacion sin el remoteModule no lo hace . Código:
// DATOSTABLASSIMPLESIMPL.H : Declaration of the datosTablasSimples
#ifndef datosTablasSimplesImplH
#define datosTablasSimplesImplH
#define ATL_FREE_THREADED
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <MidConst.hpp>
#include "PcNowServer_TLB.H"
#include <DB.hpp>
#include <DBTables.hpp>
#include <Provider.hpp>
#include <xmldom.hpp>
#include <Xmlxform.hpp>
#include <atl/atlvcl.h>
// Forward ref. of IAppServer implementor
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
class TdatosTablasSimples : public TCRemoteDataModule
{
__published: // IDE-managed Components
TDataSetProvider *providerClientes;
TTable *tablaClientes;
TTable *tablaArticulos;
TTable *tablaProveedoresDuplicados;
TTable *tablaStock;
TTable *tablaProveedores;
TTable *tablaPresupuestos;
TTable *tablaFacturasProveedores;
TTable *tablaAbonosProveedores;
TTable *tablaClientesDuplicados;
TDataSetProvider *dataClientesDuplicados;
TDataSetProvider *dataArticulos;
TDataSetProvider *dataProveedores;
TDataSetProvider *dataProveedoresDuplicados;
TDataSetProvider *dataAbonosProveedores;
TDataSetProvider *dataFacturasProveedores;
TDataSetProvider *dataPresupuestos;
TDataSetProvider *dataStock;
TQuery *consultaBusqueda;
TDataSetProvider *dataConsultaBusqueda;
TDataSetProvider *dataTipoArticulo;
TTable *tablaTipoArticulo;
TTable *tablaFabricante;
TTable *tablaModelo;
TDataSetProvider *dataFabricante;
TDataSetProvider *dataModelo;
TDataSetProvider *dataVersionSoft;
TTable *tablaVersionSoft;
TTable *tablaFabricanteSoftware;
TDataSetProvider *dataFabricanteSoftware;
TDataSetProvider *dataFacturasClientes;
TTable *tablaFacturasClientes;
TDataSetProvider *dataAlbaranesClientes;
TDataSetProvider *dataAbonosClientes;
TTable *tablaAlbaranesClientes;
TTable *tablaAbonosClientes;
private: // User declarations
public: // User declarations
__fastcall TdatosTablasSimples(TComponent* Owner);
__published:
};
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
extern PACKAGE TdatosTablasSimples *datosTablasSimples;
/////////////////////////////////////////////////////////////////////////////
// TdatosTablasSimplesImpl Implements IdatosTablasSimples, default interface of datosTablasSimples
// ThreadingModel : Apartment
// Dual Interface : TRUE
// Event Support : FALSE
// Default ProgID : PcNowServer.datosTablasSimples
// Description :
/////////////////////////////////////////////////////////////////////////////
class ATL_NO_VTABLE TdatosTablasSimplesImpl: REMOTEDATAMODULE_IMPL(TdatosTablasSimplesImpl, datosTablasSimples, TdatosTablasSimples, IdatosTablasSimples)
{
public:
BEGIN_COM_MAP(TdatosTablasSimplesImpl)
RDMOBJECT_COM_INTERFACE_ENTRIES(IdatosTablasSimples)
END_COM_MAP()
// Data used when registering Object
//
DECLARE_THREADING_MODEL(otApartment);
DECLARE_PROGID(_T("PcNowServer.datosTablasSimples"));
DECLARE_DESCRIPTION(_T(""));
// Function invoked to (un)register object
//
static HRESULT WINAPI UpdateRegistry(BOOL bRegister)
{
TRemoteDataModuleRegistrar regObj(GetObjectCLSID(), GetProgID(), GetDescription());
// Disable these flags in order to disable use by socket or web connections.
// Also set other flags to configure the behavior of your application server.
// For more information, see atlmod.h and atlvcl.cpp.
regObj.Singleton = false;
regObj.EnableWeb = true;
regObj.EnableSocket = true;
return regObj.UpdateRegistry(bRegister);
}
// IdatosTablasSimples
protected:
};
#endif // datosTablasSimplesImplH
Última edición por mns fecha: 27-04-2008 a las 21:04:04. |
|
#2
|
||||
|
||||
|
Este error tuyo, y tras comprobar que sólo aparece con el RemoteModule, me suena a conflicto entre funciones con el mismo nombre sin definir un namespace.
StrToIntA está definida en la libreria shlwapi.h. Se define como: Código:
LWSTDAPI_(int) StrToIntA(LPCSTR lpSrc); // Recibe un puntero char (char*) Código:
#define StrToInt StrToIntA Código:
extern PACKAGE int __fastcall StrToInt(const AnsiString S); // recibe un AnsiString. No se como son los AnsiString que tratas de convertir a enteros, ¿son ansiString o son char*?. Trata de llamar asi a la función, forzando el cast: Código:
int n = StrToInt(AnsiString(Cadena)); Código:
int n = atoi(Cadena.c_str()); Espero haberte servido de alguna ayuda. Saludos. Última edición por escafandra fecha: 29-04-2008 a las 01:09:15. |
|
#3
|
|||
|
|||
|
muchas gracias por todo
al final he usado atoi() para solucionarlo y todo bien menos mal cuando tenga un poco mas de tiempo me pondre a buscar a ver si encuentro el origen del fallo , pero por ahora funciona bien asi . mil veces agradecido |
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Linker error : Problema con c++ builder | waremovil | C++ Builder | 1 | 07-04-2008 11:30:01 |
| [Linker Fatal Error] Fatal: Unable to open file 'SMI2XLS.OBJ' | nera | C++ Builder | 0 | 06-09-2006 13:38:25 |
| error de linker...LIB | JuanErasmo | C++ Builder | 0 | 04-09-2006 18:16:45 |
| Error del linker c++ builder 6 | davomb | C++ Builder | 1 | 07-06-2006 18:23:03 |
| Error linker library !!! | JuanErasmo | C++ Builder | 2 | 14-12-2005 15:59:01 |
|