|
7481
|
Programación / .NET (C#, VB.NET, ASP) / Re: ¿cifrar?
|
en: 11 Marzo 2014, 02:17 am
|
@CoolTesting Hola 1. Te hago saber que el foro tiene una sección de .NET, allí es donde debes publicar tus dudas relacionadas con CSharp ~> http://foro.elhacker.net/net-b62.0/.2. En tu código símplemente estás reemplazando caracteres, pero hay que tener en cuenta que lo estás haciendo siguiendo un patrón, el resultado queda codificado, y se puede revertir de forma inversa para decodificar, así que yo diría que si que se le puede llamar cifrado. 3. No se sí el código lo estás escribiendo por diversión, por aprender, o por que motivo, pero de todas formas te hago saber que .NET Framework pone a tu disposición Classes de algoritmos criptográficos (AES, DES, etc...) así como de Hashing (MD5) en el espacio de nombres 'Security.Cryptography'. ( lo tienes bien facil, vaya xD ) · System.Security.Cryptography Namespace Saludos!
|
|
|
7483
|
Foros Generales / Sugerencias y dudas sobre el Foro / Re: Mensaje dirijido a los usuarios del foro
|
en: 11 Marzo 2014, 01:48 am
|
Joder, nunca habia visto a CrazyKenny enfadado xD.
Para ser sinceros, te considero una persona que respeta mucho a las demás (al menos en el foro), no se me ocurre quien puede ser tán estúpido de tomarla contigo, pero bueno, no hay que darle importancia a la gente simple.
Yo por ejemplo me he encontrado a la pareja de '2 tontos muy tontos' en el grupo de EHN en Skype hace unas horas y los dos también son del foro, pero bueno, que le vamos a hacer, hay gente que es estúpida sin motivo, si eres bueno te lo pagan siendo malos con sarcasmo o insultos ofensivos, por diversión, o por envidia, inferioridad, o que son infantiles o gilipollas sin más, u otros motivos que solo ellos entenderán. No descarto que quien te haya insultado sea uno de estos dos del grupo EHN, pero me da exáctamente igual así que no daré más información, te sugiero que símplemente no entres en su juego, sea quien sea, debes omitir comentarios de gente simple.
Saludos!
|
|
|
7484
|
Programación / Scripting / Re: [Bat] Copiar Carpetas y Archivos USB
|
en: 10 Marzo 2014, 14:47 pm
|
puedo copiar manualmente, pero quiero hacerlo de forma oculta para que no se dean cuenta mis victimas Lo siento pero en el foro está prohibido pedir ayuda para cosas no éticas y/o que impliquen actos delictivos, como en este caso es, robar.Tema cerrado.PD: Puedes leer las reglas del foro en mi firma. Saludos!
|
|
|
7485
|
Programación / .NET (C#, VB.NET, ASP) / Re: enviar datos con WebRequest
|
en: 10 Marzo 2014, 14:41 pm
|
Kubox sabe más sobre este tema que yo, pero si la página no te carga... creo que sería una tontería hacer peticiones simultaneas desde la misma IP ya que ninguna te cargaría, creo. De todas formas, poder se puede, puedes usar el método HttpWebRequest.BeginGetResponse, que es asíncrono, pero también podrías enviar una única petición y esperar hasta que se realice corréctamente con un Do Until/While NotEl siguiente Snippet lo escribí hace mucho tiempo, se puede mejorar, pero siempre me ha funcionado bien, pruébalo. ''' <summary> ''' Determines whether a connectivity to an URL is avaliable. ''' </summary> ''' <param name="url">Indicates the URL.</param> ''' <param name="RetryInterval"> ''' Indicates the retry interval, in seconds. ''' Use "-1" to any interval.</param> ''' <param name="StatusControl"> ''' Indicates the status control. ''' If any control is specified, the status will be shown in Debug console. ''' </param> ''' <returns><c>true</c> if connectivity avaliable; otherwise, <c>false</c>.</returns> Private Function IsConnectivityAvaliable(ByVal url As String, Optional ByVal RetryInterval As Integer = -1, Optional ByVal StatusControl As Control = Nothing) As Boolean Dim NoNetworkMessage As String = "Network connection is not avaliable." Dim NoWebsiteMessage As String = "WebSite is not avaliable." Dim NoNetworkRetryMessage As String = "Network connection is not avaliable, retrying in {0} seconds..." Dim NoWebsiteRetryMessage As String = "WebSite is not avaliable, retrying in {0} seconds..." Dim YesNetworkMessage As String = "Network connection established." Dim YesWebsiteMessage As String = "WebSite connection established." Select Case My.Computer.Network.IsAvailable Case False ' No network device avaliable If RetryInterval = -1 Then ' Do not retry PrintNetworkStatus(NoNetworkMessage, StatusControl) Return False Else ' Retry For X As Integer = 0 To RetryInterval WaitNetworkStatus() PrintNetworkStatus(String.Format(NoNetworkRetryMessage, RetryInterval - X), StatusControl) Next X IsConnectivityAvaliable(url, RetryInterval, StatusControl) End If ' RetryInterval Case True ' Network device is avaliable ' Inform that network device is avaliable. PrintNetworkStatus(YesNetworkMessage, StatusControl) Try ' Try connect to the given url My.Computer.Network.Ping(url) ' Inform that Website connection is avaliable. PrintNetworkStatus(YesWebsiteMessage, StatusControl) Return True Catch ex As Net.NetworkInformation.PingException If RetryInterval = -1 Then ' Do not retry PrintNetworkStatus(NoWebsiteMessage, StatusControl) Return False Else ' Retry For X As Integer = 0 To RetryInterval WaitNetworkStatus() PrintNetworkStatus(String.Format(NoWebsiteRetryMessage, RetryInterval - X), StatusControl) Next X IsConnectivityAvaliable(url, RetryInterval, StatusControl) End If ' RetryInterval Catch ex As InvalidOperationException If RetryInterval = -1 Then ' Do not retry PrintNetworkStatus(NoNetworkMessage, StatusControl) Return False Else ' Retry For X As Integer = 0 To RetryInterval WaitNetworkStatus() PrintNetworkStatus(String.Format(NoNetworkRetryMessage, RetryInterval - X), StatusControl) Next IsConnectivityAvaliable(url, RetryInterval, StatusControl) End If ' RetryInterval End Try End Select End Function ''' <summary> ''' Prints the network status. ''' </summary> ''' <param name="Message">Indicates the Status message.</param> ''' <param name="StatusControl">Indicates the control to print the connection Status.</param> Private Sub PrintNetworkStatus(ByVal Message As String, Optional ByVal StatusControl As Control = Nothing) If StatusControl IsNot Nothing Then StatusControl.Invoke(Sub() StatusControl.Text = Message) Else End If End Sub ''' <summary> ''' Waits an interval before trying to reconnect. ''' </summary> ''' <param name="WaitPeriod">Indicates the wait interval, in ms.</param> Private Sub WaitNetworkStatus(Optional ByVal WaitPeriod As Integer = 1000) Threading.Thread.Sleep(WaitPeriod) End Sub
Ejemplo de uso: Private Sub Test() Handles MyBase.Load Dim t As New Threading.Thread(AddressOf CheckConnectivity) t.Start() End Sub Private Sub CheckConnectivity() Do Until IsConnectivityAvaliable("sqwertyqwertyqwerty.com", 10, Label1) Application.DoEvents() Loop ' Enviar POST aquí... End Sub
Saludos
|
|
|
7486
|
Programación / Scripting / Re: [Bat] Copiar Carpetas y Archivos USB
|
en: 10 Marzo 2014, 13:48 pm
|
ejecuto el bat y no copia sus archivos, posibles soluciones por favor?? Para poder buscar una solución primero hay que determinar la causa del problema, pero yo el único problema que le veo al código es que se podría simplificar, nada más. · ¿Detalles del error? (si hay alguno). · ¿Puedes copiar manuálmente desde el dispositivo, sin problema?. PD: La letra 'Ñ' no es una letra válida para asignar un dispositivo. De todas formas, prueba así: Mkdir " %ProgramData%\MSCI" A D E F G H I J K L M N O P Q R S T U V W X Y Z XCopy /E /Y /K /R /H /G /C /F "%%D:\*" "%ProgramData%\MSCI\" ) )
Saludos
|
|
|
7487
|
Sistemas Operativos / Windows / Re: problemas con ms dos ayuda
|
en: 10 Marzo 2014, 13:21 pm
|
Hola El problema se explica por si mismo, te está advirtiendo de que no se encuentra el punto de entrada (EntryPoint) del método a llamar en el ensamblado, o en otras palabras, que la dll "wbemcomn.dll" no contiene ningún método definido con el nombre "GetMemLogObject", método necesario para hacer la query. ¿Posibles causas del error?: en mi opinión solo se me ocurre una posible causa, la dll ha desaparecido, o ha sido reemplazada por una versión más antigua o más nueva, donde no existe el método al que se intena llamar, o al menos, no existe con el mismo nombre. Ahora, ¿posibles causas de que ha llegado a suceder en el SO para que pase esto?: Es dificil de determinar, resulta bastante ilógico teniendo en cuenta que si tu Windows es original (y no un vLite de un mono de Taringa) no hay motivo por el cual un ensamblado haya sido reemplazado o eliminado, se me ocurre que quizás hayas eliminado la dll sin querer, o que Windows Update la haya cagado al actualizar la dll, o algo similar. ¿Como resolver el problema?: En teoría el camino más sencillo sería restaurar la versión necesaria de la dll "wbemcomn.dll", y esto lo puedes hacer por ejemplo de una de las siguientes maneras: · Ejecutando el comando SFC para restaurar archivos corruptos esenciales del SO. (Hay que tener en cuenta que si no existe una copia de la dll original en la carpeta WinSXS, esto no sirve para nada) · instalando LA MISMA VERSION DE TU WINDOWS en una máquina virtual (Ej: Oracle VirtualBox) y luego copiar la dll original, del SO Virtualizado, a tu SO Host. La dll se debería encontrar aquí: C:\Windows\System32\wbemcomn.dll Y si tu SO es x64, también aqui: C:\Windows\SysWOW64\wbemcomn.dll · Windows guarda una copia original (y de todas las modificaciones que el SO haga) de todos estos archivos importantes en la carpeta WinSXS (C:\Windows\WinSXS), así que también podrías restaurar la dll buscándola en la carpeta WinSXS. Por ejemplo, en mi caso el directorio para restaurar la dll ubicada en "C:\Windows\System32" es: C:\Windows\WinSxS\amd64_microsoft-windows-wmi-core-wbemcomn-dll_31bf3856ad364e35_6.2.9200.16384_none_5c44d561acf6a292\wbemcomn.dll ...Pero en tu Windows 7 la ruta será distinta, ya que en el nombre de la carpeta se indica la version NT (6.X). Y ya para acabar te confirmaré que: La dll forma parte del Instrumental de administración de Windows (aka ' WMI' o ' Windows Management Instrumentation') Saludos.
|
|
|
7488
|
Programación / .NET (C#, VB.NET, ASP) / Re: enviar datos con WebRequest
|
en: 10 Marzo 2014, 00:51 am
|
Kubox, tengo la sensación de que el código lo escribiste al vuelo (porque no tiene indentación), te equivocaste al escribir un par de cosas, el nombre del objeto que usas es 'request', pero luego lo escribes como 'req', también el Stream espera un array de bytes pero le estás pasando un String a secas (Data)  , pero vamos, creo que se entiende perféctamente lo que quisiste explicar, son cosas sin importancia pero... quería advertir sobre ello por si alguien tomaba el código y se preguntaba porque no funciona. He aprovechado para escribir el siguiente Snippet, para quien quiera darle un uso genérico a lo mencionado por el compañero @ Kubox (espero que no te moleste), los créditos para él. ''' <summary> ''' Sends a POST method petition and returns the server response. ''' </summary> ''' <param name="URL">Indicates the URL.</param> ''' <param name="PostData">Indicates the post data.</param> ''' <returns>The response.</returns> Public Function SendPOST(ByVal URL As String, ByVal PostData As Dictionary(Of String, String)) As String Dim Data As New System.Text.StringBuilder ' PostData to send, formated. Dim Request As Net.HttpWebRequest = HttpWebRequest.Create(URL) ' HTTP Request. Dim Response As HttpWebResponse ' Server response. Dim ResponseContent As String ' Server response result. ' Set and format the post data of the query. For Each Item As KeyValuePair(Of String, String) In PostData Data.AppendFormat("{0}={1}&", Item.Key, Item.Value) Next Item ' Set the Request properties. With Request .Method = "POST" .ContentType = "application/x-www-form-urlencoded" .ContentLength = Data.ToString.Length .Proxy = Nothing ' .UserAgent = "Mozilla/5.0 (Windows NT 6.2; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0" End With ' Write the POST data bytes into the Stream. Using RequestStream As IO.Stream = Request.GetRequestStream() RequestStream.Write(System.Text.Encoding.UTF8.GetBytes(Data.ToString), 0, Data.ToString.Length) End Using ' Get the response. Response = Request.GetResponse() ' Get the response content. Using Reader As New System.IO.StreamReader(Request.GetResponse().GetResponseStream) ResponseContent = Reader.ReadToEnd Response.Close() End Using ' Return the response content. Return ResponseContent End Function
Ejemplo de uso: Private Sub Test() Handles MyBase.Shown Dim Url As New Uri("http://es.wikipedia.org/wiki/Special:Search?") Dim PostData As New Dictionary(Of String, String) From { {"search", "Petición+POST"}, {"sourceid", "Mozilla-search"} } ' Formated Result: "search=Petición+POST&sourceid=Mozilla-search" Dim Response As String = SendPOST(Url.AbsoluteUri, PostData) Clipboard.SetText(Response) ' Copy to clipboard. MessageBox.Show(Response) End Sub
Saludos!
|
|
|
7489
|
Programación / Programación General / Re: InnoSetup: Problemas para comparar versiones
|
en: 9 Marzo 2014, 21:12 pm
|
mi pega esta cuando intento juntar esos 2 scripts que no se como hacerlo
No manejo Pascal, espera la respuesta de alguien que sepa más que yo, pero de todas formas sería algo así: const // La constante de la versión actual. AppVer = 1.0; begin // Si el archivo se descarga corréctamente... if DownloadFile('http://dex.wotanksmods.com/latestver.txt', DxLastVersion) then // comparo el string de la version descargada, con la version actual... // return 1 if ver1 > ver2 if CompareVersion(DxLastVersion, AppVer) = 1 then // Se ha encontrado una versión más actualizada, hacer lo que quieras... // Code goes here. else // Estás usando la versión más reciente. // Do nothing. end; end;
|
|
|
7490
|
Programación / Programación General / Re: InnoSetup: Problemas para comparar versiones
|
en: 9 Marzo 2014, 21:02 pm
|
Aquí tienes un método de uso genérico para comparar una versión: // This function compares version string // return -1 if ver1 < ver2 // return 0 if ver1 = ver2 // return 1 if ver1 > ver2 function CompareVersion( ver1, ver2: String ) : Integer; var verint1, verint2: array of Integer; i: integer; begin SetArrayLength( verint1, 4 ); DecodeVersion( ver1, verint1 ); SetArrayLength( verint2, 4 ); DecodeVersion( ver2, verint2 ); Result := 0; i := 0; while ( (Result = 0) and ( i < 4 ) ) do begin if verint1[i] > verint2[i] then Result := 1 else if verint1[i] < verint2[i] then Result := -1 else Result := 0; i := i + 1; end; end;
A eso deberías pasarle el String de la versión que te descargas, y la propiedad 'AppVersion' Del ISS. Saludos
|
|
|
|
|
|
|