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ú

Mensajes - okik

#451
Dudas Generales / Re: Sitio para colgar fotos
12 Octubre 2016, 16:06 PM
Cita de: GreenTick en 29 Septiembre 2016, 20:56 PM
Buenas.. yo tengo una idea muy peculiar pero para muchos seguramente muy flamer.

Yo subo las fotos a un Facebook que tengo; y las pongo en privado.. después copio el LINK DIRECTO DE LA FOTO Y YA ESTA.

(si alguno tiene críticas sobre mi método se aceptan perfectamente!)

yo eso no lo haría ni harto de vino, ya que con el  propio link se puede quizás se pueda rastrear tu perfil de Facebook




Bueno gracias a todos al final me decanté por PostImage, me gusta por su sencillez.

Muchas gracias

ya he colgado mi foto de perfil inspirada en la estrella de la muerte de StarWars jaja   :laugh:
#452
Cita de: creiko en 11 Octubre 2016, 21:03 PM
hice lo que dices y funciona bien
pero hay un problema que no deja modificar la listbox
el combobox lo tengo en formulario1 y el listbox lo tengo en un formulario 2

Según el Microsoft si usas datasource no puedes eliminar ni añadir ítems al Listbox mediante ListBox.ObjectCollection.
ListBox.Items (Propiedad)

CitarYou can also manipulate the items of a ListBox by using the DataSource property.If you use the DataSource property to add items to a ListBox,
you can view the items in the ListBox using the Items property but you cannot add or remove items from the list using the methods of the
ListBox.ObjectCollection
.


No te compliques y usa For Each  :laugh:


En el Load del Form2  lo llenas con el contenido del combobox.

Código (vbnet) [Seleccionar]
    Private Sub Form2_Load(sender As Object, e As EventArgs) Handles Me.Load
       ListBox1.Items.Clear()
       For Each Items As String In Form1.ComboBox1.Items
           ListBox1.Items.Add(Items)
       Next
   End Sub    



Cuando cierres el form en el evento closing actualizas el combobox  con los cambios que has hecho en el listbox

Código (vbnet) [Seleccionar]
 Private Sub Form2_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
       Form1.ComboBox1.Items.Clear()
       For Each Items As String In ListBox1.Items
           Form1.ComboBox1.Items.Add(Items)
       Next
   End Sub  


 

EJEMPLO:

Código (vbnet) [Seleccionar]
Public Class Form1
   Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       ComboBox1.Items.AddRange({"Hoy", "Es", "Miércoles"})
   End Sub

   Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
       Form2.ShowDialog()
   End Sub
End Class

Public NotInheritable Class Form2 : Inherits Form
   Friend Shared WithEvents Button1 As New Button 'Crea un botón con eventos
   Friend Shared WithEvents ListBox1 As New ListBox 'Crea un botón con eventos
   Sub New()
       Button1.Location = New Point(10, 120)
       ListBox1.Location = New Point(10, 10)
       Me.Controls.AddRange({Button1, ListBox1})
   End Sub

   Private Sub Form2_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
       Form1.ComboBox1.Items.Clear()
       For Each Items As String In ListBox1.Items
           Form1.ComboBox1.Items.Add(Items)
       Next
   End Sub

   Private Sub Form2_Load(sender As Object, e As EventArgs) Handles Me.Load
       ListBox1.Items.Clear()
       For Each Items As String In Form1.ComboBox1.Items
           ListBox1.Items.Add(Items)
       Next
   End Sub

   Private Shared Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
       ListBox1.Items.Add("y a mi que")
   End Sub
End Class


y si quieres puedes usar datasoruce en llugar de For Each  en el Closing del Form2 para el combobox.
Código (vbnet) [Seleccionar]
   Private Sub Form2_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
       Form1.ComboBox1.DataSource = Nothing
       Form1.ComboBox1.DataSource = ListBox1.Items
   End Sub



#453
Cita de: rj8810_@hotmail.com en 10 Octubre 2016, 18:24 PM
hola elektro

llevo un mes tratando de hacer algo..pero aun no acabo, pues siempre para lograr hacer una cosa nesecito otra...

en esta ocacion nesecito convertir un archivo .reg a .exe trate de usar una aplicacion llamada reg2exe, pero no funciona el archivo pesa 0Kb lo he descargado de varias paginas pero el archivo setup siempre pesa 0kb y al dar click no funciona.....

