elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  necesito orientación sobre programación, me ayuda alguien ?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 2 [3] Ir Abajo Respuesta Imprimir
Autor Tema: necesito orientación sobre programación, me ayuda alguien ?  (Leído 9,395 veces)
Serapis
Colaborador
***
Desconectado Desconectado

Mensajes: 3.391


Ver Perfil
Re: necesito orientación sobre programación, me ayuda alguien ?
« Respuesta #20 en: 29 Diciembre 2018, 16:50 pm »

Te está señalando que no encuentra el fichero mscoree.dll en ninguna de las rutas (environ Path) que el sistema tiene habilitado buscar...

Me temo que si, que finalmente te pediría como mínimo instalar el framework 2.0, en caso de que el win2000 lo admitiese.

Bueno, miro de hacerte el programa en VB6 y te lo paso, en realidad son 5 minutos... es de suponer que al menos sí tendrás ahí el runtime de VS6.0 instalado en ese equipo...

pd.: mscoree.dll es parte del runtime del .NET framework


Descargar desde aquí:
https://workupload.com/file/VTqLuWdj

Está comprimido con winrar. Después de extraerlo, aunque no tiene virus, siempre es recomendable pasarle el antivirus (por ejemplo desde https://www.virustotal.com ) antes de ejecutarlo, nunca se sabe si fue manipulado en la nube...

Una captura de como se ve...


Y aquí el código en vb6...

Código
  1.  
  2. Private Const c_VALID_CHARS         As String = "0123456789"
  3. Private Const c_COLOR_AGUAMARINA    As Long = &HF0F0E0
  4. Private Const c_COLOR_ARENA         As Long = &HC0D0E0
  5.  
  6. Private NextFoco                    As Integer
  7. Private Valores                     As Variant
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17. Private Sub Form_Load()
  18.    Valores = Array(50, 20, 10, 5, 2, 1, 0.5, 0.2, 0.1, 0.05, 0.02, 0.01)
  19. End Sub
  20.  
  21. Private Sub ComBorrar_Click()
  22.    Dim k As Integer
  23.  
  24.    For k = 0 To 11
  25.        TxtMonedas(k).Text = "0"
  26.        Call TxtMonedas_Validate(k, False)
  27.    Next
  28.  
  29.    Call Calcular
  30. End Sub
  31.  
  32. Private Sub TxtMonedas_Change(Index As Integer)
  33.    TxtMonedas(Index).BackColor = c_COLOR_ARENA
  34.    TxtTotal.Text = String$(8, "-")
  35.    TxtImporte(Index).Text = String$(8, "-")
  36. End Sub
  37.  
  38.  
  39. ' Limitado a 8 cifras.
  40. ' Es decir valor máximo admitido en cantidad es: 99.999.999
  41. Private Sub TxtMonedas_Validate(Index As Integer, Cancel As Boolean)
  42.    Dim Valor As Long
  43.  
  44.    If TryParseToLong(TxtMonedas(Index).Text, Valor) = False Then
  45.        Cancel = True
  46.        Call MsgBox("No se acepta como un número el contenido para " & TxtMonedas(Index).Tag, vbExclamation, "Error: No es un número (entero y positivo)")
  47.        TimFoco.Enabled = True ' para seleccionar su contenido listo para editar.
  48.    Else
  49.        TxtMonedas(Index).BackColor = c_COLOR_AGUAMARINA
  50.        TxtImporte(Index).Text = CStr(Valores(Index) * Valor)
  51.        Call Calcular
  52.    End If
  53. End Sub
  54.  
  55. ' Realiza la suma y presenta el resultado en el textbox del total.
  56. Private Sub Calcular()
  57.    Dim k As Long, n As Single
  58.  
  59.    For k = 0 To 11
  60.        n = (n + CSng(TxtImporte(k).Text))
  61.    Next
  62.  
  63.    TxtTotal.Text = CStr(n)
  64. End Sub
  65.  
  66. ' por cada carácter en el texto verifica si es uno entre: "0123456789",
  67. '  si es así devuelve TRUE y el texto se convierte en el valor (un entero de 31 bits).
  68. '  si no devuelve FALSE y el valor se hace 0
  69. Private Function TryParseToLong(ByRef Texto As String, ByRef Valor As Long) As Boolean
  70.    Dim k As Long
  71.  
  72.    If (Len(Texto) > 0) Then
  73.        For k = 1 To Len(Texto)
  74.            If (InStr(c_VALID_CHARS, Mid$(Texto, k, 1)) = 0) Then
  75.                Valor = 0
  76.                Exit Function
  77.            End If
  78.        Next
  79.        Valor = CLng(Texto)
  80.        TryParseToLong = True
  81.    Else
  82.        Valor = 0
  83.    End If
  84. End Function
  85.  
  86. '---------------------------------------------------
  87. '  Saltar el foco entre controles...
  88. '  En realidad para eso sirve la tecla 'tab'
  89. '    pero lo he dejado como tu tenías.
  90. '---------------------------------------------------
  91. '
  92.  
  93. ' Entrega el foco al siguiente textbox.
  94. Private Sub TimFoco_Timer()
  95.    TimFoco.Enabled = False
  96.  
  97.    TxtMonedas(NextFoco).SetFocus
  98. End Sub
  99.  
  100. ' Deja seleccionado el contenido del textbox que tiene el foco (para editar/borrar fácilmente).
  101. Private Sub TxtMonedas_GotFocus(Index As Integer)
  102.    With TxtMonedas(Index)
  103.        .SelStart = 0
  104.        .SelLength = Len(.Text)
  105.    End With
  106. End Sub
  107.  
  108. ' Si pasa la validación...
  109. '   Pasar el foco automáticamente al siguiente control.
  110. '   tras el último se pasa al botón total.
  111. Private Sub TxtMonedas_KeyUp(Index As Integer, KeyCode As Integer, Shift As Integer)
  112.    Dim cancelar As Boolean
  113.    If (KeyCode = vbKeyReturn) Then
  114.        Call TxtMonedas_Validate(Index, cancelar)
  115.        If (cancelar = False) Then
  116.            NextFoco = (Index + 1)
  117.            If (Index < 11) Then
  118.                TimFoco.Enabled = True
  119.            Else
  120.                NextFoco = 0 'Index
  121.                ComTotal.SetFocus
  122.            End If
  123.        Else
  124.            TxtMonedas(Index).SetFocus
  125.        End If
  126.    End If
  127. End Sub
  128.  
  129. Private Sub TxtMonedas_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
  130.    NextFoco = Index
  131. End Sub
  132.  
  133. ' el botón es competamente inútil, solo tiene por objeto invitar a pulsarlo para que
  134. '   el textbox que tiene el foco, pierda el control y proceda la validación.
  135. ' Y como adquiere el foco, presionar intro, entregamos el foco al primer textbox.
  136. Private Sub ComTotal_KeyUp(KeyCode As Integer, Shift As Integer)
  137.    If (KeyCode = vbKeySpace) Then
  138.        NextFoco = 0
  139.        TimFoco.Enabled = True
  140.    End If
  141. End Sub
  142.  


Cuando estás editando un campo, se pone de color arena y la casilla de importe y del total, se borra su contenido (tal como se ve en la siguiente imagen), para indicar que debe recalcularse al termino de la edición... así cuando un valor aparece en el total, se corresponde fielmente con el contenido de cada casilla y todas tendrán su color de  fondo en aguamarina.



« Última modificación: 30 Diciembre 2018, 01:37 am por NEBIRE » En línea

Serapis
Colaborador
***
Desconectado Desconectado

Mensajes: 3.391


Ver Perfil
Re: necesito orientación sobre programación, me ayuda alguien ?
« Respuesta #21 en: 29 Diciembre 2018, 20:39 pm »

Por cierto me olvidaba decirte que usa la fuente "Segoe UI", así que cópiala de tu equipo y la pegas en el win 2000, si no intentará tomar la que mejor se adapte a las características... pero a saber si acierta, y puede verse mal.


He actualizado la descarga, tenía un pequeño error que colgaba el programa cuando se dejaba vacío el textbox...
Y he aprovechado para añadir un botón 'borrar' y una imagen de calculadora.

Recuerda que puedas saltar entre cajitas de texto, usando la tecla 'Tab' (esto en prácticamente todas las ventanas de Win2), pero igualmente he dejado la funcionalidad que tu tenías a través de la tecla 'intro' (tecla 'space' para el botón 'total').



« Última modificación: 30 Diciembre 2018, 01:41 am por NEBIRE » En línea

PROFENIX

Desconectado Desconectado

Mensajes: 18


Ver Perfil
Re: necesito orientación sobre programación, me ayuda alguien ?
« Respuesta #22 en: 30 Diciembre 2018, 08:47 am »

Hola te comento, yo uso visual estudio 2015 cree un nuevo proyecto elegi visual basic, y elegi la opcion universal de windows y luego la primera opcion, total que al form que aparece solo añadi un label y luego lo compile en x86. Para probar si asi en el pc del windows 2000 funcionaria y sigue sin ir. En cambio tu programita si que va. Con lo que me pregunto, que estoy haciendo mal en el visual studio ? O es que me tendria que buscar el visual basic 6.0 ?

aparte de eso tambien te comento otro problema que tengo.

en el visual estudio el codigo que me has puesto me salen errores por todos lados como por ejemplo diciendome de que Variant'; use el tipo 'Object' en su lugar y como ese mas cosas.

sospecho que algo estaré haciendo mal, el que ni idea.

alguna sugerencia de como arreglarlo ?

una captura de los fallos



por otro lado de ese codigo no consigo diferenciar que nombre les tengo que poner a los textbox para hacerlos coincidir con el codigo que me pusiste, para ir entendiendolo mas o menos.
« Última modificación: 30 Diciembre 2018, 17:14 pm por PROFENIX » En línea

Serapis
Colaborador
***
Desconectado Desconectado

Mensajes: 3.391


Ver Perfil
Re: necesito orientación sobre programación, me ayuda alguien ?
« Respuesta #23 en: 30 Diciembre 2018, 19:08 pm »

Citar
lo compile en x86. Para probar si asi en el pc del windows 2000 funcionaria y sigue sin ir.
En windows 2000, no sé que versión soporta del NET framework, yo te decía como mucho hasta la versión 2.0, pero es probable que ni eso (jamás tuve la versión 2000, pasé directamente del 98 al XP).

En cualquier caso, si funcionara, como mínimo exige tener instalado el framework 2.0 Es decir si no está instalado, nunca funcionará ningún programa de NET que requiera NET Framework 2.0.

Vete a la carpeta de windows, (en el win 2000), mira una ruta tal que así (cambiando la unidad de instalación si no fuera "C:")
C:\WINDOWS\Microsoft.Net\Framework
Si existe dicha carpeta, ahí saldrán otras carpetas, cuyo nombre es similar a éste:
v2.0.50727
En ése caso indica que es la versión 2.0.xxx
Interesa ver cual es la versión mayor instalada, pués está señalando cual es/son los frameworks instalados de NET.

Si ni siquiera existe tal carpeta, o bien win 2000 no soporta NET, o bien no tienes ninnguna versión instalada.

Como dices que no quieres instalar nada... pués no tiene sentido que te diga:
Busca en la página de MS, la versión Net Framework 1.0, elige tu idioma (el mismo que tiene instalado el S.O. (español, inglés, ...???), lo descargas y lo instalas, luego igual con el Net Framework 1.1, luego igual con el Net framework 2.0, y luego con el Net framework 3.0 ... desde el momento en que te dijere que el S.O. no está diseñado, no admite ... es inútil instalar una versión más nueva. Pero al menos saber si tiene instalado o admite alguna versión, ayudaría...

Citar
En cambio tu programita si que va.
El programa está compilado en Visual Basic 6 (Visual Studio versión 6.0 (1998)).
...y el código expuesto (en ese mismo mensaje), es el código del programa.

Visual Basic (Visual Studio) 6.0 es enteramente compatible con Win 2000.

Citar
Con lo que me pregunto, que estoy haciendo mal en el visual studio ?
sospecho que algo estaré haciendo mal, el que ni idea.
No puede copiarse y pegarse  código de un proyecto en VS6.0 en un proyecto de NET (da igual qué versión) y esperar que funcione, sin cambios.

Citar
alguna sugerencia de como arreglarlo ?
Puede uno copiar y pegar, si luego supiera recodificarlo haciendo los cambios pertienentes.
En las primeras versiones de VB NET (VB NET2003 y VB NET2005, al menos), había un importador de código de VS6, y añadía comentarios sobre lo que ya no se admitía y que lo remplazaba... aún siguiendo todas las directrices, no era ni mucho menos óptimo (más bien deficiente)... se trataba más de una estrategia para animar a la gente a migrar a VS NET

...pero no tiene sentido hacer eso, ya estuvimos anteriormente haciendo código para NET... y funcionaba.
Faltaba solo optimizarlo, hasta entonces el código era para que resultara asimilable de entender.

Qué sentido tendría ahora tomar código en VS6, para transformarlo a VB NET, si ya tenemos ese código en NET hecho?.

Ahora mismo, tu problema no es el código, tu problema es que la palataforma donde quieres integrarlo es completamente distinta de la plataforma de producción. ...Si win 2000 admite algún framework de NET (yo creo que sí, que alguno debe admitir), pero si no lo tienes instalado y no quieres instalarlo... son y serán incompatibles.

...pero ni siquiera tienes ese problema, toda vez que ya he creado yo el programa para tí, con Visual Basic 6.0...

Citar
O es que me tendria que buscar el visual basic 6.0 ?
Si quieres compilarlo por tu cuenta sí.

Pero ten en cuenta que sobre la interfaz se han reflejado valores en propiedades, que ahí no aparecen... por ejemplo los textbox de monedas, son un array de textboxes, lo mismo los textboxes de importe y los labels de valor.
Los arrays de controles en NET, es algo que nunca se adoptó... De hecho en las postrimerías, un proyecto que tuve que readaptar por exigencias de una empresa en mantener el código lo más similar (en apariencia textual) posible a VB6, tuve que remplazar tales arrays por colecciones del mismo nombre, para que al leer el código les 'sonara' como igual, aunque por debajo, era completamente distinto.

Pero bueno, si te consigues un IDE de VB6.0 y lo instalas, te paso el texto íntegro del proyecto, o mejor copia de los ficheros del proyecto.

El código aún tratandose del lenguaje Basic y del mismo "fabricante", es totalmente distinto en VB6 que en VB NET.
No merece la pena perder el tiempo aprendiendo VS6.
Para quien a estas alturas no sabe nada de él, es preferible que aprenda Visual Basic NET.


En cualquier caso, si todo lo que necesitabas era esa calculadora, ya la tienes... para qué darle más vueltas?.
Por cierto, no sé si te bajaste la versión previa o la última que puse, olvidé hacer el chequeo de cuando se dejaba en blanco el textbox, que cerraba el programa... para disitnguirlo de la previa, aproveché para poner una imagen de una calculadora en la esquina superior izquierda.

Por cierto tengo curiosidad por saber que significa eso de "...de la CM".
« Última modificación: 30 Diciembre 2018, 19:16 pm por NEBIRE » En línea

PROFENIX

Desconectado Desconectado

Mensajes: 18


Ver Perfil
Re: necesito orientación sobre programación, me ayuda alguien ?
« Respuesta #24 en: 30 Diciembre 2018, 22:05 pm »

Pues para mi resulta una putada muy grande lo que me acabas de responder. porque después de calentarme la cabeza en como solucionar los distintos problemas de la versión que ya tenia casi lista que solo faltaba pulir la un poco, porque como dije desde el comienzo de programación 0 conocimientos y no esperaba ayuda como la que me has ofrecido, pues después de ver los resultados me estaba gustando e incluso podríamos decir que me estaba sintiendo orgulloso de haber conseguido lo que ya había conseguido, ahora resulta que todo se va a la ***** por culpa del Framework. siento un cabreo y frustración internamente de la ostia.

agradezco muchísimo tu ayuda y tu ofrecimiento de hacerlo por mi, de verdad te lo digo.

lo que a continuación voy a decir es el como lo habría hecho yo.

solo que yo no habría añadido esos colores a los textbox como hiciste tu, los habría dejado en blanco y el tipo de letra arial en negrita, no habría añadido el botón que pone total y como ultimo el sonido que hace cuando cambia de textbox si se pudiera lo habría anulado ya que es algo molesto. lo otro que imagino que es por cuestiones de ir rapido, es el tema de billetes que en el de 5 € a puesto un 0 delante y en las monedas de 0,50 se te paso poner un espacio con el simbolo del €

en cuanto al detalle del icono de la calculadora no lo habría puesto ni tampoco ese titulo en el programa calculadora monetaria.... lo habría llamado como que ya has visto calculadora de la CM.


repito agradezco muchísimo tu ofrecimiento, pero claro me encuentro ahora con un programa el cual el icono de la calculadora por ejemplo se solapa con las letras de al lado y de abajo, osea que esta como puesta encima de la C de calculadora y de la B de billetes, aparte de los detalles del 0 y del €. en cuanto a tamaño creo que si que esta bien o un pelin mas grande pero no mucho mas. el cual no e podido personalizarlo yo o el adaptarlo como le podría gustar al resto de mis compañero de trabajo pero sin que se flipasen lógicamente. imagino que de hay viene mi frustración, porque no tengo derecho a unas exigencia ni nada por el estilo, ante tu detalle altruista.

el problema de no poder instalar nada, no es cuestión mía, es porque se trata del pc de donde yo trabajo, que como es tan antiguo nadie se atreve a instalar le nada no vayan a joderse el propio windows O alguno de los programas ya instalado para que funcionen los programas de la empresa. porque sino a ver quien es el lumbrera que le dice al jefe que el pc se a jodido por hacer un programa el cual llevamos haciendo los cálculos en papel hace mas de 10 años y viendo lo que cobran por arreglar ciertas cosas en mi trabajo que uno mismo diría que eso no puede costar tanto dinero no me quiero ni imaginar lo que le podría costar una re instalación del sistema operativo y los programas de nuevo. de hay viene el tema este de no poder instalar le nada.

y para resolver tu duda de la CM, CM en mi trabajo significa caja manual.

pues nada, les ofreceré a mis compañeros tu programa y quien quiera usarlo que lo use y quien no, pues nada.


nuevamente te lo digo, gracias por tu tiempo y hacer el programa.
En línea

Serapis
Colaborador
***
Desconectado Desconectado

Mensajes: 3.391


Ver Perfil
Re: necesito orientación sobre programación, me ayuda alguien ?
« Respuesta #25 en: 30 Diciembre 2018, 23:45 pm »

He realizado algunos cambios, siguiendo tus observaciones:
- El tipo de letra a Arial.
- Los colores los he atenuado, son casi blancos. El color amarillo en el fondo de un textbox, viene a indicar que no es editable por el usuario.
- La imagen de la calculadora, la he movido a la esquina superior izquierda (cordenadas 0,0)
- El título a la derecha de la imagen, movido un poco a la derecha.
- Los textos "Billetes", "Cantidad" e "Importe", movidos un poco más abajo...
- He puesto el espacio que se me escapó para los 50 céntimos,
- He retirado el cero para los billetes de 5 euros.
- El botón total no sobra, no es preciso usarlo si no se quiere.
- El título del programa lo he cambiado ligeramente con la info que aportas.
- El sonido se produce siempre que se pulsan ciertas teclas en un textbox editable (por ejemplo teclas: intro, escape)... para evitarlo, usad la tecla Tabulador (la tecla a la izquierda de la "Q"), cumple la misma funcionalidad que buscabas en la tecla intro... pero sin ese molesto sonido.

Debajo la imagen de como es ahora y como se veía antes (para comparar).
Espero que los cambios te satisfagan...

https://workupload.com/file/LLnV5LSM

« Última modificación: 31 Diciembre 2018, 00:10 am por NEBIRE » En línea

PROFENIX

Desconectado Desconectado

Mensajes: 18


Ver Perfil
Re: necesito orientación sobre programación, me ayuda alguien ?
« Respuesta #26 en: 31 Diciembre 2018, 18:45 pm »

ostias killo, no tengo palabras la verdad, muchisimas gracias.

una consulta, el framework sustituye archivos del SO o solo añade archivos ? no se si arriesgarme la verdad en instalar el framework 2.0 o no

por otro lado en conseguido el vb6.0
« Última modificación: 31 Diciembre 2018, 18:48 pm por PROFENIX » En línea

Serapis
Colaborador
***
Desconectado Desconectado

Mensajes: 3.391


Ver Perfil
Re: necesito orientación sobre programación, me ayuda alguien ?
« Respuesta #27 en: 31 Diciembre 2018, 20:11 pm »

El framework de NET no remplaza ningún fichero existente (solo así mismo, es decir si se diera el caso que tienes un framework 2.0 dañado, pués obviamente si, pero lo remplaza por lo mismo que es o debería ser), crea nuevos ficheros. Incluso si tienes una versión previa, no la sobrescribe.
En línea

Páginas: 1 2 [3] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Necesito orientacion para aprender sobre..
Foro Libre
$Edu$ 3 2,850 Último mensaje 18 Noviembre 2011, 17:40 pm
por $Edu$
Necesito orientación sobre sentencia EXPLAIN
Bases de Datos
Hadess_inf 1 2,177 Último mensaje 18 Abril 2012, 01:47 am
por Shell Root
Necesito información sobre la programacion en red de juegos.
Programación General
anonimo12121 2 2,150 Último mensaje 25 Marzo 2013, 18:32 pm
por anonimo12121
Necesito ayuda y consejo sobre obtener la IP de alguien « 1 2 »
Hacking
scratcho57 13 10,582 Último mensaje 12 Mayo 2015, 16:12 pm
por Hurdano
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines