|
1261
|
Programación / Programación C/C++ / Re: TENGO PROBLEMAS CON 'SWITCH' EN UN EJERCICIO
|
en: 4 Marzo 2020, 16:37 pm
|
Saludos, - Que error te manda, porque yo no tengo problemas. Recuerda que el Caracter EOF en Windows es ^Z (Ctrl + Z o F6) y en Linux es ^D (Ctrl + D): C:\Users\EdSon\CLionProjects\untitled\Debug>main.exe Introduzca la letra que corresponde a la calificacion Introduzca el caracter EOF para finalizar la entrada de datos. abcabcaaa ^Z
Los totales por calificacion son: A: 5 B: 2 C: 2 D: 0 F: 0
C:\Users\EdSon\CLionProjects\untitled\Debug>main.exe Introduzca la letra que corresponde a la calificacion Introduzca el caracter EOF para finalizar la entrada de datos. a a b b b ^Z
Los totales por calificacion son: A: 2 B: 3 C: 0 D: 0 F: 0
C:\Users\EdSon\CLionProjects\untitled\Debug> -- Si estás presionando ^C (Ctrl + C) esto provoca una excepción y finaliza tu programa antes de (terminar de) imprimir tus "totales". El caracter EOF debería de ir solo en una nueva línea.
|
|
|
1262
|
Sistemas Operativos / Windows / Re: Duda sobre usuarios/virus en Windows 10
|
en: 2 Marzo 2020, 00:56 am
|
Saludos,
- Existe Software y hardware "congelador" de disco como Deep Freeze, Shadow Defender o Custodius. Estos protegen Unidades y/o carpetas del Disco duro de tal manera que al reiniciar se restaura tal cual estaba cuando se instaló y configuro el programa.
- Para instalar la mayoría de programas se requiere de permisos de administrador para que dicho programa agregue/modifique entradas en el registro de windows, instale librerías, trabaje con la unidad del sistema, etc. Es decir, los programas "ensucian" mucho el sistema operativo y el disco duro.
- Shadow Defender es más permisivo para uso personal y Deep Freeze Standar es más robusto para uso público, dependerá mucho del "alcance" que necesites, tienes máquinas virtuales, DeepFreeze, Sandboxie, etc. cada uno con sus ventajas, desventajas y prestaciones. Por ejemplo si es para juegos de uso personal Shadow Defender es buena opción ya que permite excluir ciertas carpetas que puede ser la carpeta donde se guarda el avance del juego. Si es para ejecutar software de uso rápido sin que deje rastros como un Keygen o "un crack" bastaría Sandboxie. Las máquinas virtuales son opciones más completas PERO hay cierta pérdida de rendimiento y el espacio que ocupan.
|
|
|
1263
|
Programación / .NET (C#, VB.NET, ASP) / Re: [Duda C#]Suma y Resta en un String
|
en: 27 Febrero 2020, 22:36 pm
|
- Wow, me he hecho líos para realizarlo usando RegEx y Split, en mis libros de Visual Basic .NET no hay nada de Expresiones Regulares, he tenido que echar mano de mis libros de C# donde se toca el tema en detalle. De momento solo tengo Visual Basic .NET 2005 y lo he implementado así: Imports System.Text.RegularExpressions Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn.Click Dim rx As New Regex("(?<negativos>-\d+)|(?<positivos>\d+)") Dim positivos As String = "" Dim negativos As String = "" For Each match As Match In rx.Matches(txt.Text) If match.Groups("positivos").Value <> "" Then positivos = positivos & "," & match.Value Else negativos = negativos & "," & match.Value End If Next Dim numPos() As String = positivos.Split(",".ToCharArray(), StringSplitOptions.RemoveEmptyEntries) Dim numNeg() As String = negativos.Split(",".ToCharArray(), StringSplitOptions.RemoveEmptyEntries) End Sub End Class
- He usado una RegEx más corta, me parece que le basta ..., luego voy concatenando una String para los positivos y otra para los negativos, unidas mediante una "coma", al final se usa esa misma coma para hacerle un Split quitando las vacias. - Tengo entendido que pasarlo a C# es bastante sencillo, haber si me llega a descargar el C# 2005 para mañana y pasarlo si es que aún hay dudas.
|
|
|
1264
|
Programación / Scripting / Re: [AYUDA] [BATCH] Batch sencillo para comparar un valor del registro de windows
|
en: 26 Febrero 2020, 23:36 pm
|
- Cuando ocurre un error en VBScript se actualiza el Objeto Err con unos atributos, de los cuales se puede resaltar Err.Number y Err.Description, estos muestra un número entero distintivo y un mensaje de error distintivo correspondientemente. - Para tomar el control de errores en VBScript se hace uso de la sentencia On Error Resume Next, de tal manera que al producirse un error no se muestra dicho error, sino, se continúa con la siguiente instrucción esperando a que el programador ponga las instrucciones adecuadas para "tomar el control" en caso de dicho error. Luego se restablece el Objeto Err con Err.Clear. On Error Resume Next Set oShell = WScript.CreateObject("WScript.Shell") dato = oShell.RegRead("HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\2\1004") If Err.Number <> 0 then 'Ha ocurrido un error If Err.Number = -2147024894 Then WScript.Echo("Valor 1004 no existe") End If WScript.Quit Else 'Valor encontrado WScript.Echo("Valor 1004 existe y tiene el dato: " & dato) End if
|
|
|
1265
|
Foros Generales / Foro Libre / Re: Montar tu propio PC gaming ya no es tan rentable
|
en: 26 Febrero 2020, 17:10 pm
|
asumes mucho con eso... he visto premontados incluso comprados en emezon que vienen sin haber configurado perfiles en la BIOS, actualizado la BIOS, ni nada, basicamente pusieron las piezas, instalaron windows y enviaron
- La cosa es no confundir "premontados que fueron montados" que premontados propiamente dichos, por ejemplo, yo suelo comprar premontados de segundo uso DELL con placa de doble PCI-E, Core i5 de 4 generación, con 8 GB de Ram a 200 dólares, las piezas encajan perfecto se nota que todo el conjunto está hecho para encajar uno con otro y son de buena calidad. La marca DELL del conjunto da cierta garantía y a mi me va perfecto para ponerle dos tarjetas de video para sacar 4 monitores de esa misma PC usando Ibik Aster para obtener 4 PC "independientes" a partir se una sola XD. En estos casos sale mas barato y seguro un premontado de marca. - Para usuarios exigentes si que vale echarle buen precio a sus componentes principales de acuerdo a sus gustos y requerimientos, en este caso los premontados suelen costar bastante.
|
|
|
1266
|
Programación / Scripting / Re: [AYUDA] [BATCH] Batch sencillo para comparar un valor del registro de windows
|
en: 26 Febrero 2020, 02:29 am
|
Saludos, - En Batch se acostumbra resolverse la vida usando Find para encontrar cosas: Set clave="HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\2" ( Reg Query %clave% /V %valor% 2 >&1 | Find "0x3" ) >nul )
- También podrías usar For /F para filtrar el resultado de un comando y sacar tokens para subdividirlo: Set clave="HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\2" For /F "tokens=3" %%a In ('Reg Query %clave% /V %valor% 2 ^>^&1' ) Do ( ) )
|
|
|
1268
|
Informática / Software / Re: Al cargar Windows e inciar sesión se me apaga el Notebook
|
en: 24 Febrero 2020, 22:56 pm
|
- Cierto, si es un apagado súbito es por Hardware: un sensor informa sobrecalentamiento y apaga para evitar daños. Lo otro es Reinicio súbito, esto puede ser por error de Software debido a algún driver.
- Debería de ser fácil detectar sobrecalentamiento al tacto. Aunque yo mismo he tenido un problema de apagado súbito con un viejo puerto serie, si ponía algo a ese puerto la PC se apagaba a los 40 a 70 segundos, tiempo que más o menos coincidía con el arranque de windows, quizá ese puerto estaba dañado y/o hacia un corto circuito. El puerto ya no se usa y la PC funciona normal.
|
|
|
1269
|
Programación / PHP / Re: ftp_login() ERROR
|
en: 24 Febrero 2020, 02:28 am
|
- Tendrías que revisar los Logs de Filezilla, quizá el servidor solo acepte SFTP o alguna otra restricción debe tener.
|
|
|
1270
|
Programación / Scripting / Re: [AYUDA] [BATCH] Como saber si una variable tiene un caracter especifico.
|
en: 24 Febrero 2020, 00:06 am
|
- Sip, solo tienes que recorrer cada caracter de tu variable y ver si es una coma. Como en Batch es algo más complicado obtener el número de caracteres de una variable, puede resultar más sencillo recorrer cierta cantidad de caracteres, en este caso 50, luego se comprueba si aún quedan caracteres en la variable para salir del For y no seguir la 50 veces en vano. -- Y como siempre, cuando se van a manipular variables de entorno dentro de instrucciones agrupadas hay que utilizar EnableDelayedExpansion: --- GeSHi tiene un bug con !num:~%%a,1! en DOS así que le voy a poner PHP-BRIEF XD Set /P "num=Introduce un n£mero decimal > " SetLocal EnableDelayedExpansion For /L %%a In (0,1,50) Do ( Set char=!num:~%%a,1! If "!char!" == "," ( GoTo :continuar ) ) Else ( GoTo :continuar ) ) :continuar Pause
- He estado haciendo pruebas con 50000 iteraciones y veo que el FOR tiene un Bug porque demora igual XD, como si no saliera del For. -- Tampoco es que se vaya a poner tantas iteracciones, no creo que el usuario se ponga a tipear un número cientos de dígitos XD. Esta otra opción no tiene el Bug: Set /P "num=Introduce un n£mero decimal > " :inicio_bucle ) ) :fin_bucle
-- Estoy utilizando Call Set var1=%%var2:~%var3,1%% para que se expandan bien las variables dentro de variables y asi evitarme usar EnableDelayedExpansion.
|
|
|
|
|
|
|