tal vez tu que ere muy curioso tengas algun otro programilla que me puedas dar

te agradeseri...mas sinembaro probare a convertir .reg a.bat haber si logro mi fin

crear un SFX con WinRAR es algo que seguramente ya habrías pensado pues es algo muy común que conoce todo cristo que tenga ordenador, tenga compresor y use con normalidad winrar o winzip. Es una buena opción en este caso como ha explicado @elektro. Lo he usado muchas veces para ejecutar reg como administardor y otras cosas,

Si lo que buscas es crear tu propia  app para que tenga un comportamiento personalizado o haga cosas que una compilación con Winrar no haga. Además de poder cambiar la información reg siempre que quieras (también lo puedes hacer con el SFX abriéndolo con winrar).  Lo podrías hacer con VB6 sin problemas.

Mi sugerencia es que crees una aplicación con archivo de  recursos con VB6. Supongo que sabrás que en una aplicación se pueden añadir recursos como iconos, imágenes y todo tipo de archivos. Incluso puedes meter otra aplicación dentro. En lo recursos añades el archivo reg.

Haces el código para le programa y que haga lo que tu quieras, y añades código para acceder al recurso reg y reproducirlo. Debe tener un nombre determinado al que puedas hacer referencia.

Esta apliación una vez compilada la puedes modificar con resourcehacker por ejemplo o abriendo el EXE  con C++ de VS6 o VS.NET y sustituir el reg por otro según te interese, de tal modo que tu código encuentre el reg. Con el nombre clave que estableciste en el código par acceder al archivo de recurso reg.


Sin embargo con NET al contrario de lo que ocurren con VB6 al compilar con NET, los archivos de recursos no son visibles a través de resourcehacker ni al abrir el exe en net.  Solo se ven los iconos, el manifest y versión. No se si se podrá configurar o algo para que al agregar un archivo al proyecto y compilarlo el Exe tenga los recursos añadidos visibles.

más info sobre recursos:
https://foro.elhacker.net/ingenieria_inversa/tutorial_para_modificar_programas_ej_10_redimensionar_matrizvb_19jul2010-t134513.0.html

@karmany el autor del post en enlace dice:
Para los programas hecho en NET es un tanto diferente. Existen editores de recursos capaces de modificar ciertos recursos para estos programas,
pero no es tan sencillo como en los de código nativo. Pondremos algún ejemplo.


Se me ocurren otras maneras pero esta creo que es lo que buscas ya que tienes un EXE único y modificable para añadir el reg que te interese y solo necesitarías ese EXE. No tienes que andar. Además al haberlo compilado con VB6 no tendría dependencia, como NET con el Framework, ya que te funcionaría en cualquier equipo. Siempre y cuando no añadas ActiveX y  cosas así.

solo es por ayudar, espero te sirva.

Si decides usar VB6, seguramente querrás que se ejecute como administrador. En cuyo caso deberás introducir un manifiesto a la aplicación con 'requireAdministrator'

INSERTAR UN MANIFEST A NUESTRA APLICACIÓN Y EJECUTAR COMO ADMINISTRADOR EN VB6
#454
Este código crea el archivo y si existe le añade un número. Si ya existe con ese número le incrementa un número más. Por ejemplo si hay demo.txt, crea demo(1).txt, si ya existe demo.txt y demo(1).txt, crea demo(2).txt. Si existe demo(1).txt y no existe demo.txt, crea demo.txt, luego creará demo(2).txt porque ya existe demo(1).txt

Código (vb) [Seleccionar]
Dim objFS
Dim sFileName As String
Dim sPath As String
Dim sExt As String
Dim num As Integer
Dim sFilePath As String

sFileName = "demo"
sExt = "txt"
sPath = "C:\Desktop"
sFilePath = sPath & "\" & sFileName & "." & sExt
num = 0

Set objFS = CreateObject("Scripting.FileSystemObject")
'Si  el archivo existe añade un número
'y si tiene un número busca otro número que no exista
If objFS.FileExists(sFilePath) Then
 While objFS.FileExists(sFilePath)
 num = num + 1
sFilePath = sPath & "\" & sFileName & "(" & num & ")" & "." & sExt
 Wend
