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

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


  Mostrar Mensajes
Páginas: 1 ... 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 [814] 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 ... 1236
8131  Programación / Scripting / Re: Acciones sobre archivos de texto. [Batch] en: 24 Septiembre 2013, 08:34 am
@MauriH

Es decir,  por poner un ejemplo, si tienes un archivo de preguntas de 200 lineas, y un archivo de respuestas con dos respuestas (2 lineas) donde la primera coincidencia de la primera respuesta (linea 1) coincide con la linea 190 del archivo de preguntas, ¿entonces la respuesta 2 debería empezar a buscar desde esa linea 190?.

Saludos
8132  Programación / Scripting / Re: Personalizar Batch en: 23 Septiembre 2013, 23:18 pm
Yo creia que ya lo habias entendido, Creo que ahora entiendo tus intenciones.

yo también lo creí, pero si corrijo una parte y me dices "sigue igual", yo no sé a que parte del código te estás refiriendo como comprenderás.

Entonces la parte importante funciona, solo que quieres perfeccionar el método del TitleCase (o ProperCase) para que trabaje todo tipo de variantes de strings, ok

Lo que debes hacer antes de trabajar el string es convertirlo a lowercase, es decir, todo a letras minúsculas, y así solo tendrás que convertir la primera letra del string a mayúscula.

Lo siento pero no voy a seguir ayudándote a hacerlo en Batch, ya que es una tarea horrible y una pérdida de tiempo por la cantidad de código adicional que requieren este tipo de funciones en Batch,
el resultado es un código  ¡¡ tan sucio !!, pero no te confundas, yo amo Batch porque es lo primero que aprendí, solo es que no me apetece perder el tiempo cuando puedo hacer lo mismo en otros lenguajes con mayor precisión, de manera más simplificada y con mejor legibilidad de la estructura del código.

...Y no he dicho que no te vaya a ayudar a hacer la tarea en otro lenguaje! :)

Te voy a codear la tarea en vbs para que aprecies la diferencia entre la incapacidad de Batch y la virtuosidad de los demás lenguajes (y también porque ya estoy un poco hasta las pe...zuñas de las 3 páginas de este hilo xD), aquí tienes pero no te acostumbres!:

