|
8241
|
Programación / Scripting / Re: ¿Cómo puedo detectar una carpeta sin nombre?
|
en: 10 Septiembre 2013, 01:30 am
|
¿Cómo adapto entonces eso siguiendo este código?[/size] @ECHO OFF & CHCP 1252 1 >NUL & REM Modifico el código de ágina al CP WINDOWS-1252. REM by .:: Elektro H@cker ::. REM para los usuarios de ElHacker.net REM REM Asegurarse de guardar este script en codificación ANSI, no UTF, no Unicode. REM :: # WMI Class Win32_LogicalDisk Help :: :: Drivetype 2: Removable :: Drivetype 3: Local hard disk :: Drivetype 4: Network disk :: :: For Syntax: wmic logicaldisk get caption^,drivetype ^| FIND "(DriveType) " REM Filtro el output del comando WMIC. 'wmic logicaldisk get caption^,drivetype ^| FIND "3 "' REM Saco las letras de los dispositivos disponibles. ) REM Elimino el caracter ":". REM Pregunto al usuario. Choice /C %DRIVES% /M "Elige una unidad:" REM Seteo la posición inicial del Substring para sacar la letra elegida por el usuario. Set /A "DriveIndex= %ERRORLEVEL% - 1" REM Finálmente seteo la letra elegida por el usuario. Call Set "Drive= %%DRIVES:~%DriveIndex %,1%%" REM Retiro todos los atributos de los archivos y carpetas. Attrib -a -r -s -h -i /D /S "%Drive%:\*" REM Proceso todas las carpetas de la unidad para renombrar las que contienen el caracter (ALT+255) REM La expresión "%Drive%:\* " no contiene un simple caracter de Espacio, usa el caracter ALT+255. For /D /R %%# in (" %Drive%:\* " ) Do ( ( Rename " %%~#" "Recovered_Files" ) || ( ) )
Saludos EDITO:attrib -s -r -h %UNIDAD%:\*.* /s /d Eso no sé donde lo habrás visto pero es un fallo muy típico de todos los novatos, tu intentas procesar carpetas y archivos pero ese patrón de búsqueda no procesa carpetas, pues solo procesará carpetas que contengan un punto "." en el nombre. Lee sobre los asteriscos, las wildcards. Saludos
|
|
|
8243
|
Media / Multimedia / Re: Bajar video youtube protegido
|
en: 9 Septiembre 2013, 21:43 pm
|
En resumen que el video además de la restricción regional también está protegido por el nuevo tipo de streams de youtube, en ese caso JDownloader sólamente te será útil hasta que youtube vuelva a cambiar su sistema (lo hacen cada mes o así) y vuelva a jodernos a todos con ese tipo de videos "protegidos".
Mantén JD actualizado cada día, si un día ves que ya no te funciona lo de bajar videos protegidos de Youtube con JD, espera hasta que el JD-Team actualicen el plugin de Youtube.
PD: No busques otros programas milagrosos teniendo JD, los que hay están en la misma situación desde hace muchos meses ya, aunque una buena solución alternativa para descargar esos videos es Orbit downloader, pero como ya digo, el tema es el mismo.
Saludos!
|
|
|
8244
|
Programación / .NET (C#, VB.NET, ASP) / Re: Librería de Snippets !! (Posteen aquí sus snippets)
|
en: 9 Septiembre 2013, 20:05 pm
|
Contar todas las agrupaciones en un string: PD: Para quien no sepa, una agrupación empieza con el caracter "(" y acaba con el ")" Dim stack As New Stack(Of Char) 'Dim input As String = ")((()))(" Dim input As String = "(Hello) ) ( (World)?" Dim opened As Integer = 0 Dim closed As Integer = 0 For Each ch As Char In input If ch = "(" Then stack.Push("#") ElseIf ch = ")" Then If stack.Count = 0 Then opened += 1 Else closed += 1 stack.Pop() End If End If Next ch opened = opened + stack.Count Console.WriteLine("Opened:{0} Closed:{1}", opened, closed) MsgBox(String.Format("Opened:{0} Closed:{1}", opened, closed))
EDITO:Lo he modificado un poco para usarlo a mis necesidades: Private ReadOnly Property TotalAgrupations As Dictionary(Of String, Integer) Get Return Count_Agrupations_In_String(TextBox_RegEx.Text) End Get End Property ' MsgBox(TotalAgrupations("Opened")) ' MsgBox(TotalAgrupations("Closed")) Private Function Count_Agrupations_In_String (ByVal str As String) As Dictionary(Of String, Integer) Dim stack As New Stack(Of Char) Dim opened As Integer = 0 Dim closed As Integer = 0 For Each ch As Char In str If ch = "(" Then stack.Push("#") ElseIf ch = ")" Then If stack.Count = 0 Then opened += 1 Else closed += 1 stack.Pop() End If End If Next ch Return New Dictionary(Of String, Integer) From { _ {"Opened", opened + stack.Count}, _ {"Closed", closed} _ } End Function
Los siguientes códigos he testeado su velocidad de ejecución usando métodos distintos con LINQ, RegEx y For, ha ganado For y con mucha diferencia de ms así que aquí tienen:Reemplaza (o elimina) todos los caracteres que indiquemos en un string #Region " Replace All Characters " ' [ Replace All Characters Function ] ' ' // By Elektro H@cker ' ' Examples : ' ' MsgBox(Replace_All_Characters("Hello World!", {"e"c, "o"c}, "+")) ' Result: H+ll+ W+rld! Public Function Replace_All_Characters(ByVal str As String, _ ByVal chars As Char(), _ replaceWith As Char) As String For Each c As Char In chars str = str.Replace(c, replaceWith) Next Return str End Function #End Region
Reemplazar todos los caracteres en un string, menos los caracteres que indiquemos. #Region " Replace All Characters Except " ' [ Replace All Characters Except Function ] ' ' // By Elektro H@cker ' ' Examples : ' ' MsgBox(Replace_All_Characters("Hello World!", "eo", ".")) ' Result: ".e..o..o...." Public Function Replace_All_Characters_Except(ByVal str As String, _ ByVal chars As String, _ replaceWith As Char) As String Dim temp_str As String = String.Empty For Each c As Char In str If Not chars.Contains(c) Then temp_str &= c Else temp_str &= replaceWith End If Next c Return temp_str End Function #End Region
Eliminar todos los caracteres en un string, menos los caracteres que indiquemos. El snippet de arriba se puede usar para esta misma función, pero traducido a milisegundos este código es más rápido.#Region " Remove All Characters Except " ' [ Remove All Characters Except Function ] ' ' // By Elektro H@cker ' ' Examples : ' ' MsgBox(Remove_All_Characters_Except("Hello World!", "eo".ToCharArray)) ' Result: "eoo" Public Function Remove_All_Characters_Except(ByVal str As String, _ ByVal chars As Char()) As String Dim temp_str As String = String.Empty For Each c As Char In str For Each cc As Char In chars If c = cc Then temp_str &= cc Next cc Next c Return temp_str End Function #End Region
|
|
|
8245
|
Programación / .NET (C#, VB.NET, ASP) / Re: Librería de Snippets !! (Posteen aquí sus snippets)
|
en: 9 Septiembre 2013, 15:09 pm
|
Contar las líneas en blanco o valores vacios de un array usando LINQ: MsgBox(RichTextBox1.Lines.Where(Function(Line) String.IsNullOrEmpty(Line)).Count) MsgBox({"a", "", "", "b"}.Where(Function(value) String.IsNullOrEmpty(value)).Count)
EDITO:Unas funciones genéricas muy cortas: #Region " Count Blank Lines " ' [ Count Blank Lines ] ' ' // By Elektro H@cker ' ' Examples : ' ' MsgBox(Count_Blank_Lines(RichTextBox1.Lines)) ' MsgBox(Count_Blank_Lines({"A", "", "", "B"})) ' Result: 2 Private Function Count_Blank_Lines(ByVal str As String()) As Integer Return str.Where(Function(X) String.IsNullOrEmpty(X)).Count End Function #End Region
#Region " Count Non Blank Lines " ' [ Count non blank lines ] ' ' // By Elektro H@cker ' ' Examples : ' ' MsgBox(Count_Non_Blank_Lines(RichTextBox1.Lines)) ' MsgBox(Count_Non_Blank_Lines({"A", "", "", "B"})) ' Result: 2 Private Function Count_Non_Blank_Lines(ByVal str As String()) As Integer Return str.Where(Function(X) Not String.IsNullOrEmpty(X)).Count End Function #End Region
#Region " Get non blank lines " ' [ Get non blank lines ] ' ' // By Elektro H@cker ' ' Examples : ' ' MsgBox(String.Join(Environment.NewLine, Get_Non_Blank_Lines(RichTextBox1.Lines))) ' MsgBox(String.Join(Environment.NewLine, Get_Non_Blank_Lines({"A", "", "", "B"}))) ' Result: {"A", "B"} Private Function Get_Non_Blank_Lines(ByVal str As String()) As String() Return str.Where(Function(X) Not String.IsNullOrEmpty(X)).ToArray End Function #End Region
|
|
|
8247
|
Informática / Hardware / Re: Ayuda con servicios de recuperación de datos... ¿ 600 € ?
|
en: 8 Septiembre 2013, 14:30 pm
|
también has tenido la idea de darle un golpecillo para ver si el brazo estaba atascado xD. siiii.... uuuuuuuuuuuuuuno... no más... xD ya perdí la cuenta. Cuanto mas tiempo pase mas dificil sera encontrar un disco como el tuyo para piezas , si puedes intenta localizar un disco igual al tuyo y cuando puedas pagar eso al menos puedes aportar disco de piezas. No creas que no lo he pensado, algun dia se extinguirá por completo la serie de mi HDD y ya si que no habrá ninguna esperanza... tienes razón ahora que lo pienso mejor es muy buena idea comprar un hdd igual que el mio para tenerlo de reserva por si el día de mañana consigo una solución y debo aportar el HDD porque no se puede encontrar... ...espero poder estar a tiempo de encontrarlo, hasta que no me devuelvan mi HDD no sé el numero de serie ni nada. Pero básicamente en lo que me tengo que fijar si intento adquirir el mismo HDD es que el modelo sea el mismo, ¿lo demás como el número de serie y todo eso no importa ...o si?Un maxtor del mismo modelo y misma capacidad, ¿debo tener en cuenta algún detalle técnico más? Gracias Imoen, saludos
|
|
|
8248
|
Programación / .NET (C#, VB.NET, ASP) / Re: [SOURCE] PATHS
|
en: 8 Septiembre 2013, 11:46 am
|
NUEVA VERSIÓN DISPONIBLE Versión 1.1 Cambios: · He extendido la funcionalidad de la aplicación para poder administrar también las extensiones del PATHEXT · He implementado y compatibilizado todas las opciones originales del PATH con la la nueva funcionalidad extendida para manejar la variable PATHEXT (añadir extension, eliminar extension, backup, clean, etc...). · Caracteristica opcional en el instalador, esta caracteristica agrega la opción "Añadir carpeta al PATH" en le menú contextual del mouse (No lo he testeado en WinXP) PD: Las imágenes del post principal NO son de esta última versión. Saludos
|
|
|
8249
|
Programación / .NET (C#, VB.NET, ASP) / Re: Hola tengo una pregunta sobre C#
|
en: 8 Septiembre 2013, 08:26 am
|
Hola en los cuales tengo 3 elementos ...De que elementos se tratan, o tenemos que adivinarlo xD?. Bueno, como no has proporcionado la suficiente información te muestro mi solución en VB.NET, requiere el uso de Framework 4.0 3.5 por las extensiones LINQ: Básicamente lo que tienes que hacer es recorrer la colección de controles del contenedor y comprobar la cantidad de esos controles que están "seleccionados" para "deshabilitar" el resto de controles. Private CheckBoxes() As CheckBox Private CheckIt As Boolean Private Sub CheckBoxes_CheckedChanged(sender As Object, e As EventArgs) _ Handles CheckBox1.CheckedChanged, CheckBox2.CheckedChanged, _ CheckBox3.CheckedChanged, CheckBox4.CheckedChanged CheckBoxes = Me.GroupBox1.Controls.OfType(Of CheckBox)().ToArray Select Case CheckBoxes.Where(Function(x) x.Checked).Count Case Is >= 2 : CheckIt = False Case Is < 2 : CheckIt = True End Select For Each ctrl As CheckBox In CheckBoxes.Where(Function(x) Not x.Checked) ctrl.Enabled = CheckIt Next CheckBoxes = Nothing End Sub
Aquí tienes una traducción al vuelo para C#, convierte el Switch a un par de IF's y te debería funcionar si Checkeds es igual o mayor que 2... Enable = false si checkeds es menor que 2... Enable = true private void CheckBoxes_CheckedChanged(object sender, EventArgs e) { dynamic Controls = this.GroupBox1.Controls.OfType<CheckBox>(); dynamic Checkeds = Controls .Where(x => x .Checked).Count; bool Enable = false; switch (Checkeds) { case // ERROR: Case labels with binary operators are unsupported : GreaterThanOrEqual 2: Enable = false; break; case // ERROR: Case labels with binary operators are unsupported : LessThan 2: Enable = true; break; } foreach (CheckBox ctrl in Controls .Where(x => !x .Checked)) { ctrl.Enabled = Enable; } } //======================================================= //Service provided by Telerik (www.telerik.com) //Conversion powered by NRefactory. //Twitter: @telerik //Facebook: facebook.com/telerik //=======================================================
Saludos!
|
|
|
8250
|
Programación / .NET (C#, VB.NET, ASP) / [SOURCE] PATHS (Administra las entradas de las variables de entorno 'PATH' y...)
|
en: 8 Septiembre 2013, 07:43 am
|
::::::::: ::: ::::::::::: ::: ::: :::::::: :+: :+: :+: :+: :+: :+: :+: :+: :+: +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +#++:++#+ +#++:++#++: +#+ +#++:++#++ +#++:++#++ +#+ +#+ +#+ +#+ +#+ +#+ +#+ #+# #+# #+# #+# #+# #+# #+# #+# ### ### ### ### ### ### ########
By Elektro H@cker · DESCRIPCIÓN:PATHS es una aplicación por línea de comandos para administrar las entradas de la variable de entorno PATH y PATHEXT de Windows. Tiene opciones para agregar y eliminar entradas así como limpiar, restaurar o crear una copia de seguridad del PATH y del PATHEXT. La aplicación ha sido desarrollada usando VisualStudio 2012 en el lenguaje VB.NET y bajo Framework 4.0 por el uso de LINQ. · MODO DE EMPLEO:[+] Syntax:
PATHS.exe [SWITCHES] [DIRECTORY or EXTENSION or INDEX] [+] Switches:
/l (or) /list | Displays a list of the path entries. /b (or) /backup | Backup the entries to a Registry file. /c (or) /clean | Clean duplicates and invalid entries. /r (or) /reset | Reset the paths to Windows default. | /add -current | Add an entry to the current user PATH. /add -local | Add an entry to the local machine PATH. /a (or) /add | Add an entry to both PATH's. | /del -current | Delete an entry from current user PATH. /del -local | Delete an entry from local machine PATH. /d (or) /del | Delete an entry from both PATH's. | /addext -current | Add an extension to current user PATHEXT. /addext -local | Add an extension to local machine PATHEXT. /addext | Add an extension to both PATHEXT's. | /delext -current | Delete an extension from current user PATHEXT. /delext -local | Delete an extension from local machine PATHEXT. /delext | Delete an extension from both PATHEXT's. | /? (or) /help | Display this help. [+] Additional switch value's Syntax:
/del -current (Directory) /del -current (Entry Index)
/del -local (Directory) /del -local (Entry Index)
* You can see all the entry index numbers typing: PATHS /list
/addext -current (File-Extension) /addext -local (File-Extension)
/delext -current (File-Extension) /delext -local (File-Extension) [+] Usage examples:
PATHS /list
PATHS /clean
PATHS /reset
PATHS /backup "C:\Registry File.reg" (Saves all the PATH and PATHEXT entries to the destination file)
PATHS /add -current "C:\Directory" (Adds a new entry "C:\Directory" to Current User PATH)
PATHS /add -local "C:\Directory" (Adds a new entry "C:\Directory" to All Users PATH)
PATHS /add "C:\Directory" (Adds a new entry "C:\Directory" to both PATH's)
PATHS /del -current "C:\Directory" (Deletes entries matching as "C:\Directory" from Current User PATH)
PATHS /del -local "C:\Directory" (Deletes entries matching as "C:\Directory" from All Users PATH)
PATHS /del "C:\Directory" (Deletes entries matching as "C:\Directory" from both PATH's)
PATHS /del -current 5 (Deletes entry index 5 from Current User PATH)
PATHS /del -local 5 (Deletes the entry index 5 from All Users PATH)
PATHS /addext -current ".hack" (Adds a new ".hack" extension to Current User PATHEXT)
PATHS /addext -local ".hack" (Adds a new ".hack" extension to All Users PATHEXT)
PATHS /addext ".hack" (Adds a new ".hack" extension to both PATHEXT's)
PATHS /delext -current ".hack" (Deletes extensions matching as ".hack" from Current User PATHEXT)
PATHS /addext -local ".hack" (Deletes extensions matching as ".hack" from All Users PATHEXT)
PATHS /addext ".hack" (Deletes extensions matching as ".hack" from both PATHEXT's)[/quote] · IMÁGENES:· DESCARGA:(Resubido el 05-Marzo-2014) http://www.mediafire.com/download/ffuxgwezf4jd5c0/PATHS.rarIncluye Source, compilado, e instalador.Aquí pueden ver o descargar una versión antigua y no tán completa que codeé hace bastante tiempo en Ruby: [RUBY] [APPORTE PARA WINDOWS] PATHS v0.3 - Una utilidad para el PATH
|
|
|
|
|
|
|