End If

'Crea el archivo
Dim objFile As Object
Set objFile = objFS.CreateTextFile(sFilePath)
objFile.WriteLine ("Ejemplo")



Lo mismo pero con fecha

Código (vb) [Seleccionar]
Dim objFS
Dim sFileName As String
Dim sPath As String
Dim sExt As String
Dim num As Integer
Dim sFilePath As String

sFileName = "demo" & "_" & Format(DateTime.Date, "dd-mm-yyyy")
sExt = "txt"
sPath = "C:\Desktop"
sFilePath = sPath & "\" & sFileName & "." & sExt
num = 0

Set objFS = CreateObject("Scripting.FileSystemObject")
'Si  el archivo existe añade un número
'y si tiene un número busca otro número que no exista
If objFS.FileExists(sFilePath) Then
 While objFS.FileExists(sFilePath)
 num = num + 1
sFilePath = sPath & "\" & sFileName & "(" & num & ")" & "." & sExt
 Wend
End If

'Crea el archivo
Dim objFile As Object
Set objFile = objFS.CreateTextFile(sFilePath)
objFile.WriteLine ("Ejemplo")


#455
Cita de: Lekim en  7 Octubre 2016, 11:02 AM
Hola

Vaya como se ha animado este foro, ya no quería entrar pero es que esta especie de hacks me encantan.

He probado el código y me ha salido una barra scroll en el lateral derecho que no se quita. ¿como lo puedo quitar? es que cambio a iconos normales, los pongo pequeños y la barra sigue ahí y ahora no la puedo quitar. No quiero tener que restaurar windows.

No estaría mal que aplicaran el modo lista deslizable en el escritorio  en próximas versiones de Windows. Así puedes tener cientos de iconos ordenados por nombre y ocupan solo el lateral izquierdo del escritorio. Está genial.

S2s




He cerrado sesión y se ha quitado. Pero el caso es que se mantiene el scroll aunque cambie a icono una vez lo pones en detalle. El scroll no se va a no ser que cierre sesión o mate el  Explore.exe y lo vuelva a  abrir.



hola, pues no se que puede ser que no se vaya el scrollbar, a mi no me pasa (con eso no quiero decir que estés mintiendo). En un principio pensé que podía ser cuando se aplica bajo WorkerW pero no.

De todos modos el investigar me has servido para saber porqué se mostraba SHELLDLL_DefView como ventana hijo  de WorkerW en un ordenador y en otro no. La razón es que cuando accedes a personalización y cambias el tema de windows de tipo Aero, SHELLDLL_DefView que por defecto está bajo Progman pasa a WorkerW. Si matas explorer.exe y lo vuelves a ejecutar SHELLDLL_DefView  volverá a estar bajo Progman.

Si no lo hubieras solucionado te hubiera mostrado un código para quitar la barra. Que yo sepa no tiene identificador, pero se podía quitar usando GetWindowLong, SetWindowLong y SetWindowPos.