Código
  1. ' ClientFolderOfDay Script, por .:: Elektro H@cker ::. ...Para los usuarios de ElHacker.Net
  2.  
  3. Set Shell = WScript.CreateObject ("WScript.Shell")
  4.  
  5. Do Until Not FolderName=""
  6.    FolderName = StringToTitleCase( _
  7.                 InputBox ("Escribe el nombre de la carpeta o cliente:", _
  8.                           "ClientFolderOfDay by .:: Elektro H@cker ::."))
  9. Loop
  10.  
  11. FullPath = Shell.CurrentDirectory & "\" & _
  12.           (Year(Date) & "-" & DateDigitLen(Month(Date)) & "-" & DateDigitLen(Day(Date))) & _
  13.            " " & FolderName
  14.  
  15. CreateObject("Scripting.FileSystemObject").CreateFolder FullPath
  16. Shell.run "Explorer.exe """ & FullPath & """", 1, False
  17. Wscript.Quit(0)
  18.  
  19. ' Funcs:
  20. Function StringToTitleCase(str)
  21.    StringToTitleCase=UCase(Left(str,1)) & LCase(Right(str,Len(str)-1))
  22. End Function
  23.  
  24. Function DateDigitLen(PortionOfDate)
  25.    If(Len(PortionOfDate)=1) Then
  26.       DateDigitLen="0" & PortionOfDate
  27.    Else
  28.       DateDigitLen=PortionOfDate
  29.    End If
  30. End function


PD1: Guarda el script con extensión "VBS" y ejecútalo de la misma manera como si se tratase de un archivo Bat.

PD2: Si piensas llamar al script desde el registro entonces en el valor de la clave "command" que generes debes agregar los siguientes datos:
Código:
"Wscript.exe "Folderclient.vbs""


Saludos
8133  Programación / Scripting / Re: Acciones sobre archivos de texto. [Batch] en: 23 Septiembre 2013, 20:33 pm
@MauriH

Código
  1. @Echo OFF
  2.  
  3. Set "Questions=C:\Preguntas.txt"
  4. Set "Answers=C:\Respuestas.txt"
  5.  
  6. Set "Prefix=nothing"
  7. Set "Suffix=nothing"
  8.  
  9. FOR /F "Usebackq Delims=" %%R IN ("%Answers%") DO (
  10. FOR /F "Usebackq Delims=" %%P IN ("%Questions%") DO (
  11. (
  12. If /I "%%R" EQU "%%P" (Echo %PREFIX%%%P%SUFFIX%) Else (Echo %%P)
  13. )>>"%TEMP%\Questions.tmp"
  14. )
  15. Move /Y "%TEMP%\Questions.tmp" "%Questions%" 1>NUL || (Echo ERROR al reemplazar archivo & Goto :OnError)
  16. )
  17.  
  18. :OnError
  19. Pause&Exit

PD: Antes de usar haz una copia del archivo original por precaución.

Saludos!
8134  Programación / Scripting / Re: Personalizar Batch en: 23 Septiembre 2013, 19:48 pm
la unica diferencia con:
Código:
            Set "FullPath=%CD%\%DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2%%WordCaseName%"
es la " \ ", hace lo mismo.

Si exacto esa era la solución, eliminar el caracter del backslash "\".

El code funciona eliminando dicho caracter.

Ejecutas el script, indicas un nombre de carpeta, y la carpeta se crea en el directorio desde donde has ejecutado el script, y por último se abre la carpeta usando el FileExplorer,
si no es ese el funcionamiento que buscas o si es ese pero tienes algún tipo de problema pues creo que va siendo hora de que escribas un comentario DETALLADO mostrando el script tal y como lo tienes, explicando la manera en como estás usando el script y los valores que le das a las variables, en fín información de los pasos a seguir para reproducir el problema que tienes o darte una solución, porque asi no nos entendemos ni uno ni el otro, ya que el code funciona si se usa como se debe usar.

saludos!
8135  Sistemas Operativos / Windows / Re: Error envio de correos via telnet CMD (gmail para ser exactos) en: 23 Septiembre 2013, 19:13 pm
no serviria con una libreria distinta, porque supongamos que yo aca (en mi pc) bajo dicha libreria, mi programa funcionara compilara bien etc, PERO, en otra pc no, porque? porque no tengo esa libreria instalada jaja, ni ese CLI en otro caso...

Es tu decisión, pero yo sigo aconsejándote lo mismo que antes porque estás un poco equivocado, por un lado tienes razón en que si símplemente compilas el proyecto y dejas los archivos de la librerñia "sueltos" en otra carpeta entonces no vas a poder tener un executable standalone, pero es que eso tiene solución, puedes embedir cualquier archivo como recurso en tu executable final, es decir, puedes unir/empaquetar todas las dll 's y exe's que necesites en un mismo executable, y luego extraer el recurso al disco para cargar el archivo... además no es necesario utilizar herramientas externas para embedir, aunque si no quedase más remedio podrías hacerlo en plan cutre usando algún "File Joiner" (o un SFX automático con WinRAR o 7zip para expandir los archivos) porque yo no tengo ni idea de como se hará en c++, así que voy a dejar de "molestar" y a ver si algún otro compañero te puede dar mejor ayuda, yo solo te hago saber las opciones y alternativas de las que dispones.

Google + C++ embeed resource: http://stackoverflow.com/questions/1074362/embedded-resource-in-c


Saludos
8136  Programación / Scripting / Re: Personalizar Batch en: 23 Septiembre 2013, 15:07 pm
Citar
Código
  1. Set "FullPath=%CD%\%DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2%%WordCaseName%"

Reemplaza el comando "Set" por "Echo" y mira lo que pasa.

Usa esa técnica para encontrar problemas relacionados con variables (en otros códigos me refiero).

Solución: Set "FullPath=%CD%%DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2%%WordCaseName%"


Citar
Citar
Código:
IF /?
esto no lo entiendo

Todos los comandos tienen una sección de ayuda a la que se accede con el switch "/?", escribe en la consola:
Código:
IF /?


Saludos
8137  Sistemas Operativos / Windows / Re: Error envio de correos via telnet CMD (gmail para ser exactos) en: 23 Septiembre 2013, 08:36 am
Desconocía que tus intenciones eran enviar un email desde Telnet (quizás lo dijiste en el otro post, no leí esa parte),
De todas formas, si empiezas a hablar de C++ esto debería ir en el subforo de C/C++.


¿Porque depender de una aplicación externa cuando existen todo tipo de librerías para C++ ?, como ya te dije no manejo C/C++, pero esto no me ha costado ni dos segundos encontrarlo, y parece interesante:
-> http://sourceforge.net/projects/libcppgmail/
-> Google + gmail library c++


Es más, en caso de querer depender de aplicación externa, ¿Porque usar Telnet cuando existen aplicaciones CLI para enviar emails que le dan mil vueltas?,
Una aplicación commandline gratis que yo uso para enviar emails sin restricción de tamaño y sin requerir ningún tipo de cuenta gmail ni hotmail ni nada es Zeta Uploader:

-> http://www.zeta-uploader.com/es/download

PD: Solo necesita un registro en su página. La versión CLI es el archivo "zulc.exe" y es muy intuitivo de usar.

Saludos
8138  Programación / Scripting / Re: Re: Re: Duda-- problema con ejercicio en batch en: 23 Septiembre 2013, 04:57 am
Ahora q lo cache bien es super fasil xD, en el caso de que me pidan hacerlo con 4 numeros tengo que agregar un parrafo mas de condisiones y otra set/p para que funcione?

Si, además de eso debes agregar la condición de la 4ª variable al resto de comparaciones (low, mid, big),
pero como te comenté al principio, existen otras técnicas más profesionales, si quieres impresionar a tu profesor (o quien sea xD) puedes ordenar los números por el método burbuja:

Google + Batch Bubble sort

Otra alternativa igual de efectiva sería:

1. Contar la cantidad de dígitos de los números para obtener el string más largo.

2. Agregar un "0" a la izquierda las veces que sean necesarias al resto de números hasta que tengan la misma longitud de dígitos que el número más largo.

3. Ordenar los números mediante Batch usando el comando Sort con la columna por defecto (1).

Saludos.
8139  Foros Generales / Dudas Generales / Re: .log en: 23 Septiembre 2013, 04:37 am
es algun tipo de programacion???

No, un LOG es un archivo de texto plano, es exáctamente lo mismo que un archivo TXT, la diferencia es NINGUNA, no deja de ser un archivo de texto plano.

Un LOG es un archivo de texto común con extensión TXT pero con la extensión renombrada a LOG, ¿Porque?, porque decidieron que eso era lo más ideal para referirse a archivos de texto que contengan registros de actividades de software, pero es un archivo de texto plano, ni más ni menos.

Símplemente alguien (algún virtuoso de alguna compañia hace décadas en los inicios del desarrollo de aplicaciones, quizás fuese Microsoft o Apple) tuvo la genial idea de registrar las actividades o la información de depuración de sus aplicaciones en archivos externos para así poder leer esa información en cualquier momento y que los usuarios que usen su software pudiesen reportar bugs, etc...

...Ya me imagino lo que pensó este inventor tan virtuoso, pensó que lo ideal sería que el formato del archivo fuese universal y eso es lo que hicieron, un TXT es universal, un XML u otro tipo de archivo no es facil de leer para quien no sepa, y a ese inventor le pareció todavía más ideal reinventar la rueda renombrando la extensión de "TXT" a "LOG" bajo el término "Computar Data Logging" y llamarlo "Archivo LOG" en lugar de "Archivo TXT", puesto que quedaría mucho más profesional y además así la gente podría referirse a un tipo específico de archivo de texto que contiene actividades e informaciónd e depuración de Software, todos saben lo que es un archivo LOG y lo que contiene, es inconfundible.

Pero el contenido de un archivo LOG puede variar mucho y ser cualquiera, puede ser extremádamente ininteligible como los logs de la aplicación JDownloader que están llenos de parámetros de depuración, o pueden contener informes legibles de pocas lineas.

En fín, un LOG es un TXT pero con la extensión cambiada a "LOG", si o si, y en un LOG hay lo que el programador quiera que haya y de la manera que él quiera puesto que no existe un patrón específico para crear un LOG (*1), no hay dos tipos de logs iguales, cada programador tiene su manera única de reflejar la información y las actividades de su programa a su manera particular.

PD: (*1) Algunos lenguajes de programación como por ejemplo VB.NET y C# proporcionan métodos (Classes) de DataLogging que facilitan la tarea al programador y de esta manera se puede generar un LOG siguiendo un patrón impuesto por el lenguaje (de Microsoft) donde si no recuerdo mal nos permitia separar la información y reflejarla en el LOG como uno de estos 4 tipos de eventos: "Informativo", "Aviso", "Error", y "Crítico", pero eso es algo especial de VBNET y C#, como ya he dicho no existe un patrón Universal a seguir para generar un log y no creo que vaya a existir nunca.

Saludos
8140  Programación / Scripting / Re: Re: Re: Duda-- problema con ejercicio en batch en: 22 Septiembre 2013, 07:41 am
se puede cambiar los nombres de Big, mid y low?
Claro, puedes nombrarlas de la manera que prefieras.


porque se le asicnas el valor -1 ?

Le puse un valor negativo "-1" como podría haberle puesto un "0" o absolutamente nada,
esas tres lineas las escribí para hacer más legible el código dejando constancia del nombre de las variables que se iban a usar en el resto del código.

Y también porque considero que es una buena costumbre declarar las variables en la cabecera de un código y al mismo tiempo asignarle un valor inicial a cada variable, un valor nulo por ejemplo, aunque esto en Batch no se tiene casi en cuenta y tampoco tiene mucha importancia, para ser sinceros puedes eliminar las tres lineas de esas variables y el code seguirá funcionando... pero en otros lenguajes es conveniente hacer lo que acabo de comentar para prevenir posibles errores.

Saludos
Páginas: 1 ... 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 [814] 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 ... 1236
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines