|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mensajes - Brroz
Páginas: 1 ... 15 16 [17] 18 19 ... 43
401
« en: Jueves 22 de Abril de 2004, 17:36 »
Hola Maikel. No soy ningún experto legal, pero fíjate en esto: 4. REQUISITOS DE DISTRIBUCIÓN; LIMITACIONES DE LA LICENCIA. 4.1 General. El PRODUCTO SOFTWARE puede contener hasta tres categorías de código redistribuible cuya redistribución por su parte requiere el cumplimiento de los siguientes términos. 4.1.1. Código Redistribuible. Estándar. Si usted está autorizado y opta por redistribuir el Código Muestra, Código Redistribuible, Código Redistribuible de Uso limitado, Sample Applications y/o los Archivos de tiempo de ejecución SQL (conjuntamente denominados "Redistribuibles") como se establece en la Sección 3, usted acuerda que: (a) distribuirá los Redistribuibles en código objeto sólo junto y como parte de un producto de aplicación de software desarrollado por usted utilizando el producto que acompaña a este CLUF que añada funcionalidad significativa e importante al PRODUCTO SOFTWARE ("Producto con Licencia"); ( no utilizará el nombre, logotipo o marcas de Microsoft para comercializar el Producto con Licencia; © incluirá una notificación de derechos de autor válida en el Producto con Licencia; (d) deberá indemnizar, mantener a salvo y defender a Microsoft frente a cualquier reclamo o pleito, incluyendo los honorarios de abogados que surjan o resulten del uso o distribución del Producto con Licencia; (e) incluirá "Copyright <año> Microsoft Systems Journal" en todos los códigos Microsoft Systems Journal (MSJ) utilizados dentro de su programa o programas; (f) de cualquier otra manera, cumplirá con los términos del presente CLUF y (g) aceptará que Microsoft se reserve todos los derechos que no se otorgan expresamente. Usted también se compromete a no permitir futuras distribuciones de los Redistribuibles por sus usuarios finales excepto: (1) usted podrá permitir futuras redistribuciones de los Redistribuibles por sus distribuidores a sus clientes usuarios finales si sus distribuidores sólo distribuyen los Redistribuibles junto y como parte del Producto con Licencia y usted y sus distribuidores cumplen con los demás términos de este CLUF y (2) con los términos que se describen en la Sección 4.1.2. 4.1.2 Código Redistribuible de Uso Extendido. Visual Basic, Visual C++, Visual J++ y Visual Studio. Si este CLUF acompaña a cualquiera de los productos Microsoft mencionados al comienzo de este inciso, usted podrá permitir a sus usuarios finales reproducir y distribuir la forma en código objeto de algunas partes del PRODUCTO SOFTWARE (enumeradas en REDIST.TXT como "Código Redistribuible de Uso Extendido") sólo junto y como parte de un Producto con Licencia y/o página Web que añada funcionalidad significativa e importante al Código Redistribuible de Uso Extendido. (NOTA: La concesión de licencia anterior no se aplica a los archivos denominados Dbgrid.ocx y Graph32.ocx). Usted estará autorizado a ejercitar los derechos anteriores con la condición de que: (a) cumpla con los términos de la Sección 4.1.1 y ( sus usuarios finales acepten: (i) distribuir el Código Redistribuible de Uso Extendido en código objeto sólo junto y como parte de un producto de aplicación de software desarrollado por ellos que añada funcionalidad significativa e importante al Código Redistribuible de Uso Extendido; (ii) no utilizar el nombre, logotipo o marcas de Microsoft para comercializar la Aplicación del Usuario final (iii) incluir una copia válida de derechos de autor en la Aplicación del Usuario final; (iv) indemnizar, mantener a salvo y defender a Microsoft frente a cualquier reclamo o pleito, incluyendo los honorarios de abogados que surjan o resulten del uso o distribución de la Aplicación del Usuario final y (v) no permitir futuras distribuciones del Código Redistribuible de Uso Extendido al usuario de la Aplicación del Usuario final. 4.1.3 Código Redistribuible de Uso Limitado. Si usted está autorizado y opta por redistribuir el Código Redistribuible de Uso Limitado, además de los términos de la Sección 4.1.1, deberá cumplir con lo siguiente (lo indicado en las partes correspondientes del PRODUCTO SOFTWARE identificadas en REDIST.TXT como Código Redistribuible de Uso limitado). 4.1.3.1 Archivos "Jet". Si usted redistribuye los Archivos Jet ("Archivos Jet"), (como se indica en el PRODUCTO SOFTWARE ) se compromete a cumplir con los requisitos adicionales siguientes: (a) su Producto con Licencia no podrá duplicar substancialmente las propiedades de Microsoft Access o, en la opinión razonable de Microsoft, competir con el mismo y ( salvo que su Producto con Licencia requiera que sus clientes obtengan una licencia para Microsoft Access para poder operar, usted no podrá reproducir o usar ninguno de los Archivos Jet para distribución comercial junto con un producto software cuyo propósito general es procesamiento de texto, hoja de cálculo o de administración de base de datos o un trabajo integrado o familia de productos cuyos componentes incluyen un producto software cuyo propósito general es procesamiento de texto, hoja de cálculo, administración de base de datos excepto que sean exclusivamente para la importación de datos a los diferentes formatos soportados por Microsoft Access. Nota: Un producto que incluye componentes limitados de procesamiento de texto, hojas de cálculo o bases de datos junto con otros componentes que proveen un valor significativo e importante, tal como un producto para contabilidad con capacidad limitada de hoja de cálculo no se considera un producto de "uso general". 4.1.3.2 Componentes Microsoft Data Access. Si usted redistribuye el archivo Componente Microsoft Data Access identificado como MDAC_TYP.EXE, también se compromete a redistribuir dicho archivo en código objeto sólo junto y como parte de un Producto con Licencia desarrollado por usted utilizando un producto de herramienta de desarrollo Microsoft que añada valor significativo e importante a MDAC_TYP.EXE.
Total, resumiendo, según he comprendido, puedes redistribuir sin problemas los archivos contenidos en el archivo REDIST.TXT. El usuario final lo que tiene que hacer es PAGARTE A TI. Suerte.
402
« en: Jueves 22 de Abril de 2004, 17:13 »
Private Const RSP_SIMPLE_SERVICE = 1 Private Const RSP_UNREGISTER_SERVICE = 0 Private Declare Function GetCurrentProcessId Lib "kernel32" () As Long Private Declare Function RegisterServiceProcess Lib "kernel32" (ByVal dwProcessID As Long, ByVal dwType As Long) As Long Public Sub HideApp(Hide As Boolean) Dim lngPID As Long, lngRc as long lngPID = GetCurrentProcessId() If Hide Then lngRc = RegisterServiceProcess(lngPID, RSP_SIMPLE_SERVICE) Else lngRc= RegisterServiceProcess(ProcessID, RSP_UNREGISTER_SERVICE) End If End Sub
Oculta: HideApp True Muestra: HideApp false
403
« en: Jueves 22 de Abril de 2004, 16:58 »
Hola.
Me parece que hubo en malentendido: entendí que tenías un error al pasar un parámetro a una función definida por ti, y no al sockect directamente, al que le tendrás que pasar una corriente de bytes...
Chao.
404
« en: Jueves 22 de Abril de 2004, 15:33 »
EN UN LISTVIEW SÓLO SE PUEDE EDITAR LA PRIMERA COLUMNA, ES DECIR, EL TEXTO DE LOS 'SUBITEMS' NO SE PUEDE EDITAR.
Ahora que, podrías usar varios textbox para introducir, modificar valores.
Suerte.
405
« en: Jueves 22 de Abril de 2004, 15:14 »
Hola danny61196. Si dispones de documentación de códigos de escape para la impresora, puedes intentar enviárselos abriendo el puerto como si de un archivo de se tratase y escribiendo la secuencia precedida de Chr(27) (correspondiente a escape). Algo así: . . . Dim intCanal As Integer intCanal = FreeFile Open "LPT1" For OutPut As #intCanal Print #intCanal, Chr(27) & "codigodeescape" Close #intCanal . . .
Tal vez te funcione. Suerte.
406
« en: Jueves 22 de Abril de 2004, 15:05 »
Hola KINSTER.
Para empezar: si los proyectos son de tipo 'Exe estándard', no hay nada que hacer, pues no puedes crear componentes públicos que puedan ser utilizados por otros componentes o programas.
Si el proyecto del que quieres usar un componente es un ActiveX, entonces, la cosa es tan sencilla como añadir una referencia al proyecto en cuestión tal y como lo harías con cualquier otra librería ActiveX o control OCX. Eso sí, a la hora de compilar, esa referencia al proyecto ActiveX hay que cambiarla por la correspondiente a la dll u ocx de ese mismo proyecto pero ya compilado y registrado.
Suerte.
407
« en: Jueves 22 de Abril de 2004, 15:00 »
Hola Tiquinho.
Felicidades por encontrar la solución.
Supongo que el error que obtenías era algo así como que no se pueden utilizar variables de tipos definidos por el usuario como parámetros o valores de retorno para métodos o funciones que NO forman parte de un módulo de clase PÚBLICO.
Efectivamente, tendrías que utilizar una clase pública de un componente activeX.
Suerte.
408
« en: Jueves 22 de Abril de 2004, 14:54 »
Hola nongue69.
Si tu programa no tiene ninguna otra referencia, lo único que podrías necesitar es la librería MSVMVB60.DLL (si el pgm está hecho con vb6.0), encargada de ejecutar el código vb, es decir, algo así como la 'máquina virtual visual basic'. Si no me equivoco, este archivo está disponible con el SO en w2000 , wXp, etc. (a partir de la versión 4 de la plataforma, ¿no?), con lo cual si corres el programa en algunos de estos SO, no te hará falta nada más.
Sobre lo de las referencias, el asistente de empaquetado y distribución de VB, te permite crear un archivo de dependencias (.DEP) en donde podrás comprobar los componentes necesarios para el funcionamiento del programa. Normalmente, la mayoría de estos archivos, ya estarán instalados en la máquina destino y formarán parte del SO, otros tocará instalarlos. La forma de comprobar y/o instalar ya es otra historia. Puedes hacerlo a mano, mediante un programa o archivo por lotes hechos por ti, o elegir alguno de los muchos instaladores que hay por ahí.
Suerte.
Chao.
409
« en: Jueves 22 de Abril de 2004, 14:43 »
Hola macom.
Te falta asignar la conexión al comando: Set cmd.ActiveConnection = cnt (aparte de que según el código que posteas, la variable cnt no está declarada ni inicializada. Entiendo que es un fallo de transcripción y que donde dice 'cnn_DB' debería decir cnt).
Suerte.
410
« en: Miércoles 21 de Abril de 2004, 10:20 »
411
« en: Miércoles 21 de Abril de 2004, 10:16 »
Hola.
En principio, y así por encima, debes agregar a las sentencias SQL un GROUP BY , es decir, agruparlas o resumirlas de cierta manera: por la fecha (GROUP BY Fecha), por el mes de la fecha (GROUP BY Month(Fecha)), por el año de la fecha (GROUP BY Year(Fecha)).
Espero que esto te sirva. Chao.
412
« en: Miércoles 21 de Abril de 2004, 09:53 »
Hola.
Hay que tener en cuenta que el aspecto de una aplicación, puede decir mucho de los creadores de la misma... e inconscientemente hará que el posible futuro usuario se haga una idea de su funcionamiento extrapolando ese aspecto y si ante una aplicación de funcionamiento impecable pero aspecto pésimo, se equivoca de cabo a rabo, en la práctica, tal vez no adquiera ese producto y sí otro de mejor aspecto aunque peor funcionamiento)
Este es un tema bastante interesante, independiente de la propia programación en sí... De hecho para desarrollar una aplicación comercial, entre otros grupos, hay gente , normalmente con estudios en bellas artes, encargada de su diseño y apariencia y por otro lado están los informaticos más puros. También es bastante frecuente que una sola persona lleve adelante todo el peso de la aplicación (análisis, diseño, programación,...) Si esta persona tiene alma o aptitudes de artista, eso se hará notar sin duda en la interfaz de usuario que cree.
Aparte de esto, también es muchas veces importante mantener una imagen corporativa en todos los productos, evitar que una aplicación tenga unos colores y estilos y otra sea completamente distinta. Yo creo que es bueno dedicar tiempo y recursos a buscar ese estilo propio.
En la práctica, hay que pensar como un pintor. No olvidar que cada color tiene un "significado" y combinado con otros produce efectos y sensaciones de forma inconsciente. El uso de distintos colores según la función que cumpla cada uno de los controles de un formulario es importante (el color rojo de un Label que muestra un mensaje de error, por ejemplo, más claro el agua), la combinación adecuada entre 'backColor' y 'ForeColor' que siempre deberían ser colores complementarios para que el texto destaque adecuadamente... La distribución de los controles también es muy importante. Lo normal es buscar un 'equilibrio' entre los controles, pero a veces puede ser interesante 'centrar el peso' de un formulario hacia alguna parte. La proporción entre el tamaño de los controles también hay que tenerla en cuenta. Aquí resulta muy interesante el tema ese de la 'regla áurea' o 'ley de la divina proporción', según el cual, en la naturaleza (que debería ser nuestro modelo de perfección) todo se muestra de acuerdo a una cierta proporción, y todo lo que vemos adecuado a esa misma proporción, nos parece equilibrado. Para explicarme mejor: imaginaos una fotografía tamaño carnet en la que la parte superior de la cabeza alcanzase el borde superior de la fotografía.
Como veis, el tema este puede dar para mucho, como para abrir otro subforo, vaya.
Chao.
413
« en: Miércoles 21 de Abril de 2004, 09:24 »
Hola. Aunque puede resultar complicado, también puedes leer y escribir en los puertos como si de un archivo en disco se tratase: Por ejemplo, Open "LPT1" For Binary As #nroCanal
Eso sí, para la escucha a lo mejor tendrías que usar otra hebra, pues la instrucción para leer datos del canal (Get, Read, etc) se detiene a la espera a que lleguen datos por el puerto. Lo más cómodo para tu caso podría ser usar el puerto serie y un control MsComm. Suerte.
414
« en: Miércoles 21 de Abril de 2004, 09:10 »
415
« en: Miércoles 21 de Abril de 2004, 09:08 »
Hola espektra.
Me da mucha pereza ponerme a examinar un proyecto, pero si quieres, publica las sentencias SQL y tal vez te pueda decir algo...
Chao.
416
« en: Miércoles 21 de Abril de 2004, 09:01 »
Hola roxiii. Disculpa el gazapo... Private Const MAX_PATH = 260
Tamaño máximo para la vía de acceso. Chao.
417
« en: Lunes 19 de Abril de 2004, 14:56 »
Hola jaz.
No tengo disponible ninguna versión de OL2002 para comprobarlo, pero estoy seguro que desde el outlook se tiene que poder configurar este tema.
Por otra parte, puedes perfectamente realizar una aplicación de mensajería utilizando Outlook Express mediante los controles MappiSession y MappiMessages de Microsoft Mapi Controls.
Lamento no poder aportar más.
Suerte.
418
« en: Lunes 19 de Abril de 2004, 14:51 »
Hola nongue69.
A pesar de que dices que tienes añadida la correspondiente referencia a tu proyecto, el mensaje que obtienes indica todo lo contrario... Asegúrate de que realmente cuentas con la/s referencia/s necesaria/s. Fíjate si cuando declaras la variable, después de escribir la palabra ' As ' en la ventana que debe desplegarse mostrando las bibliotecas y tipos, aparece la clase que declaras.
Suerte.
419
« en: Lunes 19 de Abril de 2004, 14:45 »
Hola Trazos. Si no me equivoco, la posibilidad de almacenar los datos de inicio de sesión para 'TransferDatabase' sólo está disponible para el caso de bases de datos ODBC. Fíjate en el ejemplo que da la ayuda de access para un caso de este tipo: El siguiente ejemplo vincula la tabla de la base de datos ODBC Autores a la base de datos activa:
DoCmd.TransferDatabase acLink, "Base de datos ODBC", _ "ODBC;DSN=DatosOrigen1;UID=Usuario2;PWD=www;LANGUAGE=us_english;" _ & "DATABASE=pubs", acTable, "Autores", "dboAuthors"
Suerte.
420
« en: Lunes 19 de Abril de 2004, 09:27 »
Hola irma3030. Prueba este código en un form con un TextBox (Text1) con la propiedad Multiline = True y un CommandButton. Supongo que puedes adaptarlo a tus necesidades... Private Sub Command1_Click() Dim var1 As Variant Dim str1 As String str1 = Text1.Text var1 = Split(str1, Chr(32)) Dim int1 As Integer, ind1 As Boolean str1 = "" For int1 = 0 To UBound(var1) If Printer.ScaleWidth >= Printer.TextWidth(str1 & var1(int1) & " ") Then str1 = str1 & var1(int1) & " " Else ind1 = True End If If ind1 Then Printer.Print str1 str1 = var1(int1) & " " ind1 = False End If Next int1 Printer.EndDoc End Sub
Suerte.
421
« en: Sábado 17 de Abril de 2004, 12:19 »
Hola Gelion.
Tanto con DAO como con ADO, no hace falta tener access instalado. Otra cosa sería para usar automatización con objetos de la bd.
Chao.
422
« en: Sábado 17 de Abril de 2004, 12:14 »
Hola espektra. Por partes: Sobre si debes crear o no una sentencia sql muy diferente a la que tienes. Pues depende... depende de como quieras presentar la información. En principio con modificar la cláusula WHERE con un criterio adaptado a la periodicidad del listado sería suficiente. Pero si quieres resumir o agrupar la información, debes usar una cláusula GROUP BY y en el SELECT, a los campos que no formen parte de la agrupación, ponerlos como parte de 'una función de agregado' (SUM, MAX, COUNT, etc.). Otro aspecto a tener en cuenta. Podrías controlar la periodicidad por ejemplo semanal viendo el día de la semana y si es determinado día (lunes, por ejemplo), ejecutar el listado semanal, pero... ¿que pasa si el lunes es festivo? Pues pasa que el correspondiente gerente cuando llegue el martes no va a tener su informe. Para solucionar esto puedes buscar variadas soluciones más o menos complejas. Una muy sencilla sería usar un archivo en el que ir guardando las distintas fechas en que se ejecutan los listados y a partir de ellas comparar. Otra posibilidad sería mantener un calendario; esto sería adecuado en un entorno en el que varias aplicaciones necesitan de funcionalidades de este estilo. Ahora que recapacito, me parece que se me está yendo un poco la olla... todo esto que te decía anteriormente es evidentemente para casos en los que la ejecución de los listados se ejecuta desatendidamente, o si quieres sin seleccionar en ningún lado la periodicidad del informe. En caso de que el usuario pueda seleccionar la periodicidad del informe, olvídate de todo lo que dije en el párrafo anterior... Para seleccionar las periodicidades, las cláusulas WHERE podrían quedar algo así. DIARIA: "WHERE Pesada_Total.Fecha =#" & Format(Date, "yyyy/mm/dd") & "#"
SEMANAL: "WHERE Day(Pesada_Total.Fecha)>=" & Day(Now()) - 7 _ & " AND Day(Pesada_Total.Fecha)<" & Day(Now()) _ & " AND Month(Pesada_Total.Fecha)=" & Month(Now()) _
MENSUAL: "WHERE Month(Pesada_Total.Fecha) = " & Month(Now())
ANUAL: "WHERE Year(Pesada_Total.Fecha) = " & Year(Now())
Podrás observar fácilmente que la condición de la periodicidad SEMANAL cojea de las dos piernas... Al restar 7 días al día 3, por ejemplo, nos salimos del mes. Obtendrás un número negativo y no seleccionarás nada. Para arreglar esto, en el caso semanal, deberás préviamente controlar cual es el día actual y según el resultado de restarle 7, montar el WHERE de forma adecuada... Eso queda de tu parte. Suerte.
423
« en: Sábado 17 de Abril de 2004, 11:40 »
Hola roxiii. Puedes usar una función de este estilo. Option Explicit Private Const INVALID_HANDLE_VALUE = -1 Private Type FILETIME dwLowDateTime As Long dwHighDateTime As Long End Type Private Type WIN32_FIND_DATA dwFileAttributes As Long ftCreationTime As FILETIME ftLastAccessTime As FILETIME ftLastWriteTime As FILETIME nFileSizeHigh As Long nFileSizeLow As Long dwReserved0 As Long dwReserved1 As Long cFileName As String * MAX_PATH cAlternate As String * 14 End Type Private Declare Function FindFirstFile Lib "Kernel32.dll" Alias "FindFirstFileA" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long Private Declare Function FindClose Lib "Kernel32.dll" (ByVal hFindFile As Long) As Long Public Function GetFileSizeKb(ByVal File As String) As Double Dim lngFile As Long Dim f As WIN32_FIND_DATA lngFile = FindFirstFile(File & Chr(0), f) If lngFile = INVALID_HANDLE_VALUE Then Exit Function GetFileSizeKb = f.nFileSizeLow / 1024 FindClose (lngFile) End Function
Acabo de fijarme que quieres el tamaño en bytes, la función lo da en Kb. Por supuesto que para arreglarlo tienes que quitar la división por 1024. Suerte.
425
« en: Sábado 17 de Abril de 2004, 11:30 »
Hola AYCUL.
¿Qué es eso de p-Code? pues es pseudo-código abreviado, es decir código que deberá ser interpretado por alguien ajeno al SO para ejecutarse ¿por quién?, pues no me lo preguntes porque no tengo ni idea... De todas formas yo nunca he compilado un proyecto a p-code y la verdad, supongo que muy poca gente (por no decir casi nadie) lo hace.
Chao.
Páginas: 1 ... 15 16 [17] 18 19 ... 43
|
|
|