Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - EdePC

#981
Saludos,

- La clave está en utilizar el estilo background-size: cover; esto hará que la imagen cubra todo el contenedor sin deformarse. También sugiero utilizar background-position: center; para que la imagen se mantenga centrada, de tal manera que los cortes por exceso sean equitativos tal como muestras en tu imagen.

- Lo he probado con el siguiente ejemplo (las imágenes deben estar junto al html):

Código (html4strict) [Seleccionar]
<style>
  #div {
    width: 320px;
    height: 240px;
    background-color: cyan;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }
</style>
<input type="file" onchange="div.style.backgroundImage='url('+this.files[0].name+')'">
<div id="div">
#982
Scripting / Re: Borrar carpeta mediante VBS
26 Marzo 2020, 15:15 PM
CitarSi esa carpeta no existiera, el script se detendría?

- Nop, para eso está la línea On Error Resume Next, al producirse un error luego de haber declarado esa línea, el script continúa con la siguiente línea sin mostrar ningún error.

-- Luego se utiliza el objeto Err para comprobar si ha habido algún error y tomar las medidas respectivas. Al final usar Err.Clear para restablecer el objeto Err como si no hubiera existido nunca el error capturado.

- Visual Basic Script ya tiene buena edad, hay paginas de documentación muy conocidas en Inglés como https://ss64.com/ o https://www.robvanderwoude.com/, en estas mismas se hace referencia buenos libros también en inglés: https://ss64.com/links/vblinks.html https://www.robvanderwoude.com/books.php

- También podrías descargarte la referencia del lenguaje VBScript 5 desde:
https://raw.githubusercontent.com/pmachapman/VBSE/master/Distribution/script56.chm

- Existe un IDE que quizá te interese, está en inglés y se puede utilizar gratuitamente: https://www.vbsedit.com
#983
Scripting / Re: Borrar carpeta mediante VBS
25 Marzo 2020, 22:21 PM
Saludos,

objFso.FolderExists("path\to\folder") no soporta comodines, requiere la ruta exacta de la carpeta ya sea URL Absoluta o Relativa.

- Lo más sencillo que veo es utilizar On Error Resume Next para luego verificar si ha habido errores, en este caso el error número 76 corresponde a que no se ha encontrado la ruta o la carpeta no existe, aunque más genérico es mostrar el error en sí.

Código (vb) [Seleccionar]
Dim strFolderPath, strUserLocalAppData, objFso

Set objShell = CreateObject("Wscript.Shell")
Set objFso = CreateObject("Scripting.FileSystemObject")

strUserLocalAppData = objShell.ExpandEnvironmentStrings("%LocalAppData%")
strFolderPath = strUserLocalAppData & "\Tempz*"

On Error Resume Next
Call objFso.DeleteFolder(strFolderPath, True)
If Err Then
  WScript.Echo(Err.Description)
End If
Err.clear



- Si te estás iniciando en VBScript, te podría recomendar este par de libros en español:

Visual Basic Script Tomo I (White Darknes):
https://openlibra.com/es/book/visual-basic-script

Visual Basic Script Tomo II (White Darknes):
https://openlibra.com/es/book/visual-basic-script-parte-2
#984
Software / Re: Teamviewr versus Any Desk
24 Marzo 2020, 21:25 PM
- Pues justo ayer he estado haciendo comparativa de software del estilo y ninguno terminó superando a TeamViewer XD.

1. TeamViewer
2. AnyDesk
3. Supremo

- Tampoco es que haya probado muchos, pero en lo particular me gusta más AnyDesk salvo que en conexiones lentas tiende a entrecortarse demasiado, yo tengo una conexión de 300Mbps (~300KBps o a lo que llaman 3 Megas) y el más estable fue TeamViewer.

- La mayoría debe tener conexiones de varios MB, he visto que en la ciudad hay hasta 25MBps (25 Megas) lo cual para mí es una locura XD.

- Si hay gente que ha probado otro software similar que los sugiera, ya que me gusta TeamViewer PERO no pienso crear una cuenta para iniciar sesión en él XD.
#985
Software / Re: Teamviewr versus Any Desk
23 Marzo 2020, 22:16 PM
- TeamViewer es más sencillo de usar y más estable, también su peso es de ~25MB en comparación a AnyDesk de ~3MB.

- TeamViewer está pensado para cosas más laboriosas, como videollamadas, VPN, reuniones, presentaciones en vivo, programaciones, listas de contactos, sincronización en la nube, etc.

- Si solo vas a utilizar funciones básicas como Administración remota y transferencia de archivos  te basta con AnyDesk que además no tiene publicidad, ni es necesario tener permisos de administrador, se puede intercambiar el control remoto y permite abrir múltiples instancias del programa para asistir a más PC a la vez. PERO no tiene libreta de contactos en modo gratuito, me parece que tampoco lo tiene TeamViewer en modo gratuito.

- Una buena característica de TeamViewer son las presentaciones, estas permiten dar clases en vivo a una audiencia, programar calendarios, etc. Lo mismo que se puede hacer con Google Hangouts > Videollamada > compartir pantalla, y google Calendar para hacer recodatorios o envios automáticos de invitaciones a presentaciones o reuniones.
#986
Saludos,

