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ú

Temas - Segurida

#1
Hola, he decidido poner este tema aquí, no estoy intentando crear ningún tipo de virus, pero lo que necesito es típico de los virus y antivirus, por eso decido ponerlo aquí, lo que necesito es que mi aplicación al abrirse tome permisos de Administrador sin que aparezca la UAC y sin desactivarla, simplemente que tome permisos administrativos, y también necesito evitar que el proceso se cierre, no hacer algo para que si se cierra se vuelva a abrir, sino evitar que se cierre incluso si matas el proceso (como por ejemplo hacen los antivirus) utilizo Visual Basic 2010 (wpf), no sé si esto que pido se puede hacer en este lenguaje, de no ser así, necesitaría poder hacerlo en otro lenguaje cualquiera pero guardándolo en dll y utilizándolo desde visual basic, he puesto lo de wpf porque hay muchas cosas de vb.net que en wpf no funcionan (por desgracia), si me podéis ayudar os lo agradezco mucho, llevo bastante tiempo con esto y sigo sin encontrar respuesta alguna, muchas gracias y saludos!
#2
e.CloseReason en Visual Basic 2010 WPF no funciona, ¿se puede hacer de alguna manera, saber por qué motivo se le a dicho a la aplicación que se cierre, y evitarlo si el motivo no es apagar? Lo necesito hacer, pero no se me ocurre nada...
gracias y saludos.

Edito: Tengo importado esto:
Código (vbnet) [Seleccionar]
Imports System.Windows.Forms.CloseReason pero no hace nada, cuando la cierras, se cierra del todo, no lo cancela...
gracias y saludos.
#3
Pues, estoy intentado poner mi propia visual a una aplicación, pero es muy lenta cambiando las imágenes de los botones, lo he probado a poner en un label, y también tarda mucho, lo he probado también en imágenes y también tarda mucho, lo que necesito es alguna manera de poner una imagen de fondo a un botón (o label) y que con los eventos: MouseHover, MouseDown, MouseUp, MouseLeave y Click (este le utilizo para restablecer la imagen a la primera y para dar la orden del boton) no tarde al cambiar la imagen, tarda mucho, es necesario mantener el cursor mucho tiempo encima para que reaccione, porque si no no cambia nada, si se hace clic sin más, se ejecuta la orden bien, pero no cambia la imagen, he visto que hay complementos, pero no quiero utilizar ninguno, ni dll externas ni nada, hoy por hoy no voy a vender mis aplicaciones, y no me importaría utilizar complementos, dll, ets., pero si en un futuro decido venderlas, tendría que pagar por utilizar esos complementos, y no quiero eso, por ello pido ayuda para hacerlo sin complementos, dll, ni nada externo (dll del sistema si puedo utilizar, siempre y cuando las funciones corran en todos los windows), espero que alguien me pueda ayudar, gracias desde ya :)
saludos.

Edito: utilizo Visual Basic 2010 Express.
#4
De nuevo el título lo dice todo, necesito comparar un String con cada una de las partes de otro String, el primer String, es simple (una línea sin separadores, ni nada) el segundo String, es una combinación de muchos, separados por un salto de línea (puede poner otro separador diferente, pero para la lectura, resulta mejor el salto de línea), necesito comparar el primer String con cada una de las partes del segundo, es decir, comparar el primer String con cada una de las líneas del segundo String.
Si me pueden ayudar se lo agradezco.
saludos.
#5
Hola, el título dice todo, necesito saber cómo ver y editar todos los metadatos (propiedades) de cualquier archivo, en ejecución o no, poder ver y editar todos los metadatos, como por ejemplo en un .doc: el autor, la compañía, la fecha de creación, la fecha de ultima edición, etc., no se si me he explicado bien, necesito poder ver y editar las propiedades de cualquier fichero, imagen, archivo o ejecutable sin necesidad de dll ni otros exe, ni nada de eso, solo mediante código, muchas gracias por su ayuda.
saludos.
#6
Hola, necesito saber el método para conocer la ruta de todos los procesos en ejecucción, es decir, obtener una lista de todos los procesos, y después obtener la ruta de cada uno de ellos en un String (para luego poder continuar con mi código)
Si alguien conoce cómo hacerlo, se lo agradezco.
saludos.
#7
Pues eso, necesito saber el método para obtener el código MD5 Checksum de un proceso abierto, de cualquier proceso, sin necesidad de cerrarlo, aquí dejo el código para los que necesiten obtener el código MD5 Checksum de un archivo:
Código (vbnet) [Seleccionar]

' Para que este código funcione "tal cual está" necesitas:
' Form1 y dentro TextBox1 (multilínea activado)

Imports System.IO
Imports System.Text
Imports System.Security.Cryptography

