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 - LeandroA

#701
jeje entendi cualquiera, puez tiene la misma eguridad que tiene firefox osea la puedes configurar como tu quieras, no es mas que una instancia de firefox corriendo dentro de tu programa

Saludos
#702
hola Seguridad??, te referis a que dentro del ocx no haya algun codigo mal intencionado? pues si es asi, esta en todo tu derecho pensarlo, yo lo unico te puedo decir que no me gusta cagarle nada a nadie, como para darte una referencia podes ver en el foro que mas frecuento y ver algo de lo que hice y si te combense pues esta  en vos
http://www.canalvisualbasic.net/forum/forum_topics.asp?FID=3

de todas formas si de algo te sirve te doy mi palabra que no es nada malintencionado y es para poder mejorarlo

Saludos
#703
Buenas estoy terminado con un ocx que intenta (solo lo intenta) parecer al control WebBrowser solo que este utilizaría el de Mosilla Firefox y no el de IExplorer, no es mas que una chapuza, pero esta algo interesante, pues el post es para que cada uno lo pueda probar y decirme si les funciono bien o no, ya que me encuentro con el problema de hallar la ruta de exacta de Firefox en el registro de Windows para las distintas PC que lo utilicen y sobretodo en las distintas versiones de Firefox , puede que sea algo en vano lo que intento pero si no pruebo...(:
Dígamos que ya estaría terminado ya que por ahora no le encuentro mas vuelta, solo me faltaría ajustar bien cada cosa e ir probando
Como contras tiene muchas por sitar algunas
Depende que se tenga instalado Firefox (como dije antes es no es mas que una chapuza)
Solo cuenta con un evento, con lo cual muchas opciones no se tienen
Y este algo inestable (por ahora)
Por lo tanto me gustaría que ustedes vayan criticando a su gusto
Si de una no funciona es porque no encontró el archivo ósea que daría un error 53 entonces si alguien se toma la molestia de decir con que versión de Firefox cuentan y en que lugar del registro de Windows les marca la ruta completa del ejecutable se los agradezco mucho
Yo en mi caso tengo la versión 1.5.0.4 y funciona muy bien pero  me han comentado que en algunas verciones funciona  bien y en otras no

Pueden descargarlo desde aquí y ya viene con un ejemplo

http://ar.geocities.com/leandroascierto/Firefox.zip

Una Imagen (del ejemplo)


Espero sus Experiencia Saludos
#704
 Nuevo Boton
GorditoButton.ocx
Hola este es mi primer Ocx y se trata de un botón con nuevas formas, tiene varias propiedades entre ellas

• Un efecto de Transparencia o texturizado
• Actuar como CheckButoon
• Reproducir un Gif (no es muy avanzado ya que algunos no los reproduce)
• Reproducir un wav (para crear un efecto de sonido)
• Mover un texto en forma de marquesina
• Abrir una Url o archivo
• Poder crear nuevas formas de botones


El Ocx Trae por defecto 6 formas diferentes de botones pero se les puede crear nuevas formas, cambiar el color, intensidad de color, fuente, etc.

Si bien me quedaron algunas cositas para corregir creo que esta muy bien, mas adelante para la versión 1.0.0.2 se corregirán. Y sepan disculpar si hay errores de ortografía ya que enzima que soy malo en castellano me la jugué a poner las propiedades en ingles

Este obviamente consumirá un poco mas de recursos que un botón normal pero el que quiere vista que le cueste

Quiero agradecer a todos los que me ayudaron cuando preguntaba en el foro especialmente a Luciano y [EX3] dos grandes amigos de www.canalvisualbasic.net

El Ocx viene acompañado de un ejemplo bien explicado y un archivo bat para que se les haga mas fácil registrar el Ocx

Así que ¡¡Atención!! (para que no digan que no anda) antes de probar el ejemplo primero ejecutar el archivo register.bat para registrar el Ocx

Bueno espero les guste y ayuden opinado para corregir los detalles que falten para así poder terminarlo (uno de ellos es el Accesskeys que ya masomenos lo tengo encaminado)


El link para descargarlo
http://ar.geocities.com/leandroascierto/Gorditobutton.zip

Algunos ScreenShot







#705
hola la solucion y esta provada que funciona es utilizar el api GetShortPathName

te paso un ejemplo despues vos lo adaptas



Private Declare Function GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" (ByVal lpszLongPath As String, ByVal lpszShortPath As String, ByVal lBuffer As Long) As Long
Public Function GetShortPath(strFileName As String) As String
    Dim lngRes As Long, strPath As String
    'Create a buffer
    strPath = String$(165, 0)
    'retrieve the short pathname
    lngRes = GetShortPathName(strFileName, strPath, 164)
    'remove all unnecessary chr$(0)'s
    GetShortPath = Left$(strPath, lngRes)
End Function
Private Sub Form_Load()
    MsgBox GetShortPath("C:\Archivos de programa")
End Sub
#706
hola aca tenes un ejemplo bien completo para el interactuar con otra pc , solo que es solo compatible para windows XP (por algunas rutinas que asi lo requieren)

http://www.canalvisualbasic.net/forum/forum_posts.asp?TID=20819&PN=1
#707
 LeandroA  LeandroA is online now
        
Registrado: abr 2005
Mensajes: 171
AlphaBlend traer desde otra ventana
Hola tengo un problema y no le encuentro la vuelta estoy usando el api AlphaBlend (en esta pagina hay un ejemplo) bien a la hora de usarlo con dos pictures en el mismo form, funciona bien, pero yo intento traer el efecto de transparencia desde otro lugar por ejemplo form2.hdc y digamos que funciona pero el problema viene que esta ventana deve estar visible cosa que si lo ago con los dos pictures del mismo formulario no es nesesario, si pruevan el ejemplo que pongo a continuacion veran que si superpongo el form1 sobre el form2 este tomara el efecto de transparencia tomara parte del form1 o cualquier cosa que se sobreponga sobre el form2 entonces no encuentro la solucion para evitar esto, quizas y no soy muy entendido en el tema sea nesesario aplicar algun Byval pero estoy perdido

para provar agreguen tres picture , dos formularios y command1

CitarOption Explicit


'Cada control debe tener una imagen, ambas deben ser distintas
Const AC_SRC_OVER = &H0
Private Type BLENDFUNCTION
BlendOp As Byte
BlendFlags As Byte
SourceConstantAlpha As Byte
AlphaFormat As Byte
End Type
Private Declare Function AlphaBlend Lib "msimg32.dll" (ByVal hdc As Long, ByVal lInt As Long, ByVal lInt As Long, ByVal lInt As Long, ByVal lInt As Long, ByVal hdc As Long, ByVal lInt As Long, ByVal lInt As Long, ByVal lInt As Long, ByVal lInt As Long, ByVal BLENDFUNCT As Long) As Long
Private Declare Sub RtlMoveMemory Lib "kernel32.dll" (Destination As Any, Source As Any, ByVal Length As Long)

Private Sub Command1_Click()

Dim BF As BLENDFUNCTION, lBF As Long

'Cambiar el modo gráfico para que se mantenga la imagen
Picture1.AutoRedraw = True
Picture2.AutoRedraw = True
Picture3.AutoRedraw = True

Picture1.ScaleMode = vbPixels
Picture2.ScaleMode = vbPixels
Picture3.ScaleMode = vbPixels
Form2.ScaleMode = vbPixels
'asignar los parámetros
With BF
.BlendOp = AC_SRC_OVER
.BlendFlags = 0
.SourceConstantAlpha = 128
.AlphaFormat = 0
End With

'copia la función blend a una variable en memoria de tipo long
RtlMoveMemory lBF, BF, 4

'aplicar la Api desde la picture1 sobre la picture2
AlphaBlend Picture2.hdc, 50, 0, 100, 100, Picture1.hdc, 0, 0, Picture1.ScaleWidth, Picture1.ScaleHeight, lBF
Picture2.Refresh
'aplicar la Api desde la form2 sobre el picture3

'********** aca se me complica la cosa**************
AlphaBlend Picture3.hdc, 50, 0, 100, 100, Form2.hdc, 0, 0, Form2.ScaleWidth, Form2.ScaleHeight, lBF
Picture3.Refresh
End Sub

Private Sub Form_Load()
Form2.Show
Form2.BackColor = vbRed
End Sub
#708
cuando dice macros no se refiere a word o exel?, bien si es asi no podra contar con un Timer

#709
Si realmente es de terror la ortografia ya me voy aponer algun dia a corregirla  ;D
#710
te paso el code, fijate que para que funcione primero tenes que generar el exe


Option Explicit
Const TH32CS_SNAPHEAPLIST = &H1
Const TH32CS_SNAPPROCESS = &H2
Const TH32CS_SNAPTHREAD = &H4
Const TH32CS_SNAPMODULE = &H8
Const TH32CS_SNAPALL = (TH32CS_SNAPHEAPLIST Or TH32CS_SNAPPROCESS Or TH32CS_SNAPTHREAD Or TH32CS_SNAPMODULE)
Const TH32CS_INHERIT = &H80000000
Const MAX_PATH As Integer = 260
Private Type PROCESSENTRY32
dwSize As Long
cntUsage As Long
th32ProcessID As Long
th32DefaultHeapID As Long
th32ModuleID As Long
cntThreads As Long
th32ParentProcessID As Long
pcPriClassBase As Long
dwFlags As Long
szExeFile As String * MAX_PATH
End Type
Private Declare Function CreateToolhelp32Snapshot Lib "Kernel32" (ByVal lFlags As Long, ByVal lProcessID As Long) As Long
Private Declare Function Process32First Lib "Kernel32" (ByVal hSnapShot As Long, uProcess As PROCESSENTRY32) As Long
Private Declare Function Process32Next Lib "Kernel32" (ByVal hSnapShot As Long, uProcess As PROCESSENTRY32) As Long
Private Declare Sub CloseHandle Lib "Kernel32" (ByVal hPass As Long)

Private Sub Form_Load()
Comprovar
End Sub

Sub Comprovar()
Dim hSnapShot As Long, uProcess As PROCESSENTRY32, r As Long, Contador As Integer
hSnapShot = CreateToolhelp32Snapshot(TH32CS_SNAPALL, 0&)
uProcess.dwSize = Len(uProcess)
r = Process32First(hSnapShot, uProcess)
Dim Proceso As String
Do While r
Proceso = Left$(uProcess.szExeFile, IIf(InStr(1, uProcess.szExeFile, Chr$(0)) > 0, InStr(1, uProcess.szExeFile, Chr$(0)) - 1, 0))
If UCase(App.EXEName & ".exe") = UCase(Proceso) Then
Contador = Contador + 1
If Contador > 2 Then End
End If
r = Process32Next(hSnapShot, uProcess)
Loop
CloseHandle hSnapShot
End Sub