- Si te estás refiriendo a los clásicos Menús en Consola se hace similar a Bash, solo que en Python no hay Switch, con puros If debería de bastar para no complicarse demasiado implementando un Switch a mano.

- Ejemplo en Python 3 :

Código (python) [Seleccionar]
#!/user/bin/python

print('''
--------------------------------------------
   ___             _                       
  / _ \ _ __   ___(_) ___  _ __   ___  ___
| | | | '_ \ / __| |/ _ \| '_ \ / _ \/ __|
| |_| | |_) | (__| | (_) | | | |  __/\__ \\
  \___/| .__/ \___|_|\___/|_| |_|\___||___/
       |_|                                 
--------------------------------------------
1. Información del sistema
2. Busqueda de intrusos y virus
3. Antirootkit
4. Seguridad Avanzada en general
5. Salir completamente del programa
''')

opcion = input('Eliga una opcion entre [1 - 5] ')

if opcion == '1' :
  print("Ud. ha elegido la opcion 1")
elif opcion == '2' :
  print("Ud. ha elegido la opcion 2")
elif opcion == '3' :
  print("Ud. ha elegido la opcion 3")
elif opcion == '4' :
  print("Ud. ha elegido la opcion 4")
elif opcion == '5' :
  print("Ud. ha elegido la opcion 5")
else :
  print("Opción inválida")


- Si estás buscando Menús en Consola más "complejos" puedes importar alguna librería que lo haga, por ejemplo Console-Menu que tiene soporte para python 2 y 3 a la vez: https://github.com/aegirhall/console-menu

#987
- Tengo entendido de que todos lo productos de Adobe se parecen bastante, al menos he visto que todos manejan capas.

- Yo lo he realizado en Photoshop CS6, primero importo la TV, selecciono la parte de la pantalla y la enmascaro o elimino, luego importo el vídeo, encuadro el vídeo bajo la imagen y listo:

#988
- Cuando entras en modo de Recuperación, este carga un mini-sistema operativo aparte con lo más básico, todo con drivers de lo más genéricos, lo suficiente como para utilizar ciertas herramientas o hacer algunas cosas. Es algo como sacar tu disco duro y ponerlo a otro PC que tiene su propio sistema operativo o usar un LiveCD/USB. Claro que hay LiveCD/USB mucho más completos como los de Linux o el Windows 10 Live que trae Hiren's
#989
Saludos,

- Se trata de un típico problema de corrupción de datos o del sistema de archivos. Tu sistema debe estar configurado para que al encontrar un error grave (pantalla azul) se reinicie automáticamente, así vienen por defecto.

- Puedes entrar en Modo seguro? (F8)
- También puedes aprovechar para Deshabilitar el reinicio automático en caso de error del sistema y el Registro de arranque


- Si estás accediendo desde un medio de recuperación (desde el cual has iniciado notepad.exe) puedes directamente darle un click derecho a tu Unidad del Sistema (normalmente D:\ si estas en un medio de recuperación) y darle a propiedades > herramientas > comprobar errores.

- Si has activado el Registro de arranque, puedes revisarlo en D:\Windows\ntbtlog.txt, ahí aparece la lista de Drivers que se cargan en el sistema, tienes que revisar que todo se cargue correctamente, seguramente las últimas líneas mencionarán al/los drivers responsable del Pantallazo azul. Tienes que googlear esos drivers para ver que son y si puedes prescindir de ellos renombrándolos a .bak para que no se carguen y provoquen el error.
#990
Saludos,

- De primeras podrías pre-validar al momento de recibir los datos por parte del usuario. Cuando declaras una variable de cierto tipo y le asignas un valor por medio de cin >> variable ocurren algunas cosas interesantes.

- Dependiendo del tipo de variable se intentará convertir implícitamente el dato de entrada al tipo correspondiente a la variable.

-- Pueden ocurrir por lo menos 4 cosas:

1. El dato se a podido convertir sin problemas. Ej.: 54, 5.3, 4Km, -8, -9.3, +77
2. El dato no se a podido convertir. Ej.: pepe, c11, --9, ++6, @, #123
3. El dato es un caracter de fin de línea. Ej.: Ctrl + Z para windows y Ctrl + D linux
4. Error fatal, algo a ido muy mal y el programa no puede continuar.

Código (cpp) [Seleccionar]
#include <iostream>

using namespace std;

int main() {

  int num = 0;

  cout << "Escribe un número: ";
  cin >> num;

  if ( cin.good() ) {
    cout << "Es un número" << endl;
  } else if ( cin.eof() ) {
    cout << "Ha presionado EOF (^Z | ^D)" << endl;
  } else if ( cin.fail() ) {
    cout << "No es un número" << endl;
  } else if ( cin.bad() ) {
    cout << "Error fatal" << endl;
  }
  cin.clear(); // Restablece los errores

  cout << endl << "num: " << num << endl;

  cin.ignore( 255, '\n' ); // Vaciar buffer de entrada
  cin.get();               // Pausa
  return 0;
}