| |
|
9472
|
Programación / .NET (C#, VB.NET, ASP) / Re: [APORTE] Plantillas de Game Launchers para juegos de Steam
|
en: 11 Abril 2013, 09:58 am
|
Cierta persona me ha comentado que los ejecutables dan error en XP y no se pueden abrir. Para los que quieran poder usar las plantillas en XP, deben modificar (eliminar) esta línea del archivo Main.Designer.vbMe.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)No entiendo como el própio código generado por el designer es incompatible con XP, pero bueno... una grácia más de Microsoft!. Saludos!
|
|
|
|
|
9474
|
Sistemas Operativos / Windows / Re: ¿Por que tanto odio hacia Windows 8?
|
en: 10 Abril 2013, 17:50 pm
|
PD: @gAb1, Aquí tienes un claro ejemplo de porque tanta critica hacia W8. La gente sin mas se fian (copian) de lo que dicen los demás.. No les importa si es cierto o no.. Espero que no me estés llamando mentiroso y eso séa lo que quisiste decir nada más xD Yo como ya dije cada uno puede sacar sus própias conclusiones respecto al SO que utilice. Hay aspectos de Windows 8 que algunos consideramos muy malos, pero otras personas se benefician de ellos y les parece bueno, empezándo por algo tán básico como la interfaz del SO, en fín es imposible ponerse deacuerdo en algo como esto si nombramos todos los nuevos aspectos de Win8. Por otro lado tengo que decir, para defender la postura de dato000 y contradecir un poco ese comentario (porque según se mire...), si una persona va a una tienda de electrodomésticos y le dicen que una plancha es mala o buena, pues todos confiamos en que la opinión del vendedor séa cierta, ¿no?, y esa es la misma opinión que el comprador le va a dar a su familia, amigos, etc, y todos van a pensar que esa plancha es una m**** sin haberla probado, a menos que el tipo séa un maestro en planchar corbatas y sepa que el vendedor le mintió...xD. En fín, con esto quiero decir que me parece lo más normal del mundo tomar como referencia la opinión de otra persona que te parezca de confianza, aunque si que es cierto que eso es "hablar sin saber" y lo mejor es que uno mismo pruebe "X" producto y obtenga sus própias conclusiones (para que luego te digan eso de: "Cuanta razón tenías!")  . Saludos!
|
|
|
|
|
9475
|
Programación / .NET (C#, VB.NET, ASP) / Re: [APORTE] Plantillas de Game Launchers para juegos de Steam
|
en: 10 Abril 2013, 17:36 pm
|
Es que esto de la piratería se lo toman a guasa todo dios, por no decir hasta la policia, pero yo que se... Es que es de guasa, Copiar no es Robar, Compartir tampoco es robar. No enserio, se lo que pasa con la pirateria y todo eso, pero si fueses tan amable de explicarme o mandarme un link dnde explicase, que pasaria si denunciasen la web de piratería de IKillnukes? xD
Bueno, yo no soy abogado macho!, pero que yo sepa la SGAE te da un límite de 3 a 7 días (no lo recuerdo bien) para que cierres la web (O sinó te la cierran ellos), pero la multa según tengo entendido te la llevas igual, si quieres saber más sobre estas cosas deberías preguntarle a cualquier admin que lleve una web donde suban pelis y esas cosas, que deben estar muy puestos en el tema. Para evitar denuncias deberías subirlo a la nube o en servidores rusos (si la política de allí sigue igual como estaba hace unos meses, que no lo sé). Sabrás de sobra que los temas ilegales están prohibidos en este foro, así que mejor dejar el tema aquí, que además le estás quitando protagonismo a los launchers con el tema de la piratería x'D. Si quieres podriamos hablar por la chat de mi web  Espero que no te sepa mal pero no me interesa en absoluto meterme en esas cosas (formar parte de ese tipo de webs, o algo parecido), no porque subas material ilegal, sinó porque ponerme a subir juegos en una web no es lo mío, no me apetece nada la verdad, ni tampoco me voy a poner a codear launchers para todos los juegos que existen, sólo lo hago para los que tengo ocasión de jugar y me gustan. Saludos!
|
|
|
|
|
9476
|
Programación / .NET (C#, VB.NET, ASP) / Re: [APORTE] Plantillas de Game Launchers para juegos de Steam
|
en: 10 Abril 2013, 17:14 pm
|
lo guapo sería una web con estas plantillas y con los chetos Ya hay demasiadas webs que comparten chetos, y muy buenas, como GameCopyWorld, e incluso de trainers dedicados como CheatHappens donde te hacen un trainer por un módico précío. (Sorry por el spam) Que te parece si lo metemos en mi web? No sé cual es tu web, no creo que séa la del MineCraft porque dices que subes juegos piratas y ahi yo solo véo el MineCraft xD Pero en fín, mételo donde quieras siempre que respetes el nombre dle autor (YO), es gratis y cada uno puede usar estas plantillas como le apetezca para diseñar un launcher. Saludos
|
|
|
|
|
9477
|
Programación / .NET (C#, VB.NET, ASP) / Re: [APORTE] Plantillas de Game Launchers para juegos de Steam
|
en: 10 Abril 2013, 16:56 pm
|
eso se supone que tu le metes la app que es y carga la plantilla? eing?! no te he entendido, son proyectos (solutions) para el VS. Las plantillas sólo fácilitan la tarea de cargar esa combinación de aplicaciones (steam + juego + trainer + "X"), para automatizarlo o portabilizarlo, nada más. Edito: Si, puedes hacer un acceso directo (o 4 en casos como este...), o hacerlo desde un Bat, de hecho yo siempre lo hago primero en Batch, pero un launcher gráfico es mucho más bonito, más seguro (errores), y lo considero más rápido (una vez guardas la configuración actual para usarla la próxima vez). Y eso de los chets, se puede poner desde Steam? Es que no entiendo bien de Steam.  Tampoco lo he entendido muy bien. Se pueden usar trucos online, yo he jugado con munición infinita por steam y demás. Las malas lenguas dicen que si usas trucos te banean, pero solo lo hacen para asustar (para ver si asi dejan de joder usando trucos), te lo dice alguien que tiene legálmente Steam hace unos 7 años y chetando a saco en los servers de Steam sin problemas xD. Si no has entendido algo dímelo. Saludos! PD: Aquí tienes la versión Batchera  para ti y para todos: :: Launcher Configuration Set " Title=TombRaider Launcher by Elektro H @cker" Set "Game=TombRaider.exe" Set "Trainer=TombRaider-Trainer.exe" Set "MouseLock=MouseLock.exe" Set "SteamDIR=C:\Juegos\Counter Strike" :: Steam Configuration ( Echo ActivityLogEnable = disable Echo ActivityLogGroupSteamAPI = disable Echo BootStrapperForceClientBootstrap = disable Echo BootStrapperForceSelfUpdate=disable Echo BootStrapperInhibitAll=enable Echo CachePreLoaderMode = disable Echo EngineInSameProcessAsClient = disable Echo FullMemoryMinidumps = disable )>"%SteamDIR%\Steam.cfg" :: CMD Config MODE CON Cols=50 lines=10 :: Run Steam Echo Waiting for Steam to load... | MORE Start /B """" "%SteamDIR%\Steam.exe" -applaunch 0 :Steam_Is_Loading (cmdow | find /I "steam" | Findstr /I "amigos friends" 1 >Nul 2 >&1 ) || (GOTO : Steam_Is_Loading) :: Run Game things Echo Running the game... | MORE Echo [+] The key to unlock the mouse is "CTRL+C". (TaskList /FI "IMAGENAME eq %MouseLock%" 1 >NUL 2 >&1 | FIND " %MouseLock%" ) || (Start /B """" " %MouseLock%" ) (TaskList /FI "IMAGENAME eq %Trainer%" 1 >NUL 2 >&1 | FIND " %Trainer%" ) || (Start /B """" " %Trainer%" ) (TaskList /FI "IMAGENAME eq %Game%" 1 >NUL 2 >&1 | FIND " %Game%" ) || (Start /W """" " %Game%" ) :: Clean Del /Q /F ".\SteamAPI.log" 2 >Nul TaskKill /F /T /IM " %Trainer%" 1 >Nul 2 >&1 TaskKill /F /T /IM " %MouseLock%" 1 >Nul 2 >&1 TaskKill /F /T /IM "Steam.exe" 1 >Nul 2 >&1
|
|
|
|
|
9478
|
Programación / .NET (C#, VB.NET, ASP) / [APORTE] Plantillas de Game Launchers para juegos de Steam
|
en: 10 Abril 2013, 16:21 pm
|
Estos dos proyectos los comparto como plantillas para las personas que quieren hacer un Game launcher. Los dos poryectos son idénticos, y estas son algunas de sus características a resaltar: · Configuración portable en un archivo INI sencillísima e intuitiva (Para usarlo en juegos autoextraibles con WinRAR por ejemplo) · Drag&drop en los textboxes · Permite soltar accesos directos también (.lnk) en los textboxes, · La mayor parte del code (sobre todo los eventos de controles) está muy simplificado y optimizado · Está todo bastante optimizado en el code para poder modificar el diseño fácilmente mediante variables (título del juego y del launcher, colores y fuente de texto, etc...) · Varios controles de errores ...Y en definitiva creo que me han quedado bonito como plantillas. Los dos proyectos son WinForms, y he usado VS2012 y el FrameWork 3.5.   El método y el orden de carga del programa es este: 1. Primero se ejecuta Steam (si estuviera seleccionado) con el parámetro "-applaunch 0" para que no salga la ventana de auto-login. (el proceso espera a que Steam se haya cargado complétamente) 2. Se ejecuta el Trainer (si hubiera alguno seleccionado) 3. Se ejecuta la aplicación alternativa (si hubiera alguna seleccionada), esta aplicación alternativa puede ser por ejemplo un programa para bloquear el mouse... http://foro.elhacker.net/net/source_mouselock_gui_version-t387309.0.html4. Se ejecuta el Juego y se monitoriza su ejecución hasta que el proceso del juego se cierre. Descarga: www.elektrostudios.tk/Game Launchers by Elektro H@cker.rarEspero que os guste, Saludos!
|
|
|
|
|
9479
|
Programación / .NET (C#, VB.NET, ASP) / Re: Librería de Snippets !! (Posteen aquí sus snippets)
|
en: 10 Abril 2013, 13:25 pm
|
· Cargar fuentes de texto desde los recursos: Nota: Este code ya lo posteé pero se me olvidó agregar lo más importante, la class, así que lo vuelvo a postear xD #Region " Use Custom Text-Font " ' [ Use Custom Text-Font ] ' ' Instructions : ' 1. Add a .TTF font to the resources ' 2. Add the class ' 3. Use it ' ' Examples: ' Label1.Font = New Font(GameFont.Font, 10.0!) ' Label1.Text = "This is your custom font !!" Dim MyFont As New CustomFont(My.Resources.kakakaka) Private Sub Main_Disposed(sender As Object, e As System.EventArgs) Handles Me.Disposed MyFont.Dispose() End Sub ' CustomFont.vb #Region " CustomFont Class " Imports System.Drawing Imports System.Drawing.Text Imports System.Runtime.InteropServices ''' <summary> ''' Represents a custom font not installed on the user's system. ''' </summary> Public NotInheritable Class CustomFont Implements IDisposable Private fontCollection As New PrivateFontCollection() Private fontPtr As IntPtr #Region "Constructor" ''' <summary> ''' Creates a new custom font using the specified font data. ''' </summary> ''' <param name="fontData">The font data representing the font.</param> Public Sub New(ByVal fontData() As Byte) 'Create a pointer to the font data and copy the 'font data into the location in memory pointed to fontPtr = Marshal.AllocHGlobal(fontData.Length) Marshal.Copy(fontData, 0, fontPtr, fontData.Length) 'Add the font to the shared collection of fonts: fontCollection.AddMemoryFont(fontPtr, fontData.Length) End Sub #End Region #Region "Destructor" 'Free the font in unmanaged memory, dispose of 'the font collection and suppress finalization Public Sub Dispose() Implements IDisposable.Dispose Marshal.FreeHGlobal(fontPtr) fontCollection.Dispose() GC.SuppressFinalize(Me) End Sub 'Free the font in unmanaged memory Protected Overrides Sub Finalize() Marshal.FreeHGlobal(fontPtr) End Sub #End Region #Region "Properties" ''' <summary> ''' Gets the font family of the custom font. ''' </summary> Public ReadOnly Property Font() As FontFamily Get Return fontCollection.Families(0) End Get End Property #End Region End Class #End Region #End Region
· Esperar a que una aplicación termine de CARGAR Nota : El código no está muy simplificado, pero se puede usar y funciona bien. Nota 2: Esto sirve para aquellas aplicaciones a las que no le afecta un "Process.WaitForInputIdle", de lo contrario es una tontería usar este code tán largo y bruto. Ejemplo de uso: Private Sub Wait_For_Application_To_Load(ByVal APP_Path As String, Optional ByVal APP_Arguments As String = Nothing) Process.Start("Photoshop.exe") Timer_CheckCPU.Tag = "Photoshop" Timer_CheckCPU.Enabled = True While Not Timer_CheckCPU.Tag = "" Application.DoEvents() End While End Sub
#Region " Wait For Application To Load (UNFINISHED AND WAITING TO BE IMPROVED)" Private Declare Function ReadProcessMemory Lib "kernel32" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByVal lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer Private WithEvents Timer_CheckCPU As New Timer Dim Memory_Value_Changed As Boolean Dim CPU_Changed As Boolean Dim CPU_Time As Boolean Dim Running_Time As Boolean Private _desiredTime_ms As Integer = 1500 Private Sub Timer_CheckCPU_Tick(sender As Object, ev As EventArgs) Handles Timer_CheckCPU.Tick Timer_CheckCPU.Enabled = False Dim pProcess() As Process = System.Diagnostics.Process.GetProcessesByName(Timer_CheckCPU.Tag) Dim hprocess As Process = pProcess(0) If hprocess Is Nothing Then Running = False Timer_CheckCPU.Enabled = True Return End If Running = True Memory = hprocess.PrivateMemorySize64 CPUTotal = hprocess.TotalProcessorTime.TotalMilliseconds If AllConditionsGood() Then If Not (_countdown.IsRunning) Then _countdown.Reset() _countdown.Start() End If Dim _elapsed As Long = _countdown.ElapsedMilliseconds If _elapsed >= _desiredTime_ms Then Timer_CheckCPU.Tag = "" Return End If Else _countdown.Reset() End If Timer_CheckCPU.Enabled = True End Sub Private Function AllConditionsGood() As Boolean If CPU_Time Then Return False If Memory_Value_Changed Then Return False If Running_Time Then Return False Return True End Function Private _countdown As New Stopwatch Private _Running As Boolean = False Public WriteOnly Property Running() As Boolean Set(ByVal value As Boolean) _Running = value If value Then Running_Time = False Else Running_Time = True End If End Set End Property Private _CPUTotal As Double Public WriteOnly Property CPUTotal() As Double Set(ByVal value As Double) CPU = value - _CPUTotal 'used cputime since last check _CPUTotal = value End Set End Property Private _CPU As Double Public WriteOnly Property CPU() As Double Set(ByVal value As Double) If value = 0 Then CPU_Time = False Else CPU_Time = True End If _CPU = value End Set End Property Private _Memory As Long Public WriteOnly Property Memory() As Long Set(ByVal value As Long) MemoryDiff = Math.Abs(value - _Memory) _Memory = value End Set End Property Private _MemoryDiff As Long Public WriteOnly Property MemoryDiff() As Long Set(ByVal value As Long) If value = _MemoryDiff Then Memory_Value_Changed = False Else Memory_Value_Changed = True End If _MemoryDiff = value End Set End Property #End Region
|
|
|
|
|
9480
|
Programación / .NET (C#, VB.NET, ASP) / Re: Librería de Snippets !! (Posteen aquí sus snippets)
|
en: 9 Abril 2013, 20:23 pm
|
· Devuelve el título de la ventana de un proceso #Region " Get Process Window Title Function " ' [ Get Process Window Title Function ] ' ' // By Elektro H@cker ' ' Examples : ' MsgBox(Get_Process_Window_Title("cmd")) ' MsgBox(Get_Process_Window_Title("cmd.exe")) Private Function Get_Process_Window_Title(ByVal ProcessName As String) As String If ProcessName.ToLower.EndsWith(".exe") Then ProcessName = ProcessName.Substring(0, ProcessName.Length - 4) Dim ProcessArray = Process.GetProcessesByName(ProcessName) If ProcessArray.Length = 0 Then Return Nothing Else Return ProcessArray(0).MainWindowTitle End Function #End Region
· Devuelve el handle de un proceso #Region " Get Process Handle Function " ' [ Get Process Handle Function ] ' ' // By Elektro H@cker ' ' Examples : ' MsgBox(Get_Process_Handle("cmd")) ' MsgBox(Get_Process_Handle("cmd.exe")) Private Function Get_Process_Handle(ByVal ProcessName As String) As IntPtr If ProcessName.ToLower.EndsWith(".exe") Then ProcessName = ProcessName.Substring(0, ProcessName.Length - 4) Dim ProcessArray = Process.GetProcessesByName(ProcessName) If ProcessArray.Length = 0 Then Return Nothing Else Return ProcessArray(0).MainWindowHandle End Function #End Region
· Devuelve el PID de un proceso #Region " Get Process PID Function " ' [ Get Process PID Function ] ' ' // By Elektro H@cker ' ' Examples : ' MsgBox(Get_Process_PID("cmd")) ' MsgBox(Get_Process_PID("cmd.exe")) Private Function Get_Process_PID(ByVal ProcessName As String) As IntPtr If ProcessName.ToLower.EndsWith(".exe") Then ProcessName = ProcessName.Substring(0, ProcessName.Length - 4) Dim ProcessArray = Process.GetProcessesByName(ProcessName) If ProcessArray.Length = 0 Then Return Nothing Else Return ProcessArray(0).Id End Function #End Region
|
|
|
|
|
|
| |
|