|
2611
|
Programación / .NET (C#, VB.NET, ASP) / Re: Inyeccion dll: [ Delphi ] - [ C++ ] - [ VB ] - [ Masm32 ] - [ C# ??? ]
|
en: 19 Septiembre 2009, 01:03 am
|
como te atreves a decir eso.....
El framework te cambia radiclamente todo, que puedas hacer lo mismo de antes de forma parecida es algo muy diferente, pero hasta la administracion de memoria es toalemente diferente en .net, lo que debes hacer es er que clases son las que te sirven para las tareas en vez de usar la APIS, ese es el objetivo del framewrok.
Atentamente,
Juan Manuel Lombana Medellín - Colombia
Ejem, me referi a que el codigo quedaria intacto, ovbiamente cambia radicalmente todo, pero el codigo se mantiene practicamente parecido (ni hablar de MSIL ahi si te creo que cambia todo) Que yo sepa, .net no tiene clases para manejar la memoria con "libre albedrio"
|
|
|
2612
|
Programación / .NET (C#, VB.NET, ASP) / Re: Traductor de idiomas
|
en: 18 Septiembre 2009, 19:10 pm
|
Sabes Ingles al 100%???
Jaja, nadie sabe ingles al 100%, pero nos acercamos xD Es como que sepamos español al 100%, y te apuesto que nos faltaran palabras (prueba: quien sabe el significado de "pauperrimo" sin buscar en el diccionario )
|
|
|
2613
|
Programación / .NET (C#, VB.NET, ASP) / Re: Inyeccion dll: [ Delphi ] - [ C++ ] - [ VB ] - [ Masm32 ] - [ C# ??? ]
|
en: 18 Septiembre 2009, 19:07 pm
|
jeje...dije busca la declaracion, no es necesario el plugin. Igual funciona en el 2008 (no te fijaste bien, tiene una version para el 2008 o capaz es la misma) pero junto con el plugin te viene otra de sus utilidades pero en version de prueba. yo no lo tengo instalado, solo usa el buscador: pones el nombre de la api o la dll y te sale una lista de las declaraciones en C#, vb.net (no todas, pero son convertibles) y la clasica vb6
|
|
|
2614
|
Programación / .NET (C#, VB.NET, ASP) / Re: Inyeccion dll: [ Delphi ] - [ C++ ] - [ VB ] - [ Masm32 ] - [ C# ??? ]
|
en: 18 Septiembre 2009, 01:44 am
|
En VB: Private Const PAGE_READWRITE As Long = &H4 Private Const MEM_RELEASE As Long = &H8000 Private Const MEM_COMMIT As Long = &H1000 Private Const STANDARD_RIGHTS_REQUIRED As Long = &HF0000 Private Const SYNCHRONIZE As Long = &H100000 Private Const PROCESS_ALL_ACCESS As Long = (STANDARD_RIGHTS_REQUIRED Or SYNCHRONIZE Or &HFFF) Private Const INFINITE As Long = &HFFFFFF Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long Private Declare Function GetProcAddress Lib "kernel32" (ByVal hModule As Long, ByVal lpProcName As String) As Long Private Declare Function GetModuleHandle Lib "kernel32" Alias "GetModuleHandleA" (ByVal lpModuleName As String) As Long Private Declare Function VirtualAllocEx Lib "kernel32" (ByVal hProcess As Long, ByVal lpAddress As Long, ByVal dwSize As Long, ByVal flAllocationType As Long, ByVal flProtect As Long) As Long Private Declare Function WriteProcessMemory Lib "kernel32" (ByVal hProcess As Long, lpBaseAddress As Any, lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long Private Declare Function CreateRemoteThread Lib "kernel32" (ByVal hProcess As Long, lpThreadAttributes As Long, ByVal dwStackSize As Long, lpStartAddress As Long, lpParameter As Any, ByVal dwCreationFlags As Long, lpThreadId As Long) As Long Private Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long Public Function Inyecta(RutaDll As String, Pid As Long) As Integer Dim proc As Long Dim nload As Long Dim rems As Long Dim longi As Long Dim RemThread As Long Dim Tid As Long On Error GoTo Error proc = OpenProcess(PROCESS_ALL_ACCESS, False, Pid) nload = GetProcAddress(GetModuleHandle("kernel32.dll"), "LoadLibraryA") rems = VirtualAllocEx(proc, 0, Len(RutaDll), MEM_COMMIT, PAGE_READWRITE) WriteProcessMemory proc, ByVal rems, ByVal RutaDll, Len(RutaDll), longi CreateRemoteThread proc, ByVal 0, 0, ByVal nload, ByVal rems, 0, Tid WaitForSingleObject rems, INFINITE CloseHandle proc CloseHandle rems Inyecta = 0 Exit Function Error: Inyecta = 1 End Function '----------------------------------------------------------------------------------' Private Sub Form_Load() Dim ruta As Long Dim resultado As Integer ruta = Shell("notepad.exe") resultado = Inyecta("C:\ladll.dll", ruta) If resultado = 0 Then MsgBox "Dll Inyectada con éxito!!!", , "Información" Else MsgBox "A ocurrido un error", vbCritical, "Información" End If End End Sub
Wowww! en todos los lenguajes que se pueden no ? Pero y en C# ? Alguien tiene alguno ? Hasta luego . ejem. Si lo tienes en vb, es facilmente convertible a .net (sea vb.net o C#), si sabes y usas un poquito de logica, lo sacas en seguida. Total, en vb.net un 90% del codigo seguira intacto ^^ EDIT: Para usar las APIs, busca la declaracion en www.pInvoke.net
|
|
|
2615
|
Programación / .NET (C#, VB.NET, ASP) / Re: Messenger Spammer
|
en: 17 Septiembre 2009, 19:12 pm
|
jaja..... te propongo un reto, que solo mande las teclas solo si la conversacion esta activa (no cuentes el msn plus ) eso se podría hacer con la Api FindWindow cierto? y con algo mas ovbiamente
|
|
|
2616
|
Programación / .NET (C#, VB.NET, ASP) / Re: Messenger Spammer
|
en: 17 Septiembre 2009, 01:18 am
|
Ya puse el Source Code es que se me Olvida Posdata: No usa la Api del MSN, puesto que no la se utilizar jajajajajjajajaja Basicamente utiliza esto: SendKeys.Send (TextBox1.Text & ("{Enter}")) jaja..... te propongo un reto, que solo mande las teclas solo si la conversacion esta activa (no cuentes el msn plus )
|
|
|
2617
|
Programación / .NET (C#, VB.NET, ASP) / Re: Traductor de idiomas
|
en: 16 Septiembre 2009, 21:50 pm
|
jaja...hacer un traductor perfecto??? es una tarea larguiisiiimaaa (si hasta los mejores traductores fallan en oraciones de español a ingles y viceversa). Mi "gran teoria" de la traduccion, es traducir una palabra en base de la anterior, analizando palabra por palabra, discriminarla y si hay una anterior reemplazarla por la palabra en el idioma destino que corresponda y si hay varias traducciones (ej: be -> ser, fui, fuimos) reemplazarla por la que mas se adecue a la palabra anterior. (ej: ingles a español) Ingles: You're just too good to be true. Can't keep my eyes off of you. Español (segun Google Translator) Eres demasiado bueno para ser verdad. No se puede quitarle los ojos de ti. Español (traducido por mi xD) Eres demasiado bueno para ser real. No puedo quitar mis ojos de ti. (medio cutre, pero trate de no cambiar las palabras xD) Se acerca mucho el google, pero no llega xD, No seria tan dificil de implementar mi teoria salvo por un problema: como analizamos la palabra?? letra x letra solo funciona para derivados de palabras generales (sustantivos, verbos, adjetivos) (ej: se podria decir que es verbo si termina en "ar" o "er" o "ir", pero hay palabras que tienen esas terminaciones pero no son verbos como Baltazar). Podria hacerse una tabla con las palabras que sean por nombres, y otra con sustantivos, verbos y adjetivos y buscar: si no esta en nombres, buscar en la otra tabla literalmente, sino se encuentra buscar derivados definiendo reglas para cada tipo de palabra (ej: volar -> buscar " volando") Y asi con otras derivaciones. Parece que el mejor traductor es y seguira siendo la mente humana
|
|
|
2618
|
Programación / .NET (C#, VB.NET, ASP) / Re: Messenger Spammer
|
en: 16 Septiembre 2009, 21:38 pm
|
BlazeFire, siempre pon el codigo BlazeFire, no sería mucha molestia si te pido el código de tu Messenger Spammer? ocupaste la api de msn cierto?
saludos
jaja, es algo mas simple (ups, jeje)
|
|
|
2620
|
Programación / .NET (C#, VB.NET, ASP) / Re: Conectar VB.NET Con Base de Datos Access?
|
en: 13 Septiembre 2009, 17:47 pm
|
Hola, ¿ porque lo haces asi ? nunca he usado eso para conectarme, todo desde codigo, importas System.Data.Oledb y listo a trabajar como si fuera SQL...mira en internet hay miles de ejemplos de como conectar a Access desde .NET, en la pagina de el guille tambien hay.
saludos.
ovbiamente es mas facil hacerlo por codigo, pero el asistente te lo hace todo de una, un dataset tipificado, uno listo para una base de datos especifica (si cambian un misero campo que nunca se toca, tal vez nunca vuelva a funcionar xD, es un ejemplo exagerado pero es para entender), no digan que es un asistente demas, te ahorra cierta seguridad y ciertas clases
|
|
|
|
|
|
|