el 10-10-2007 11:03 AM
el 10-13-2007 02:09 AM
Hola youssef, no había visto este mensaje anteriormente
¿Has solucionado tu problema? Te comento que yo también tengo el mismo problema y he notado que en mi caso después de cerrar el Excel desde el CVI queda activo un proceso Excel en el task manager de windows (no importa que el CVI sea activo o no): ¿te pasa esto a tí también? Desde este momento cada vez que abro excel ya sea desde cvi o desde el menu start se abre solamente el marco de la ventana y no puedo abrir ningun archivo. Si reinicio la PC u solamente cierro aquel task nobrado excel todo funciona bien nuevamente. Si puedes, examina el task manager de tu pc para ver si te pasa esto a tí también.
Estoy utilizando Excel2000 en Windows XP SP2 con CVI7.1
el 10-13-2007 03:33 AM
Hola Roberto si me pasaba lo mismo que a ti, No podia abrirlo porque se me quedaba abierto el proceso, si cerraba el proceso de Excel ya podia abrirlo, creo q me pasaba porque no cerraba bien el cerraba bien el excel del cvi, no se como pero lo he solucionado, ya me funciona perfectamente, no he cambiado nada en el codigo. si quieres te dejo mi codigo para que lo veas, yo estpy usando el excel xp con windows xp sp2 y labwindows cvi 8.0. Roberto queria hacerte una consulta, estoy intentando mandar un mail del outlook , no se si habras hecho algun programa con el outlook, la cuestion es que consigo mandar el mail, el problema es que me sale una pantalla que me pone hay un programa intentando mandar un correo electronico desde su cuenta desea permitirlo? y tengo que darle a si para poder mandar el email. hay alguna manera de quitar esa pantalla usando codigo? estuve mirando en google y una de las soluciones era instalar un programa click yes, pero no me convence esa solucion, busco más bien una solucion en el codigo.
gracias de antemano y un saludo
el 10-15-2007 02:12 AM
Te agradecería si pudieras poner el código que has utilizado para solucionar el problema del excel que no se cierra correctamente.
Por lo del mensaje e-mail, nuca tuve necesidad de enviarlos así que no puedo proporcionarte ayuda sobre este tema.
el 10-15-2007 07:50 AM
Hola Roberto te dejo aqui el codigo que he hecho espero q te sirva
ExcelRpt_ApplicationNew (1, &appHandle);
ExcelRpt_SetApplicationAttribute (appHandle, ER_AP_ATTR_VISIBLE,ExRConst_False);
ExcelRpt_WorkbookNew(appHandle, &workbookHandle) ;
ExcelRpt_WorkbookSave (workbookHandle, "c:\\hoja de calculo", 0);
ExcelRpt_GetWorksheetFromName (workbookHandle,"Hoja1", &worksheetHandle);
ExcelRpt_SetCellValue (worksheetHandle, "G2", ExRConst_dataString,cadena);
ExcelRpt_SetCellValue (worksheetHandle, "B4", ExRConst_dataString,"Bombas de Pretatamiento");
ExcelRpt_SetCellValue (worksheetHandle, "B5", ExRConst_dataString,"Bomba1");
ExcelRpt_SetCellValue (worksheetHandle, "C5", ExRConst_dataString,"Bomba2");
ExcelRpt_SetCellValue (worksheetHandle, "E4", ExRConst_dataString,"Bombas de Biodisco");
ExcelRpt_SetCellValue (worksheetHandle, "E5", ExRConst_dataString,"Bomba1");
ExcelRpt_SetCellValue (worksheetHandle, "F5", ExRConst_dataString,"Bomba2");
ExcelRpt_SetCellValue (worksheetHandle, "H4", ExRConst_dataString,"Bombas de Fangos");
ExcelRpt_SetCellValue (worksheetHandle, "H5", ExRConst_dataString,"Bomba1");
ExcelRpt_SetCellValue (worksheetHandle, "I5", ExRConst_dataString,"Bomba2");
ExcelRpt_SetCellValue (worksheetHandle, "K4", ExRConst_dataString,"Bombas de Sacos Filtrantes");
ExcelRpt_SetCellValue (worksheetHandle, "K5", ExRConst_dataString,"Bomba1");
ExcelRpt_SetCellValue (worksheetHandle, "L5", ExRConst_dataString,"Bomba2");
CA_DiscardObjHandle (worksheetHandle);
ExcelRpt_WorkbookClose (workbookHandle, 1);
CA_DiscardObjHandle (workbookHandle);
ExcelRpt_ApplicationQuit (appHandle);
CA_DiscardObjHandle (appHandle);
Me gustaria preguntarte una cosa Roberto tengo el siguiente problema, estoy intentando conectar dos maquinas con la funcion RegisterTCPServer (puerto1, (tcpFuncPtr)&TCPcallback, 0); He conseguido hacer que funcione, el problema q tengo es q tengo una tabla, de la cual tomo la hora en el formato hh:mm por lo q la tabla es de cadena de caracteres, utilizo los siguientes comandos para tomar los datos de la tabla
void *String;String=malloc(sizeof(cadena2)*28);
GetTableCellRangeVals (panel,PANEL_TIME_TABLE,MakeRect(1,2,7,4),String,VAL_COLUMN_MAJOR);
y lo envio al servidor de la siguiente manera:
ClientTCPWrite (handle,String, 256, 1000);
el problema q tengo es q no se como leer los datos en la maquina del servidor para usar la siguiente funcion:
int *TCPcallback (unsigned handle, int xType, int errCode, void *callbackData)
{
char buffer[256];
int messageSize=256;
int bytesToRead;
int bytesRead;
char letra;
char cadena[256];
char *cadena2;
void *String;
char cadena3[2];
if (xType == TCP_CONNECT) {
printf("conectado %d",errCode);
conectado=1;
handle2=handle;
encender1();
encender2();
}
if ( xType == TCP_DATAREADY)
{
printf("leyendo %d",errCode);
bytesToRead= messageSize;
while (bytesToRead > 0)
{
bytesRead = ServerTCPRead (handle2, &buffer[messageSize - bytesToRead], bytesToRead, 5000);
bytesToRead -= bytesRead;
}
SetTableCellRangeVals (panel3,PANEL_TIME_TABLE,MakeRect(1,2,7,4),void *arravalue,VAL_COLUMN_MAJOR);
no se q poner en el campo void *array value, si pongo la variable buffer me da error, asi q no se como recoger los datos q se envian por TCP, espero haberme aclarado. espero q puedas ayudarme a resolverlo.
gracias de antemano y un saludo Roberto
el 04-19-2008 11:56 AM
Que tal disculpen la molestia
Los contacte por medio de post de Nacional Instruments
Tengo el mismo problema que ustedes al utilizar el instrumento excelreport.fp para saber las filas de mi hoja de calculo este me causa un conflicto ya que me deja en espera el proceso de Excel en el task manager de windows a la hora de salirme de la aplicacion de CVI. Existe alguna manera de abortar este proceso por medio de codigo ya que tengo que estar haciendolo manualmente roberto lei en el post de que al parecer tu habias tenido un problema similar de lo que estoy seguro es que este instrumento me causa el problema ya que al utilizar esta funcion ExcelRpt_GetWorksheetAttribute (ExcelWorksheetHandle, ER_WS_ATTR_USED_RANGE, &c_range) que forma parte de este instrumento me ocurre esto si no la utilizo el programa funciona bien pero al utilizarla se presenta este problema .
Estoy programando en CVI 7.1
El problema que tengo es por cuestion de versiones en CVI o es por que el instrumento que estoy utilizando no es compatible con CVI 7.1????
Gracias por la ayuda que puedan brindarme.