|
6331
|
Programación / .NET (C#, VB.NET, ASP) / Re: Pregunta sobre una aplicación de c#
|
en: 2 Noviembre 2014, 14:19 pm
|
Hola , la verdad me has ayudado bastante pero si te digo la verdad estoy liado, por que en otro post me dijiste que en mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0,0 ,0); mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
El 1º era los clicks , 2 coordenadas , 3 coordenadas y 4 que era chungo , pero ahora me has dicho que : es así mouse_event(MOUSEEVENTF_LEFTUP,x, y, 0, 0); cual de los 2 es el correcto? Ambos son correctos. La única diferencia es que en el primer ejemplo las coordenadas son "0", y en el segundo ejemplo son variables, bueno, aparte de que usas flags distintos en cada ejemplo para el primer parámetro, claro está. No entiendo tu pregunta, eso ya no recuerdo ni cuando "te lo dije", pero la información es correcta y sigue siendo la misma, lo puedes comprobar tu mismo en la documentación de MSDN: http://msdn.microsoft.com/en-us/library/windows/desktop/ms646260%28v=vs.85%29.aspx1er parámetro: evento(s) del mouse (o "flags") 2do parámetro: coordenada X 3er parámetro coordenada Y 4to parámetro: datos adicionales relacionados con el evento 5to parámetro : información extra saludos
|
|
|
6332
|
Programación / .NET (C#, VB.NET, ASP) / Re: Una ayuda con un proyecto de c#?
|
en: 2 Noviembre 2014, 14:05 pm
|
lo que quiero en realidad es saber como podría hacerse : si la pagina del form1 esta conectada a nuestro navegador entonces aparezca en el label que la conexión se hizo correctamente Vamos a ver, ¿lo que quieres es esperar a que la página se cargue del todo en el WebBrowser, y luego mostrar un "mensaje" de validación?. Entonces suscríbete al evento DocumentCompleted del WebBrowser ' [WebBrowser] - Navigate And Wait ' ' By Elektro H@cker ' ' Usage Examples: ' NavigateAndWait(WebBrowser1, "www.google.com") : MsgBox("Webpage is ready!") ''' <summary> ''' Navigates to an url and waits the page to be loaded. ''' </summary> ''' <param name="url">Indicates the url to navigate.</param> ''' <param name="newWindow">Indicates whether the url should open into a new browser window.</param> Private Sub NavigateAndWait(ByVal Browser As WebBrowser, ByVal url As String, Optional newWindow As Boolean = False) With Browser .Tag = False ' IsWebPageLoaded = False AddHandler .DocumentCompleted, AddressOf WebBrowser_DocumentCompleted .Navigate(url, newWindow) Do Until DirectCast(.Tag, Boolean) ' IsWebPageLoaded = True Application.DoEvents() Loop RemoveHandler .DocumentCompleted, AddressOf WebBrowser_DocumentCompleted End With End Sub ''' <summary> ''' Handles the DocumentCompleted event of the WebBrowser control. ''' </summary> ''' <param name="sender">The source of the event.</param> ''' <param name="e">The <see cref="WebBrowserDocumentCompletedEventArgs"/> instance containing the event data.</param> Private Sub WebBrowser_DocumentCompleted(ByVal sender As Object, ByVal e As WebBrowserDocumentCompletedEventArgs) DirectCast(sender, WebBrowser).Tag = True End Sub
C#, traducción al vuelo // [WebBrowser] - Navigate And Wait // // By Elektro H@cker // // Usage Examples: // NavigateAndWait(WebBrowser1, "www.google.com") : MsgBox("Webpage is ready!") /// <summary> /// Navigates to an url and waits the page to be loaded. /// </summary> /// <param name="url">Indicates the url to navigate.</param> /// <param name="newWindow">Indicates whether the url should be open into a new browser window.</param> private void NavigateAndWait(WebBrowser Browser, string url, bool newWindow = false) { var _with1 = Browser; _with1.Tag = false; // IsWebPageLoaded = False _with1.DocumentCompleted += WebBrowser_DocumentCompleted; _with1.Navigate(url, newWindow); // IsWebPageLoaded = True while (!((bool)_with1.Tag)) { Application.DoEvents(); } _with1.DocumentCompleted -= WebBrowser_DocumentCompleted; } /// <summary> /// Handles the DocumentCompleted event of the WebBrowser control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="WebBrowserDocumentCompletedEventArgs"/> instance containing the event data.</param> private void WebBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) { ((WebBrowser)sender).Tag = true; } //======================================================= //Service provided by Telerik (www.telerik.com) //=======================================================
PD: Puedes reemplazar la instrucción Application.DoEvents() por un BGWorker. saludos
|
|
|
6333
|
Programación / .NET (C#, VB.NET, ASP) / Re: Librería de Snippets !! (Compartan aquí sus snippets)
|
en: 2 Noviembre 2014, 09:29 am
|
Un ayudante para el manejo del CRC-32 Lo he cosmetizado un poco, el código original lo pueden encontrar en http://nmdt.codeplex.com/#Region " Usage Examples " ' Usage Examples: ' MsgBox(Crc32.Calculate("C:\File")) ' MsgBox(Convert.ToString(Crc32.Calculate("C:\File"), 16).ToUpper) #End Region #Region " Imports " Imports System.IO #End Region #Region "CRC-32" ''' <summary> ''' ISO 3309 CRC-32 Calculator. ''' </summary> Public NotInheritable Class Crc32 #Region " Variables " ''' <summary> ''' The CRC-32 polynomial. ''' </summary> Private Shared ReadOnly CRC32Poly As UInteger = &HEDB88320UI ''' <summary> ''' The CRC32 table. ''' </summary> Private Shared Crc32Table(0UI To 255UI) As UInteger #End Region #Region " Constructors " ''' <summary> ''' Prevents a default instance of the <see cref="Crc32"/> class from being created. ''' </summary> Private Sub New() End Sub ''' <summary> ''' Initialize the CRC table from the polynomial. ''' </summary> Shared Sub New() Dim i As UInteger Dim j As UInteger Dim l As UInteger For i = 0 To 255 j = i For l = 0 To 7 If (j And 1) Then j = ((j >> 1) Xor CRC32Poly) Else j >>= 1 End If Next l Crc32Table(i) = j Next i End Sub #End Region #Region " Public Methods " ''' <summary> ''' Validates a file against an input CRC. ''' </summary> ''' <param name="fileName">Filename of the file to validate.</param> ''' <param name="inputCrc">The CRC value against which the validation should occur.</param> ''' <returns>True if the input CRC matches the calculated CRC of the data.</returns> Public Shared Function Validate(ByVal fileName As String, ByVal inputCrc As UInteger) As Boolean Return Calculate(fileName) = inputCrc End Function ''' <summary> ''' Validates a byte array against an input CRC. ''' </summary> ''' <param name="data">The byte array to validate.</param> ''' <param name="inputCrc">The CRC value against which the validation should occur.</param> ''' <returns>True if the input CRC matches the calculated CRC of the data.</returns> Public Shared Function Validate(ByVal data() As Byte, ByVal inputCrc As UInteger) As Boolean Return Calculate(data) = inputCrc End Function ''' <summary> ''' Calculate the CRC-32 of a file. ''' </summary> ''' <param name="fileName">Filename of the file to calculate.</param> ''' <param name="bufflen">Specify the size, in bytes, of the read buffer to be used (default is 1k).</param> ''' <returns>A 32-bit unsigned integer representing the calculated CRC.</returns> ''' <exception cref="System.IO.FileNotFoundException">fileName could not be found.</exception> Public Shared Function Calculate(ByVal fileName As String, Optional ByVal bufflen As Integer = 1024) As UInteger If (Not File. Exists(fileName )) Then Throw New FileNotFoundException(fileName & " could not be found.") Return 0 End If Return Calculate(New FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read), bufflen) End Function ''' <summary> ''' Calculate the CRC-32 of an array of bytes. ''' </summary> ''' <param name="data">Byte array containing the bytes to calculate.</param> ''' <param name="startIndex">Specifies the starting index to begin the calculation (default is 0).</param> ''' <param name="length">Specify the length of the byte array to check (default is -1, or all bytes).</param> ''' <param name="crc">Input CRC value for ongoing calculations (default is FFFFFFFFh).</param> ''' <returns>A 32-bit unsigned integer representing the calculated CRC.</returns> ''' <exception cref="System.ArgumentNullException">data;data cannot be equal to null.</exception> ''' <exception cref="System.ArgumentOutOfRangeException">length;length must be -1 or a positive number.</exception> Public Shared Function Calculate(ByVal data() As Byte, Optional ByVal startIndex As Integer = 0I, Optional ByVal length As Integer = -1I, Optional ByVal crc As UInteger = &HFFFFFFFFUI) As UInteger If data Is Nothing Then Throw New ArgumentNullException("data", "data cannot be equal to null.") End If If length = -1 Then length = data.Length - startIndex End If If length <= 0 Then Throw New ArgumentOutOfRangeException("length", "length must be -1 or a positive number.") End If Dim j As Integer Dim c As Integer = length - 1 For j = startIndex To c crc = Crc32Table((crc Xor data(j)) And &HFF) Xor (crc >> 8) Next j Calculate = crc Xor &HFFFFFFFFUI End Function ''' <summary> ''' Calculate the CRC-32 of a Stream. ''' </summary> ''' <param name="stream">The Stream to calculate.</param> ''' <param name="bufflen">Specify the size, in bytes, of the read buffer to be used (default is 1k).</param> ''' <param name="closeStream">if set to <c>true</c> the stream gets closed after CRC-32 is calculated.</param> ''' <returns>A 32-bit unsigned integer representing the calculated CRC.</returns> Public Shared Function Calculate(ByVal stream As Stream, Optional ByVal bufflen As Integer = 1024I, Optional ByVal closeStream As Boolean = True) As UInteger '' our working marshal buffer will be 1k, this is a good compromise between eating up memory and efficiency. Dim blen As Integer = bufflen Dim crc As UInteger = &HFFFFFFFFUI Dim b() As Byte Dim i As Long Dim l As Long = stream.Length Dim c As Long = l - 1 Dim e As Integer Dim j As Integer ReDim b(blen - 1) For i = 0 To c Step blen e = CInt(l - i) If e > blen Then e = blen End If If (stream.Position <> i) Then stream.Seek(i, SeekOrigin.Begin) End If stream.Read(b, 0, e) e -= 1 For j = 0 To e crc = Crc32Table((crc Xor b(j)) And &HFF) Xor (crc >> 8) Next j Next i If (closeStream) Then stream.Close() End If Calculate = crc Xor &HFFFFFFFFUI End Function #End Region End Class #End Region
|
|
|
6334
|
Foros Generales / Foro Libre / Re: Ayuda para iniciciarce en el haking
|
en: 2 Noviembre 2014, 02:26 am
|
¿Que es el haking? ¿El rey ha?¿El verbo hak+ing?¿gnikah?¿ El conjunto A={'h','a','k','i','n','g'}? Lo que el compañero @ L0RdP3I seguramente quiere decir es que lo primero que debes hacer para aprender, es comprender. Sin ánimo de ofender, pero cualquier erudito informático en general (o Hacker) no son gente que se pronuncie o se exprese como un niño que no ha pasado la E.S.O., así que ponte a estudiar como se escriben los términos, y el significado de las terminos, en fín, la terminología informática en general (si quieres profundizar en las definiciones del Hacking es cosa tuya), y cuando ya sepas de lo que estás hablando entonces vuelves aquí a preguntar... El dominio de lenguajes como a puntuado @ L0RdP3I también son importantes, tanto informáticos como linguísticos, bueno, en realidad solo el Inglés es importante, ya que siempre van ligados. Saludos
|
|
|
6335
|
Sistemas Operativos / Windows / Re: Variables de entorno - Ruta path sobreescrita.
|
en: 1 Noviembre 2014, 23:11 pm
|
alguien tiene la ruta default para windows 8.1 (x64) Rutas por defecto contenidas en la variable de entorno PATH para Windows 8/8.1 X64... Current User01) C:\Windows 02) C:\Windows\System32 03) C:\Windows\System32\wbem 04) C:\Windows\System32\WindowsPowerShell\v1.0 05) C:\Windows\SysWOW64 All Users01) C:\Windows 02) C:\Windows\System32 03) C:\Windows\System32\wbem 04) C:\Windows\System32\WindowsPowerShell\v1.0 05) C:\Windows\SysWOW64
El contenido literal del valor de registro... Current User: HKEY_CURRENT_USER\Environment PATHC:\Windows;C:\Windows\System32;C:\Windows\System32\wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\SysWOW64 All Users: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment PATHC:\Windows;C:\Windows\System32;C:\Windows\System32\wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\SysWOW64
Puedes llevar a cabo las operaciones de listado, limpieza, agregar/eliminar, o restaurar por defecto el PATH, usando mi aplicación: [SOURCE] PATHS (Administra las entradas de las variables de entorno 'PATH' y...)Saludos
|
|
|
6336
|
Programación / .NET (C#, VB.NET, ASP) / Re: Que es mejor o recomiendan más Vb o C#?
|
en: 1 Noviembre 2014, 20:57 pm
|
Es más que nada porque VB es un lenguaje que te permite hacer cosas que se consideran "un mal hábito" como no declarar las variables que utilizas, etc. No opino de esa misma manera, un programador usará malas prácticas si así lo quieres hacer sin importar el lenguaje que sea, en C# puedes usar malas practicas, las cuales además algunas se comparten con VB.NET, pero otras malas prácticas son específicas para este lenguaje, C#. Cabe mencionar que ese tipo de malos hábitos relacionadas con las variables en VB.Net se pueden evitar activando las declaraciones " Option", cosa que se puede especificar en las opciones de la IDE para que estén activadas por defecto en todos los nuevos proyectos ( Tools -> Options -> Project and Solutions -> VB defaults ), o se pueden declarar de forma manual en la cabecera de la Class/Module: Option Explicit On Option Strict On Option Infer Off
Entonces, con esto queda el problema de esos malos hábitos resuelto. En mi opinión, esto lo veo una mejora, ya que VB.Net no nos obliga a usar malas prácticas, no es un mal lenguaje sino todo lo contrario al brindarnos la posibilidad de elección para trabajar de una forma más rápida evitando ese tipo de especificaciones/correcciones cuando sabemos perfectamente lo que estamos haciendo y esto supone un aumento de rendimiento, ya que en cualquier momento podemos activar las declaraciones para añadir las especificaciones o hacer las correcciones necesarias y eso me parece algo genial. Gran artículo por parte de Microsoft explicando los entresijos básicos de MSIL, gracias, lo he añadido a mi mini-FAQ de Manuales .Net xD
Entonces ¿Por que recomiendan más C# que VB? Habrá gente experta que haya trabajado por igual con VB.Net y C# para sacar sus propias conclusiones y recomendar un lenguaje o el otro. Yo no los he trabajado por igual, pero puedo decir que jamás he necesitado recurrir a C# para desarrollar algo que no se pudiera hacer en Vb.Net, hace ya bastante tiempo cuando me hice esta misma pregunta leía comentarios de gente que suele decir que entre VB.Net y C#, C# sería la única opción para tocar temas delicados como la inyección de código/dll, el API Hooking, la lectura/escritura de la memoria en un proceso ajeno, etc, pero obviamente cuando empiezas a tocar .Net acabas dándode cuenta de que ese tipo de comentarios/acusaciones son completamente falsas ya que se puede hacer exactamente lo mismo en Vb.Net que en C# respecto a esos temas que mencioné, aunque de todas formas no discuto que quizás sí exista algo que solo se pueda llevar a cabo con C# (entre Vb.Net y C# hablando) ya que no soy ningún gurú en este lenguaje, pero para cosar "normales" te va a servir cualquiera de los dos lenguajes. Por otro lado, también habrá gente que nunca haya usado CSharp, pero por su nombre lo asociarán automáticamente con C++ y tenderán a decir que es mejor lenguaje por favoritismo o simplemente por ese mal razonamiento, la razón de este mal razonamiento se explica detalladamente en el articulo que te mostró @ El Benjo. Claro, si asociasemos VB.Net con VB6 o VBS entonces yo tambien diría lo mismo, diría que VB.Net es una completa basura como lenguaje y que C# es mejor, pero estaría equivocado porque ni VB.Net se asemeja en sus antecesores, ni C# a los suyos (exceptuando la sintaxis de ambos lenguajes), es una tecnología nueva dependiente de .Net Framework, y aparte la WinAPI no va a cambiar o a mejorar por arte de magia entre ambos lenguajes :-/. Si una persona random dice que C# o VB.Net es mejor en un debate sin dar ningún argumento... ¿para que tomarse el comentario en serio?, busca y lee por ti mismo las diferencias entre cada lenguaje, saca tú tus propias conclusiones para decidir que lenguaje te parece mejor a ti. ⇲Comparison of C Sharp and Visual Basic .NETIs C# code faster than Visual Basic.NET code?VB.NET vs. C#.NET?10 Reasons Why Visual Basic is Better Than C#Top 10 reasons VB.NET is better than C#En resumen, al final las diferencias entre ambos lenguajes son pequeños tecnicismos a los que quizás nunca legues a necesitar darle importancia, tu decisión debería basarse en el lenguaje que más te guste y más facil de usar sea para ti, personalmente yo no cambiaría la sintaxis de VB.Net por la de C#. Te recomiendo leer el artículo que te ha linkeado el compañero @El Benjo. Saludos
|
|
|
6337
|
Sistemas Operativos / Windows / Re: Consulta Panel de Conreol Listado de Programas
|
en: 1 Noviembre 2014, 20:18 pm
|
Alguien sabe el porque? Necesitaria saberlo. Por que sencillamente es una interfaz de usuario básica (al igual que el administrador de tareas, etc), solo se mostrarán las aplicaciones consideradas "seguras" para su desinstalación. Las instalaciones consideradas como componentes del sistema, o instalaciones ocultas, o en fín, productos que para su desinstalación dependan de otros instaladores o puedan alterar el comportamiento de un producto al desinstalarse no se mostrarán en dicha interfaz. Aparte de esto, si el distribuidor así lo quiere al desarrollar el script/programa de instalación, un installer no tiene porque añadir ninguna ninguna clave de registro que indique que dicho software está instalado en el equipo para que te salga en esa lista del panel de control. Para ver los componentes de sistema y ocultos para desinstalarlos puedes utilizar aplicaciones como Uninstall Tool. Saludos
|
|
|
6339
|
Programación / Programación General / Re: ¿como puedo crear un exe como este? ayuda
|
en: 1 Noviembre 2014, 06:19 am
|
Preguntas como "hacer" un exe, como si fuese lo mismo que hacer un dibujo en el paint... Detrás de eso hay una labor muy grande, un proceso de desarrollo elaborado, y como ya te han explicado requiere conocimientos (medios/avanzados) de programación, así como de ingeniería inversa. Por suerte para tí existen herramientas para novatos (o vagos) que te podrían facilitar parte de la tarea o sacarte de un apuro, como por ejemplo RemoteDLL de SecurityExploded o CheatEngine... ambos para la inyección, o DLL Export Viewer de nirsoft para extraer en un instante los nombres de las funciones de una dll así como otra valiosa información, sin mencionar aparte el lenguaje de programación requerido y el resto herramientas necesarias relacionadas con la ingeniería inversa, claro está. Saludos
|
|
|
6340
|
Programación / Programación General / Re: [Consulta] Crear programa para modificar configuraciones de windows
|
en: 1 Noviembre 2014, 02:27 am
|
puedo conectarme a una vpn (ya creada) desde MS-DOS?? supongo yo que si La consola de comandos (CMD) no es MS-DOS, MS-DOS no se utiliza ya. Sí, como ya dije puedes llamar a la aplicación desde cualquier lenguaje bajo Windows, ya que dicha aplicación es CLI (CommandLine Interface), acepta parámetros por consola que los puedes enviar usando cualquier lenguaje. Pero en caso de que dicha aplicación (RasPhone) muestre un InputBox donde debas introducir el User/Pass (cosa que no he comprobado) y pretendas evitarlo entonces olvídate de utilizar algo tan simple como Batch, tienes dos opciones dado el caso, desarrollar un script en VBS (y menciono VBS por que está integrado en Windows y te sería el más facil) para introducir los datos automaticamente en ese InputBox recurriendo al método SendKeys, o utilizar un lenguaje de verdad y que esté capacitado para llevar a cabo la tarea de forma autónoma y automatizada (ej: VB.Net/C# + librería DotRas) (Python, etc). Saludos
|
|
|
|
|
|
|