Public Class Form1
   Protected Function MD5Checksum(ByVal fileName As String) As String
       Dim file As New FileStream(fileName, FileMode.Open)
       Dim md5 As MD5 = New MD5CryptoServiceProvider()
       Dim retVal As Byte() = md5.ComputeHash(file)
       file.Close()

       Dim sb As New StringBuilder()
       For i As Integer = 0 To retVal.Length - 1
           sb.Append(retVal(i).ToString("x2"))
       Next
       Return sb.ToString()
   End Function

   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
       TextBox1.Text = MD5Checksum("C:\imagen1.jpg").ToString + vbCrLf + MD5Checksum("C:\imagen1 - copia.jpg").ToString
   End Sub
End Class

Este código puede ser muy útil, lo comparto con todo el que lo necesite  ;)
Si alguien sabe hacer lo que pido, por favor que avise, he probado a poner la ruta de un proceso .exe que se esté ejecutando, y da error, si alguien sabe cómo hacerlo sin cerrar dicho proceso, se los agradezco.
saludos.
#8
Hola, necesito saber cómo puedo optimizar la ram, es decir dejar la mayor cantidad posible de espacio libre, tengo un codigo que encontre en google pero casi no hace nada, se nota pero muy despacito y poco a poco, yo necesito algo mas rapido, se que vaciar la ram es lento, pero con este codigo es mucho mas lento de lo normal, y ademas este codigo retorna acceso denegado:
Código (vbnet) [Seleccionar]

'Previamente se declara la función utilizando Kernel32
Declare Function SetProcessWorkingSetSize Lib "kernel32.dll" (ByVal process As IntPtr, ByVal minimumWorkingSetSize As Integer, ByVal maximumWorkingSetSize As Integer) As Integer

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
   'Código dentro de un botón
       Try
           GC.Collect()
           GC.WaitForPendingFinalizers()
           If (Environment.OSVersion.Platform = PlatformID.Win32NT) Then
               SetProcessWorkingSetSize(Process.GetCurrentProcess().Handle, -1, -1)
               Dim myProcesses As Process() = Process.GetProcesses(Environment.MachineName.ToString)
               Dim myProcess As Process
               For Each myProcess In myProcesses
                   SetProcessWorkingSetSize(myProcess.Handle, -1, -1)
               Next myProcess
           End If
       Catch ex As Exception
           MsgBox(ex.Message)
       End Try
End Sub


Cambiando esta linea:
Código (vbnet) [Seleccionar]

Dim myProcesses As Process() = Process.GetProcesses(Environment.MachineName.ToString)


Por esta otra:
Código (vbnet) [Seleccionar]

Dim myProcesses As Process() = Process.GetProcessesByName("chrome") 'Vacia la memoria ram de todos los procesos que sean chrome.exe


Se nota mas rapido la diferencia y si se mira el taskmanager se ve como la memoria desciende al minimo, si estas un rato sin usar el chrome y lo haces baja la memoria y se mantiene abajo, si le has usado hacia poco o lo estas usando, baja la memoria un segundo y vuelve a subir, necesito algo que libere el maximo espacio posible, por favor denme una mano, saludos
#9
Hola, necesito saber si se con Visual Basic 2008 Express, se pueden cerrar TODOS los procesos del ordenador excepto el propio, y que si en algún proceso (del sistema, antivirus, firewalls, etc...) retorna acceso denegado, que pase al siguiente, necesito saber cómo hacerlo, si me echan una mano se lo agradezco.
saludos.
#10
Hola, tengo un problema que me trae dolor de cabeza, necesito crear un archivo .vbs para liberar la memoria ram, y después ejecutarlo, al crearlo, se crea bien (por lo menos el archivo está y con su contenido es el correcto) pero al ejecutarlo, da error, y me gustaría poder hacerlo de alguna forma para saber si se ejecuta y termina bien, o si falla, para poder poner un mensaje de error personalizado, mi versión de Visual Basic es la 2008 Express, este es el código que utilizo para crealo:

My.Computer.FileSystem.WriteAllText("liberar.vbs", "Mystring = (80000000)", True)


Y este otro para ejecutarlo:

Process.Start("liberar.vbs")

Y al ejecutarlo da un error de sintaxis, me gustaría que me ayudarais a ejecutarlo de forma que la aplicación espere a que termine, y sepa si termina bien o dando error, y si esto no se puede, saber si se puede liberar u optimizar la memoria ram desde visual basic 2008 express, sin crear archivos, prefiero hacerlo sin crear archivos, pero no sé hacerlo, así que opté por esto, y resulta que falla, si me podéis ayudar, os lo agradezco mucho, muchas gracias de antemano.
Un saludo.