#456
.NET (C#, VB.NET, ASP) / Re:
6 Octubre 2016, 19:47 PM
Cita de: Eleкtro en  6 Octubre 2016, 19:38 PM
... de esta manera no tarda ni 3.

Perdona que insista, pero es que lo dices como si fuera una constante universal o algo así. Es relativo depende del ordenador. No se si trabajas en reparación de ordenadores, si es así te invito a que pruebes con diferentes compus que tengas a mano de diversos clientes a ver que pasa.

Si el autor del post va a usar el programa para él con su propia compu y se le comprime 1GB en 2s, estupendo. Pero si lo va a usar en otros ordenadores, pues vamos en el mío me sale la barrita y se tira más de un minuto. Lo he probado en un portatil del 2008, o sea que tiene ya 8 añitos.




y termino porque es tontería discutir por algo que es obvio  :P


#457
.NET (C#, VB.NET, ASP) / Re:
6 Octubre 2016, 19:22 PM
Cita de: Eleкtro en  6 Octubre 2016, 19:05 PM
Ejemplo en WinRAR:

( zip, store, y contraseña establecida. )

Archivos a comprimir: 160
Tamaño total de los archivos: 2 1 GB aprox.
Tiempo transcurrido para la "compresión": (menos de) 2 segundos aprox.

Solo tarda lo que se tardan en copiar los archivos, puesto que no se realiza compresión, de ahí mis palabras: "no tarda nada en absoluto, en comparación".

No, al establecer una contraseña se añade información/metadatos al archivo comprimido.

Saludos!

Eso he hecho yo con el winrar y me tarda. no se, tendrás un ordenador más potente. no se.
añado: no tengo la opción "store", tengo "no comprimir", que supongo que sería el equivalente

De todos modos él tendría que tener instalado el winrar y usar comandos. Sigo sin verlo.



1 GB en 2 s, madre mía tu tienes uno de la NASA por lo menos XD
¿Usas SSD? imagino que si. No puedes esperar que todos tengan una compu como al tuya
#458
.NET (C#, VB.NET, ASP) / Re:
6 Octubre 2016, 17:42 PM
Cita de: Eleкtro en  6 Octubre 2016, 17:21 PM
Solamente en caso de que se le aplique la compresión. Se puede "comprimir" en modo de almacenamiento (storage) sin compresión alguna, lo que no demora absolutamente nada en comparación.

Saludos!
...y cifrarlo luego si que tardaría ¿no?

Bueno acabo de probar por curiosidad comprimir sin compresion, pero tarda igual ¿a qué te refieres?

si se trataso por ejemplo, hipotéticamente, de un troyano que va a copiar X archivos en una carpeta y bloquearla, hiptéticamente, y no quieres que el usuario se entere..... a eso me refería, no se trata que tarde 1 minuto de 5 en comparación si no que no tarde nada, de nada.
#459
.NET (C#, VB.NET, ASP) / Re:
6 Octubre 2016, 14:53 PM
Cita de: BlackBlex en  6 Octubre 2016, 14:47 PM
¿Que tal si comprimes la carpeta y sobre este lo encriptas como archivo?
No te sirve así?

Enviado desde mi MotoG3 mediante Tapatalk
No no le servirá porque el contenido de la carpeta puede ser relativamente grande según el programa en el que desea aplicar esa función.  Eso podría demorar mucho tiempo ya que el hace un listado de archivos que contengan una determinada extensión en un número indeterminado de directorios y se copian en dicha carpeta. Con lo cual si hay 1532 archivo por ejemplo de tipo *.exe, pues tardaría bastante.
#460
.NET (C#, VB.NET, ASP) / Re: cifrar Carpetas
6 Octubre 2016, 11:41 AM
@Tomas1982  pues tienes lo razón he bloqueado una carpeta en un pendrive y en otro PC con misma versión de SO y se abre sin problemas.

Cuando dijiste "memoria" creía que te referías que la carpeta estaba en uso, en memoria. En cuyo caso se solucionaba ejecutando como administrador.

Pues se un truquillo, es bastante malo, pero por lo menos un usuario novato no sabrá como abrir la carpeta, a no ser que busque o se informe de como.

Solo conozco una manera "portable" de mantener la carpeta protegida y es usando un archivo Desktop.ini en el interior de la carpeta.

Lo editas con esto:

[.ShellClassInfo]
CLSID={b8cdcb65-b1bf-4b42-9428-1dfdb7ee92af}


guardas y luego la carpeta la tienes que cambiar el atributo a System. Es decir a carpeta del sistema. Puedes usar API usando SetFileAttributes  y  la constante Const FILE_ATTRIBUTE_SYSTEM = &H4 y para quitarle el atributo FILE_ATTRIBUTE_NORMAL


con Net sería:

        Dim Attributes As FileAttribute = FileAttribute.System
        FileSystem.SetAttr(strDirectorio, Attributes)


Pero ya ves lo fácil que se puede quitar el atributo. Incluso se puede con la consola y además será accesible desde cualquier sistema que no sea windows.

Lo bueno es que sería portable.

De haber una forma de hacer lo que pides, que yo también estuve buscando hace tiempo, debe ser cambiando el atributo de la carpeta  como hace SetFileAttributes.

Un día lo conseguí, pero no se como lo hice. Hice tantas tonterías que no se que es lo que hizo que una carpeta fuera completamente inaccesible incluso fuera de Windows, no había manera. Pero hice tantos cambios y tantas tonterías que no se que fue lo que cambió la carpeta a ese estado. O sea que poderse se puede.