Enviado por jolin6 el día 24 de abril de 2008
hola
Estoy usando visual studio .net
tengo el programa siguiente:
#include <stdio.h>
//#include <Agrfsiggen.h>
#include "ivirfsiggen.h"
//#import "ivirfsiggen.dll"
//#pragma "ivirfsiggen-lib"
// Link to: <Program Files>\IVI Foundation\IVI\Lib\msc\IVIRfSigGen.lib
// Set up analog modulations in different configurations
//
void main()
{
ViStatus status;
ViSession session;
ViChar str[128];
ViInt32 ErrorCode;
ViChar ErrorMessIVIe[256];
// Edit resource and options as needed
char resource[] = "julay";
char options[] = "QueryInstrStatus=true, Simulate=true, DriverSetup= Trace=false, TraceName=TraceOut";
ViBoolean idQuery = VI_FALSE;
ViBoolean reset = VI_FALSE;
// Initialize the driver
status = IviRfSigGen_InitWithOptions(resource, idQuery, reset, options, &session);
if(status)
{
// Initialization failed
IviRfSigGen_GetError(session, &ErrorCode, 255, ErrorMessIVIe);
printf("** Init() Error: %d, %s\n", ErrorCode, ErrorMessIVIe);
printf("\nDone - Press Enter to Exit");
getchar();
return;
}
printf("Driver Initialized \n\n");
// Read and output a few attributes
status = IviRfSigGen_GetAttributeViString(session, "", IVIRFSIGGEN_ATTR_SPECIFIC_DRIVER_DESCRIPTION, 127, str);
printf("DRIVER_DESCRIPTION: %s\n", str);
status = IviRfSigGen_GetAttributeViString(session, "", IVIRFSIGGEN_ATTR_SPECIFIC_DRIVER_REVISION, 127, str);
printf("DRIVER_REVISION: %s\n", str);
status = IviRfSigGen_GetAttributeViString(session, "", IVIRFSIGGEN_ATTR_INSTRUMENT_MODEL, 127, str);
printf("INSTRUMENT_MODEL: %s\n", str);
status = IviRfSigGen_GetAttributeViString(session, "", IVIRFSIGGEN_ATTR_INSTRUMENT_FIRMWARE_REVISION, 127, str);
printf("FIRMWARE_REVISION: %s\n", str);
//Instrument Specific Code
printf("Setting signal to 1GHz/0dBm \n");
status = IviRfSigGen_reset(session);
status = IviRfSigGen_SetAttributeViReal64(session,"",IVIRFSIGGEN_ATTR_FREQUENCY,1E9);
status = IviRfSigGen_SetAttributeViReal64(session,"",IVIRFSIGGEN_ATTR_POWER_LEVEL,0);
status = IviRfSigGen_SetAttributeViBoolean(session,"",IVIRFSIGGEN_ATTR_OUTPUT_ENABLED,VI_TRUE);
// Read instrument error queue until empty.
ErrorCode = 1;
printf("\n");
while(ErrorCode)
{
status = IviSigGen_error_query( session, &ErrorCode, ErrorMessIVIe);
printf("error_query: %d, %s\n", ErrorCode, ErrorMessIVIe);
}
// Close the driver
status = IviRfSigGen_close(session);
if(status)
{
IviRfSigGen_GetError(session, &ErrorCode, 255, ErrorMessIVIe);
printf("** Close() Error: %d, %s\n", ErrorCode, ErrorMessIVIe);
}
else
printf("Driver Closed \n");
printf("\nDone - Press Enter to Exit");
getchar();
}
Tengo correctamente incluidas la libreria ivirfsiggen.lib
Sin embargo me da un error LNK2019 por cada funcuion ivi....
El tema es que este programa es una modificacion a otro en el que solo cambian las librerias y las funciones: cambia ivi.. por ag..
Alguien sabe cual puede ser la solucion: recuerdo que tengo incluida la libreria ivirfsiggen.lib que estaba en el mismo directorio que agrfsiggen.lib asi que por eso no puede ser...
Bueno saludos espero vuestras respeustas gracias