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 - Eleкtro

#5191
Scripting / Re: [Python]Duda con thread
11 Mayo 2015, 10:40 AM
Cita de: .:UND3R:. en 11 Mayo 2015, 07:35 AMMi pregunta sería: ¿Cómo puedo manejar una excepción dentro de MathWorker sin estropear la idea principal (se realizan cuatro tareas pero que todas terminen)?

Si estás controlando correctamente la excepción entonces no se debería detener la ejecución del thread.

Creo que vas a tener que mostrar lo que tengas escrito en el bloque del except:, y el tipo de excepción que te lanza.

Recuerda que siempre puedes utilizar la declaración pass para ignorar la excepción:

Código (python) [Seleccionar]
...
for value in queue.get():
   try:
       0 + str(value)
   except BaseException as e:
       # print e.message, e.args
       pass
queue.task_done()
...


saludos
#5192
jajajjaa, a la Luna en 4 horas, ajajjajajaaaj

En fin, otra chorrada estúpida de la NASA para mantenerles entretenidos sin que piensen ni se cuestionen en lo que realmente deberian estar pensando de ellos... en fin, son unos expertos en juegos psicológicos y manipulación subliminal.

De España a Nueva York hay solamente 5.778 kilómetros y ya se tarda 7 horas en aviones con tecnología punta (http://www.howmanyhours.com/distance/spain/new-york.php) ...y si a esto le añadiesemos la propulsion espacial punta se seguiría traduciendo en un tiempo más que cuestionable, pero claro, NASA y sus "próximos" planes de última generación con super inventos electronmágneticos y blah blah blah van a ser capaces de recorrer la distancia de La Tierra a La Luna, es decir, unos 384.403 Kilómetros, en 4 horitas, si señor ...¿qué duda cabe?.

A todo esto cabe mencionar que el tiempo record que ha tardado NASA en viajar desde La Tierra hasta La Luna han sido 8 horas, en la missión New Horizons: Pluto, pero obviamente esto fue sin tripulación, es decir, en un artefacto de menor dimensión y donde no importaba el impacto de la fuerza G de aceleración/velocidad, en unas pre-condiciones de laboratorio, y lo más importante de todo, sin desaceleración.

NASA ha perdido el Norte desde hace mucho, sueltan una gilipollez tras otra, que si construir una ciudad flotante en las nubes tóxicas de Venus, que si taladrar el hielo de Europe de un lado a otro, que si viajar de un planeta a otro en 4 horas... yo creo que tienen por ahí escondido alguna plantación desconocida de drogas marcianas que les está afectando demasiado a las neuronas.

NO SE DEJEN ENGAÑAR.

Saludos.
#5193
Si estás utilizando un ComboBox estático (ComboBox.DropDownStyle = DropDownList) entonces utiliza sin miedo la propiedad ComboBox.Text, en lugar de ComboBox.SelectedValue.

Saludos
#5194
1. Esto es muy incorrecto:
Citar
Código (dos) [Seleccionar]
if -%1-==-- (goto regular) else (goto noregular)

Para prevenir un argumento vacio, lo expandes para eliminarle comillas dobles, y le añades tú las comillas dobles:
Código (dos) [Seleccionar]
if "%~1" EQU "" (goto :regular) else (goto :noregular)

2. El código que mostraste, en mi caso si que termina la ejecución del script de la forma que deseas ...volviendo al script que lo invocó, así que no puedo reproducir el error de diseño que comentas, pero de todas formas corregí algunas pequeñas cosas para seguir buenas prácticas de uso, prueba así:
Código (dos) [Seleccionar]
@echo off
color 0a

:: Argument Handling.
If "%~1" EQU "" (
goto :regular
) else (
goto :noregular
)

:NoRegular
If /i "%~x1" EQU ".ico" (
GoTo :ico
)

If /i "%~x1" EQU ".bmp" (
GoTo :bmp
)

Echo: el formato de la imagen no es aceptable use ico para el icono o bmp para el logo.
Echo: asegurese de no incluir coma , en el nombre de la imagen puede causar este mensaje.
Exit /B 1

:Regular
Set /p "archivo= arrastra el icono o el logo y sueltelo aqui luego presione enter:"

Set "esau=%archivo:"=-%" & REM "
If /I "%esau:~-5%" EQU ".bmp-" (GoTo :bmp)
If /I "%esau:~-4%" EQU ".bmp"  (GoTo :bmp)
If /I "%esau:~-5%" EQU ".ico-" (GoTo :ico)
If /I "%esau:~-4%" EQU ".ico"  (GoTo :ico)

CLS
Echo: el formato de la imagen no es aceptable use ico para el icono o bmp para el logo
Exit /B 1

:ico
Echo icono
Pause&Exit /B 0

:bmp
Echo logo
Pause&Exit /B 0


Saludos
#5195
Multimedia / Re: duda sobre los formatos
10 Mayo 2015, 19:01 PM
Cita de: perez_bcn¿hay alguna lista de formatos de sonido?

Google es el motor de búsqueda de contenido en Internet más utilizado, de la empresa multinacional estadounidense Google Inc.

Cita de: perez_bcn¿se pueden creer nuevos formatos?

¿Que fue antes, el MP2, o el MP3?, alguno tuvo que ser primero, y el otro después.

Cita de: perez_bcn¿los formatos de video y de imagen son lo mismo?

Wikipedia es una enciclopedia libre, políglota y editada colaborativamente, es administrada por la Fundación Wikimedia, una organización sin ánimo de lucro.
#5196
PathUtil, una class para administrar los directorios de la variable de entorno PATH, y las extensiones de la variable de entorno PATHEXT.

( IMPORTANTE: Esta class depende de mi otra Class RegEdit, que pueden descargar aquí: http://foro.elhacker.net/net/libreria_de_snippets_compartan_aqui_sus_snippets-t378770.0.html;msg2003658#msg2003658 )



Código (vbnet) [Seleccionar]
' ***********************************************************************
' Author   : Elektro
' Modified : 09-April-2015
' ***********************************************************************
' <copyright file="PathUtil.vb" company="Elektro Studios">
'     Copyright (c) Elektro Studios. All rights reserved.
' </copyright>
' ***********************************************************************

#Region " Option Statements "

Option Explicit On
Option Strict On
Option Infer Off

#End Region

#Region " Path Util "

Namespace Tools

    ''' <summary>
    ''' Contains related PATH and PATHEXT registry tools.
    ''' </summary>
    Public NotInheritable Class PathUtil

#Region " Properties "

        ''' <summary>
        ''' Gets the registry path of the Environment subkey for the current user.
        ''' </summary>
        ''' <value>The registry path of the Environment subkey for the current user.</value>
        Public Shared ReadOnly Property EnvironmentPathCurrentUser As String
            Get
                Return "HKEY_CURRENT_USER\Environment"
            End Get
        End Property

        ''' <summary>
        ''' Gets the registry path of the Environment subkey for all users.
        ''' </summary>
        ''' <value>The registry path of the Environment subkey for all users.</value>
        Public Shared ReadOnly Property EnvironmentPathAllUsers As String
            Get
                Return "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"
            End Get
        End Property

        ''' <summary>
        ''' Gets the default data of the PATH registry value of a 32-Bit Windows.
        ''' </summary>
        ''' <value>The default data of the PATH registry value of a 32-Bit Windows.</value>
        Public Shared ReadOnly Property DefaultPathDataWin32 As String
            Get
                Return "C:\Windows;C:\Windows\System32;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0"
            End Get
        End Property

        ''' <summary>
        ''' Gets the default data of the PATH registry value of a 64-Bit Windows.
        ''' </summary>
        ''' <value>The default data of the PATH registry value of a 64-Bit Windows.</value>
        Public Shared ReadOnly Property DefaultPathDataWin64 As String
            Get
                Return "C:\Windows;C:\Windows\System32;C:\Windows\System32\Wbem;C:\Windows\SysWOW64;C:\Windows\System32\WindowsPowerShell\v1.0"
            End Get
        End Property

        ''' <summary>
        ''' Gets the default data of the PATHEXt registry value.
        ''' </summary>
        ''' <value>The default data of the PATHEXt registry value.</value>
        Public Shared ReadOnly Property DefaultPathExtData As String
            Get
                Return ".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE"
            End Get
        End Property

        ''' <summary>
        ''' Gets the registry export string format.
        ''' </summary>
        ''' <value>The registry export string format.</value>
        Private Shared ReadOnly Property ExportStringFormat As String
            Get
                Return "Windows Registry Editor Version 5.00{0}{0}" &
                       "[HKEY_CURRENT_USER\Environment]{0}" &
                       """PATH""=""{1}""{0}" &
                       """PATHEXT""=""{2}""{0}{0}" &
                       "[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment]{0}" &
                       """PATH""=""{3}""{0}" &
                       """PATHEXT""=""{4}"""
            End Get
        End Property

#End Region

#Region " Enumerations "

        ''' <summary>
        ''' Specifies the registry user mode.
        ''' </summary>
        Public Enum UserMode

            ''' <summary>
            ''' The current user (HKCU).
            ''' </summary>
            Current = 0

            ''' <summary>
            ''' All users (HKLM).
            ''' </summary>
            AllUsers = 1

        End Enum

#End Region

#Region " Constructors "

        ''' <summary>
        ''' Prevents a default instance of the <see cref="PathUtil"/> class from being created.
        ''' </summary>
        Private Sub New()
        End Sub

#End Region

#Region " Public Methods "

        ''' <summary>
        ''' Gets the default data of the PATH value for the registry of the specified user (as String).
        ''' </summary>
        ''' <returns>The default data of the PATH value for the registry of the specified user.</returns>
        Public Shared Function GetDefaultPathDataString() As String

            If Not Environment.Is64BitOperatingSystem Then
                Return DefaultPathDataWin32
            Else
                Return DefaultPathDataWin64
            End If

        End Function

        ''' <summary>
        ''' Gets the default data of the PATH value for the registry of the specified user (as Enumerable).
        ''' </summary>
        ''' <returns>The default data of the PATH value for the registry of the specified user.</returns>
        Public Shared Function GetDefaultPathDataList() As IEnumerable(Of String)

            If Not Environment.Is64BitOperatingSystem Then
                Return DefaultPathDataWin32.Split({";"c}, StringSplitOptions.RemoveEmptyEntries)
            Else
                Return DefaultPathDataWin64.Split({";"c}, StringSplitOptions.RemoveEmptyEntries)
            End If

        End Function

        ''' <summary>
        ''' Gets the data of the PATH value on the registry of the specified user (as String).
        ''' </summary>
        ''' <param name="userMode">The user mode.</param>
        ''' <returns>The data of the PATH value on the registry of the specified user.</returns>
        ''' <exception cref="ArgumentException">Unexpected enumeration value.;userMode</exception>
        Public Shared Function GetPathDataString(ByVal userMode As UserMode) As String

            Select Case userMode

                Case PathUtil.UserMode.Current
                    Return RegEdit.GetValueData(Of String)(fullKeyPath:=EnvironmentPathCurrentUser, valueName:="PATH")

                Case PathUtil.UserMode.AllUsers
                    Return RegEdit.GetValueData(Of String)(fullKeyPath:=EnvironmentPathAllUsers, valueName:="PATH")

                Case Else
                    Throw New ArgumentException(message:="Unexpected enumeration value.", paramName:="userMode")

            End Select

        End Function

        ''' <summary>
        ''' Gets the data of the PATH value on the registry of the specified user (as Enumerable).
        ''' </summary>
        ''' <param name="userMode">The user mode.</param>
        ''' <returns>The data of the PATH value on the registry of the specified user.</returns>
        Public Shared Function GetPathDataList(ByVal userMode As UserMode) As IEnumerable(Of String)

            Return GetPathDataString(userMode).Split({";"c}, StringSplitOptions.RemoveEmptyEntries)

        End Function

        ''' <summary>
        ''' Gets the data of the PATHEXT value on the registry of the specified user (as String).
        ''' </summary>
        ''' <param name="userMode">The user mode.</param>
        ''' <returns>The data of the PATHEXT value on the registry of the specified user.</returns>
        ''' <exception cref="ArgumentException">Unexpected enumeration value.;userMode</exception>
        Public Shared Function GetPathExtDataString(ByVal userMode As UserMode) As String

            Select Case userMode

                Case PathUtil.UserMode.Current
                    Return RegEdit.GetValueData(Of String)(fullKeyPath:=EnvironmentPathCurrentUser, valueName:="PATHEXT")

                Case PathUtil.UserMode.AllUsers
                    Return RegEdit.GetValueData(Of String)(fullKeyPath:=EnvironmentPathAllUsers, valueName:="PATHEXT")

                Case Else
                    Throw New ArgumentException(message:="Unexpected enumeration value.", paramName:="userMode")

            End Select

        End Function

        ''' <summary>
        ''' Gets data of the data of the PATHEXT value on the registry of the specified user (as Enumerable).
        ''' </summary>
        ''' <param name="userMode">The user mode.</param>
        ''' <returns>The data of the PATHEXT value on the registry of the specified user.</returns>
        Public Shared Function GetPathExtDataList(ByVal userMode As UserMode) As IEnumerable(Of String)

            Return GetPathExtDataString(userMode).Split({";"c}, StringSplitOptions.RemoveEmptyEntries)

        End Function

        ''' <summary>
        ''' Determines whether the PATH value exists on the registry of the specified user.
        ''' </summary>
        ''' <param name="userMode">The user mode.</param>
        ''' <returns><c>true</c> if PATH value exists, <c>false</c> otherwise.</returns>
        ''' <exception cref="ArgumentException">Unexpected enumeration value.;userMode</exception>
        Public Shared Function PathExists(ByVal userMode As UserMode) As Boolean

            Select Case userMode

                Case PathUtil.UserMode.Current
                    Return RegEdit.ExistValue(fullKeyPath:=EnvironmentPathCurrentUser, valueName:="PATH")

                Case PathUtil.UserMode.AllUsers
                    Return RegEdit.ExistValue(fullKeyPath:=EnvironmentPathAllUsers, valueName:="PATH")

                Case Else
                    Throw New ArgumentException(message:="Unexpected enumeration value.", paramName:="userMode")

            End Select

        End Function

        ''' <summary>
        ''' Determines whether the PATHEXT value exists on the registry of the specified user.
        ''' </summary>
        ''' <param name="userMode">The user mode.</param>
        ''' <returns><c>true</c> if PATHEXT value exists, <c>false</c> otherwise.</returns>
        ''' <exception cref="ArgumentException">Unexpected enumeration value.;userMode</exception>
        Public Shared Function PathExtExists(ByVal userMode As UserMode) As Boolean

            Select Case userMode

                Case PathUtil.UserMode.Current
                    Return RegEdit.ExistValue(fullKeyPath:=EnvironmentPathCurrentUser, valueName:="PATHEXT")

                Case PathUtil.UserMode.AllUsers
                    Return RegEdit.ExistValue(fullKeyPath:=EnvironmentPathAllUsers, valueName:="PATHEXT")

                Case Else
                    Throw New ArgumentException(message:="Unexpected enumeration value.", paramName:="userMode")

            End Select

        End Function

        ''' <summary>
        ''' Exports the PATH and PATHEXT values to a target registry file.
        ''' </summary>
        ''' <param name="filepath">The filepath.</param>
        ''' <exception cref="Exception"></exception>
        Public Shared Sub Export(ByVal filepath As String)

            Try
                IO.File.WriteAllText(filepath,
                                     String.Format(ExportStringFormat,
                                                   Environment.NewLine,
                                                   GetPathDataString(UserMode.Current),
                                                   GetPathExtDataString(UserMode.Current),
                                                   GetPathDataString(UserMode.AllUsers),
                                                   GetPathExtDataString(UserMode.AllUsers)),
                                     encoding:=System.Text.Encoding.Unicode)

            Catch ex As Exception
                Throw

            End Try

        End Sub

        ''' <summary>
        ''' Creates a PATH value on the registry of the specified user and optionally fills the value with the specified data.
        ''' </summary>
        ''' <param name="userMode">The user mode.</param>
        ''' <exception cref="ArgumentException">Unexpected enumeration value.;userMode</exception>
        Public Shared Sub CreatePath(ByVal userMode As UserMode,
                                     Optional data As String = "")

            Try
                Select Case userMode

                    Case PathUtil.UserMode.Current
                        RegEdit.CreateValue(Of String)(fullKeyPath:=EnvironmentPathCurrentUser, valueName:="PATH", valueData:=data)

                    Case PathUtil.UserMode.AllUsers
                        RegEdit.CreateValue(Of String)(fullKeyPath:=EnvironmentPathAllUsers, valueName:="PATH", valueData:=data)

                    Case Else
                        Throw New ArgumentException(message:="Unexpected enumeration value.", paramName:="userMode")

                End Select

            Catch ex As Exception
                Throw

            End Try

        End Sub

        ''' <summary>
        ''' Creates a PATHEXT value on the registry of the specified user and optionally fills the value with the specified data..
        ''' </summary>
        ''' <param name="userMode">The user mode.</param>
        ''' <exception cref="ArgumentException">Unexpected enumeration value.;userMode</exception>
        Public Shared Sub CreatePathExt(ByVal userMode As UserMode,
                                        Optional data As String = "")

            Try
                Select Case userMode

                    Case PathUtil.UserMode.Current
                        RegEdit.CreateValue(Of String)(fullKeyPath:=EnvironmentPathCurrentUser, valueName:="PATHEXT", valueData:=data)

                    Case PathUtil.UserMode.AllUsers
                        RegEdit.CreateValue(Of String)(fullKeyPath:=EnvironmentPathAllUsers, valueName:="PATHEXT", valueData:=data)

                    Case Else
                        Throw New ArgumentException(message:="Unexpected enumeration value.", paramName:="userMode")

                End Select

            Catch ex As Exception
                Throw

            End Try

        End Sub

        ''' <summary>
        ''' Adds a directory into the PATH registry value of the specified user.
        ''' </summary>
        ''' <param name="userMode">The user mode.</param>
        ''' <param name="directory">The directory path.</param>
        ''' <exception cref="ArgumentException">Directory contains invalid character(s).;directory</exception>
        ''' <exception cref="ArgumentException">Unexpected enumeration value.;userMode</exception>
        Public Shared Sub AddDirectory(ByVal userMode As UserMode,
                                       ByVal directory As String)

            If directory.Any(Function(c As Char) IO.Path.GetInvalidPathChars.Contains(c)) Then
                Throw New ArgumentException(message:="Directory contains invalid character(s).", paramName:="directory")

            Else

                Select Case userMode

                    Case PathUtil.UserMode.Current
                        RegEdit.CreateValue(Of String)(fullKeyPath:=EnvironmentPathCurrentUser, valueName:="PATH",
                                                       valueData:=String.Join(";"c, GetPathDataList(userMode).Concat({directory}).Distinct).Trim(";"c))

                    Case PathUtil.UserMode.AllUsers
                        RegEdit.CreateValue(Of String)(fullKeyPath:=EnvironmentPathAllUsers, valueName:="PATH",
                                                       valueData:=String.Join(";"c, GetPathDataList(userMode).Concat({directory}).Distinct).Trim(";"c))

                    Case Else
                        Throw New ArgumentException(message:="Unexpected enumeration value.", paramName:="userMode")

                End Select

            End If

        End Sub

        ''' <summary>
        ''' Adds a file extension into the PATHEXT registry value of the specified user.
        ''' </summary>
        ''' <param name="userMode">The user mode.</param>
        ''' <param name="extension">The file extension.</param>
        ''' <exception cref="ArgumentException">Unexpected enumeration value.;userMode</exception>
        Public Shared Sub AddExtension(ByVal userMode As UserMode,
                                       ByVal extension As String)

            If Not extension.StartsWith("."c) Then ' Fix extension.
                extension.Insert(0, "."c)
            End If

            Select Case userMode

                Case PathUtil.UserMode.Current
                    RegEdit.CreateValue(Of String)(fullKeyPath:=EnvironmentPathCurrentUser, valueName:="PATHEXT",
                                                   valueData:=String.Join(";"c, GetPathExtDataList(userMode).Concat({extension})).Trim(";"c))

                Case PathUtil.UserMode.AllUsers
                    RegEdit.CreateValue(Of String)(fullKeyPath:=EnvironmentPathAllUsers, valueName:="PATHEXT",
                                                   valueData:=String.Join(";"c, GetPathExtDataList(userMode).Concat({extension})).Trim(";"c))

                Case Else
                    Throw New ArgumentException(message:="Unexpected enumeration value.", paramName:="userMode")

            End Select

        End Sub

        ''' <summary>
        ''' Deletes a directory from the PATH registry value of the specified user.
        ''' </summary>
        ''' <param name="userMode">The user mode.</param>
        ''' <param name="directory">The directory path.</param>
        Public Shared Sub DeleteDirectory(ByVal userMode As UserMode,
                                          ByVal directory As String)

            Dim dirs As IEnumerable(Of String) =
                From dir As String In GetPathDataList(userMode)
                Where Not dir.ToLower.Equals(directory, StringComparison.OrdinalIgnoreCase)

            CreatePath(userMode, data:=String.Join(";"c, dirs))

        End Sub

        ''' <summary>
        ''' Deletes a directory from the PATH registry value of the specified user.
        ''' </summary>
        ''' <param name="userMode">The user mode.</param>
        ''' <param name="index">The directory index, 0 = First.</param>
        ''' <exception cref="IndexOutOfRangeException">Directory index is out of range.</exception>
        Public Shared Sub DeleteDirectory(ByVal userMode As UserMode,
                                          ByVal index As Integer)

            Dim dirs As List(Of String) = GetPathDataList(userMode).ToList

            If (dirs.Count > index) Then
                dirs.RemoveAt(index)
            Else
                Throw New IndexOutOfRangeException(Message:="Directory index is out of range.")
            End If

            CreatePath(userMode, data:=String.Join(";"c, dirs))

        End Sub

        ''' <summary>
        ''' Deletes a file extension from the PATHEXT registry value of the specified user.
        ''' </summary>
        ''' <param name="userMode">The user mode.</param>
        ''' <param name="extension">The file extension.</param>
        Public Shared Sub DeleteExtension(ByVal userMode As UserMode,
                                          ByVal extension As String)

            If Not extension.StartsWith("."c) Then ' Fix extension.
                extension.Insert(0, "."c)
            End If

            Dim exts As IEnumerable(Of String) =
                From ext As String In GetPathExtDataList(userMode)
                Where Not ext.ToLower.Equals(extension, StringComparison.OrdinalIgnoreCase)

            CreatePath(userMode, data:=String.Join(";"c, exts))

        End Sub

        ''' <summary>
        ''' Deletes a file extension from the PATHEXT registry value of the specified user.
        ''' </summary>
        ''' <param name="userMode">The user mode.</param>
        ''' <param name="index">The file extension index, 0 = First.</param>
        ''' <exception cref="IndexOutOfRangeException">File extension index is out of range.</exception>
        Public Shared Sub DeleteExtension(ByVal userMode As UserMode,
                                          ByVal index As Integer)

            Dim exts As List(Of String) = GetPathExtDataList(userMode).ToList

            If (exts.Count > index) Then
                exts.RemoveAt(index)
            Else
                Throw New IndexOutOfRangeException(Message:="File extension index is out of range.")
            End If

            CreatePathExt(userMode, data:=String.Join(";"c, exts))

        End Sub

        ''' <summary>
        ''' Determines whether the PATH registry value of the specified user contains a directory.
        ''' </summary>
        ''' <param name="usermode">The usermode.</param>
        ''' <param name="directory">The directory path.</param>
        ''' <returns><c>true</c> if contains the specified directory; <c>false</c> otherwise.</returns>
        Public Shared Function ContainsDirectory(ByVal usermode As UserMode,
                                                 ByVal directory As String) As Boolean

            Return GetPathDataList(usermode).Any(Function(dir As String) dir.Equals(directory, StringComparison.OrdinalIgnoreCase))

        End Function

        ''' <summary>
        ''' Determines whether the PATHEXT registry value of the specified user contains a directory.
        ''' </summary>
        ''' <param name="usermode">The usermode.</param>
        ''' <param name="extension">The file extension.</param>
        ''' <returns><c>true</c> if contains the specified file extension; <c>false</c> otherwise.</returns>
        Public Shared Function ContainsExtension(ByVal usermode As UserMode,
                                                 ByVal extension As String) As Boolean

            If Not extension.StartsWith("."c) Then ' Fix extension.
                extension.Insert(0, "."c)
            End If

            Return GetPathExtDataList(usermode).Any(Function(ext As String) ext.Equals(extension, StringComparison.OrdinalIgnoreCase))

        End Function

#End Region

    End Class

End Namespace

#End Region
#5197
1. Está prohibido duplicar temas, puedes utilizar el botón "Modificar".
2. Es obligatorio utilizar las etiquetas GeShi al publicar código.
Lee y respeta las normas del foro y del foro de programación/scripting, se debe seguir unas normas de publicación por el bien de todos.





Citar
Código (dos) [Seleccionar]
rem*** Esto crea la carpeta "Magic Hills"
md  "c:\Usuarios\JMR\AppData\Local\Magic Hills"

rem*** Esto crea la carpeta "Amazing Carousel"
md  "c:\Usuarios\JMR\AppData\Local\Magic Hills\Amazing Carousel"

rem*** Esto crea la carpeta "profile"
md  "c:\Usuarios\JMR\AppData\Local\Magic Hills\Amazing Carousel\profile"

Puedes simplificar todo eso creando las 3 carpetas al mismo tiempo:
Código (dos) [Seleccionar]
MKDir "%LOCALAPPDATA%\Magic Hills\Amazing Carousel\Profile"


Sobre los errores que tienes, fíjate bien en lo que haces aquí:
Citar
Código (dos) [Seleccionar]
copy "App\license.xml" "%LOCALAPPDATA%\Users\JMR\AppData\Local\Magic Hills\Amazing Carousel\profile"

Escribe en consola:
Código (dos) [Seleccionar]
Echo "%LOCALAPPDATA%\Users\JMR\AppData\Local\Magic Hills\Amazing Carousel\profile"

Estás utilizando la variable de entorno dinámica %LocalAppData% que ya hace referencia a esa ruta, y le estás añadiendo la misma ruta...
Supongo que dicho esto, te habrás dado cuenta de cómo solucionarlo.

Sobre lo de que no te copia el archivo, probablemente sea por que no estás delimitando la carpeta, para solucionarlo, añádele un backslash al final de la ruta ("...\Profile\"), también puedes especificar directamente el nombre del archivo de destino (...\Profile\License.xml).

Saludos!
#5198
Parezco retrasado, estoy viendo todo el rato que publicas código en VB.Net pero yo tenía metido en la cabeza que solo manejabas C# por que te confundí con otro usuario y por eso te puse el código en C# aunque solo veia Vb.Net, no era por "presumir" ni nada parecido jaja, el código en C# la verdad es que quedó de más.




Cita de: nolasco281 en 10 Mayo 2015, 11:06 AMinvestigare es el .trim

La función Trim, TrimStart y TrimEnd lo que hacen es eliminar los espacios del principio o del final de un String, pero puedes utilizar sus overloads para especificar otros (uno, o varios) caracteres a eliminar.

En el ejemplo de arriba yo solo utilizo Trim cómo modo preventivo por si a lo mejor en tu aplicación te estaba fallando por que escribias algún espacio al principio o al final.




Cita de: nolasco281 en 10 Mayo 2015, 11:06 AM
Código (vbnet) [Seleccionar]
'Dim cantidad As String = Convert.ToInt32(rseCantidadPedido.Text).ToString("00")

Gracias le da un mejor formato a la cantidad vere si no me causa problema en la BD ya que si no me equivoco lo manda como string.

Si quieres enviarlo a la DataBase como valor de tipo Integer entonces solo tienes que convertir el string formateado:
Código (vbnet) [Seleccionar]
Dim value as Integer = CInt("05")
o también:
Código (vbnet) [Seleccionar]
Dim value as Integer = Convert.ToInt32("05")

Saludos
#5199
Cita de: gecko1 en 10 Mayo 2015, 10:42 AM¿Por qué no se puede borrar temas o mensajes?

La eliminación de un post es un derecho que queda reservado al Staff de moderadores y colaboradores.

El admin, co-admines, y moderadores globales pueden hacer lo que les plazca con los temas, los moderadores de sección pueden hacer lo que les plazca con los temas de la sección que moderan, y los colaboradores pueden eliminar/bloquear sus propios temas/comentarios.

Supongo que el motivo de que un usuario sin privilegios no pueda eliminar su propio tema/comentario debe ser evidentemente por dos cosas, por ética y por motivos de seguridad,
si un usuario formula una pregunta y se la resuelve, y luego ese usuario elimina el post entonces eso tiene cero ética, por que ese post ya no le sirve a nadie en busca de información,
o si un usuario publica un post y comienza una discusión fuerte con insultos y demás, y luego borra su tema para "no dejar huellas" de lo sucedido,
además, tengo entendido que los posts de las secciones públicas se indexan en Google y eso sería otro motivo por el que no creo que fuese beneficioso que cualquiera pueda eliminar su post.

Los moderadores estamos también para ayudar a los usuarios a resolver conflictos en sus posts, puedes comunicar el problema que tengas usando el botón "Reportar al moderador" que encontrarás en el tema, el reporte le llegará al moderador de esa sección,
pero obviamente si solo pretendes eliminar tus posts por que te da verguenza parecer un lammer... mejor ni lo intentes, por que eso es una tontería.




Cita de: gecko1 en 10 Mayo 2015, 10:42 AMLa verdad es que tengo bastantes temas y mensajes que me hacen dar bastante verguenza :rolleyes: yo a este foro, y lo admito, llegué como un completo lammer y sin saber ni p##a idea de qué iba un foro.

A este tipo de foros se suele llegar sin saber mucho o sabiendo nada, y solo el tiempo otorga la experiencia, durante ese tiempo lo más seguro es que la inexperiencia haga publicar chorradas tremendas ...preguntas de novato;
cuando ya se ha adquirido cierto nivel de experiencia en eso que preguntaste hace unos años es cuando se siente verguenza de que ese post siga visible para cualquiera, por que quizás quien vea eso pensará que eres un noob/lammer, y quizás ahora ya no lo seas, pero el caso es que lo fuiste cuando escribiste esa chorrada, forma parte de ti cómo de cualquiera de nosotros, no hay por que avergonzarse y de hecho hay que saber aceptarlo para NO VENIRSE ARRIBA, no creerse superior, por que todos hemos sido noobs/lammers en algún momento de nuestras vidas, y que los posts sigan ahí es algo positivo por que siempre viene bien recordar que la experiencia se ha ganado a base de cometer errores.

No solo me estoy poniendo en la piel del otro, yo hablo por propia experiencia, que en el foro hay infinidad de posts de mi antiguo usuario donde muestro completa ignorancia sobre bastantes temas informáticos y lo que más verguenza me causa es que yo parecía (bueno, era) un paleto haciendo preguntas sobre programación en Batch (el lenguaje más simple del mundo), cosas cómo esa y otras cosas que ahora controlo de sobra.

Saludos!
#5200
No estás haciendo nada mal, simplemente la llave no se encuentra por que las minúsculas/mayúsculas no coinciden, o el texto que estás buscando no existe cómo llave.

Para condicionar el resultado, asigna la llave de los items en minúscula:
Código (vbnet,5) [Seleccionar]
Dim articulo As String = "Clavos"
Dim cantidad As Integer = 40

Dim lvItem As New ListViewDataItem(text:="", values:={articulo, cantidad.ToString("00")}) With
   { .Key = articulo.Trim.ToLower }

Me.RadListView1.Items.Add(lvItem)


Y entonces busca en minúscula:
Código (vbnet,4,8) [Seleccionar]
Dim articulo As String = txtArticulosPedidos.Text.Trim
Dim cantidad As String = Convert.ToInt32(rseCantidadPedido.Text).ToString("00")

If Me.lvListaPedidos.FindItemByKey(key:=articulo.ToLower, searchVisibleItems:=True) IsNot Nothing Then
   RadMessageBox.Show("El articulo ya existe en la lista.", "", MessageBoxButtons.OK, RadMessageIcon.Error)
Else
   Dim lvItem As New ListViewDataItem(text:="", values:={articulo, cantidad} with
       { .Key = articulo.ToLower }
   Me.lvListaPedidos.Items.Add(lvItem)
End If


Saludos