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

#251
Shape - Es un control mas asi como el textbox, o el richtextbox, etc.
#252
Nop, lo copie tal cual. Probe varias veces. De todas formas, esta creando el valor y en la linea siguiente l oobtiene. Solo apra probar pero no funca.

Saludos
#253
Programación Visual Basic / Crear Api
17 Julio 2005, 19:02 PM
Hola gente!

En 1 de mis proyectos(IHC), me gustaria tener 2 api's(.dll). 1 para el menu de arriba y otra para los forms que llama el menu.

La idea de esto, es dejar de distribucion libre el code de estas api's junto ocn el code del hardware pero no la del resto del programa(o mejor dicho del exe principal y sus configs.)

Me pueden dar algun tipo de info  sobre como crear un api y respecto a cargarlas.

Saludos y ojala me ayuden.
#254
Alwar:

Busca aca, quisas encuentres lo del winsock.

http://www.planetsourcecode.com/vb/

Saludos
#255
Hola gente!

La cosa es que para mis 2 proyectos, nesecito hacer un formulario para configurar un programa y eso.

pero no se como hacer para que al presional un boton, suponganse "Aplicar" comprueve los check y radios para ver si estan seleccioados y en base a eso actue. Ni tampoco que al presional un   radio o check me ponga a enabled true o false un/ciertos elementos(esto da igual, puedo hacerlo con la propiedad click pero prefiero otro metodo mas profesional)

O sea, yo peudo poner que le de cierto valor a tales o cuales variables segun haga yo click. Pero no se puede por alguna propiedad, controlar si estan o no seleccionados?

Saludos y espero me ayuden.
#256
No es que de un error, sino que al tratar de mostrar de algun modo(por ejemplo en un msgbox) la informacion obtenida, la variable esta vacia.
Pero sin embargo si dentro de la funcion pongo msgbox nBufferDATA

Lo hace bein.

Saludos
#257
Esto en un modulo:

Public Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, ByVal lpData As String, lpcbData As Long) As Long
Public Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Public Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, ByVal lpData As String, ByVal cbData As Long) As Long
Public Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Public Declare Function RegDeleteKey Lib "advapi32.dll" Alias "RegDeleteKeyA" (ByVal hKey As Long, ByVal lpSubKey As String) As Long
Public Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long

'constants'
Public Const REG_SZ = 1
Public Const HKLM = &H80000002 ' This is really HKEY_LOCAL_MACHINE

'Globals'
Dim NTOwner As String
Dim KeyValue As String

Esto en otro o en el mismo:
Function RegistryCreateKey(MasterKey, Key)
Dim nBufferKey As Long
RegCreateKey MasterKey, Key, nBufferKey
End Function
Function RegistryCreateSubKey(MasterKey, Key, SubKey)
Dim nBufferKey As Long, nBufferSubKey As Long
RegOpenKey MasterKey, Key, nBufferKey
RegCreateKey nBufferKey, SubKey, nBufferSubKey
End Function
Function RegistryDeleteKey(MasterKey, Key)
RegDeleteKey MasterKey, Key
End Function
Function RegistryDeleteSubKey(MasterKey, Key, SubKey)
Dim nBufferKey As Long
RegOpenKey MasterKey, Key, nBufferKey
RegDeleteKey nBufferKey, SubKey
End Function
Function RegistryDeleteValue(MasterKey, Key, Value)
Dim nBufferKey As Long
RegOpenKey MasterKey, Key, nBufferKey
RegDeleteValue nBufferKey, Value
End Function
Function RegistryGetNTUserName()
Dim nBufferKey As Long
Dim nBufferName As String
nBufferName = Space(256)
RegOpenKey LOCALMACHINE, "SOFTWARE\Microsoft\Windows NT\CurrentVersion", nBufferKey
RegQueryValueEx nBufferKey, "RegisteredOwner", 0, REG_SZ, nBufferName, Len(nBufferName)
NTOwner = nBufferName
End Function
Function RegistryGetValueData(MasterKey, Key, Value)
Dim nBufferKey As Long
Dim nBufferDATA As String
nBufferDATA = Space(256)
RegOpenKey MasterKey, Key, nBufferKey
RegQueryValueEx nBufferKey, Value, 0, REG_SZ, nBufferDATA, Len(nBufferDATA)
KeyValue = nBufferDATA
End Function
Function RegistrySetValueData(MasterKey, Key, Value, ValueData)
Dim nBufferKey As Long
RegOpenKey MasterKey, Key, nBufferKey
RegSetValueEx nBufferKey, Value, 0, REG_SZ, ValueData, Len(ValueData)
End Function


En MasterKey haz de poner HKLM, en key por ejmplo: "SOFTWARE\ALGO" y buneo, lo demas es leer el code.

Las funciones RegistryGetValueData y RegistryGetNTUserName tienen un fallo y no se cual es.

Saludos
#258
Hola gnete!

Bueno, el problema es que cunado trato de leer el registro obteniendo un valor y ponerlo en una variable global algo anda mal.

Segun mi, es la variable porque si pongo un msgbox en la funcion paraque imprima nBufferDATA, lo hace bien.

Como puedo solucionarlo?

Funcion:
Function RegistryGetValueData(MasterKey, Key, Value)
Dim nBufferKey As Long
Dim nBufferDATA As String
nBufferDATA = Space(256)
RegOpenKey MasterKey, Key, nBufferKey
RegQueryValueEx nBufferKey, Value, 0, REG_SZ, nBufferDATA, Len(nBufferDATA)
KeyValue = nBufferDATA
End Function


Declaraciones:
Public Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, ByVal lpData As String, lpcbData As Long) As Long
Public Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Public Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, ByVal lpData As String, ByVal cbData As Long) As Long
Public Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Public Declare Function RegDeleteKey Lib "advapi32.dll" Alias "RegDeleteKeyA" (ByVal hKey As Long, ByVal lpSubKey As String) As Long
Public Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long

'constants'
Public Const REG_SZ = 1
Public Const HKLM = &H80000002 ' This is really HKEY_LOCAL_MACHINE

'Globals'
Dim NTOwner As String
Dim KeyValue As String


Saludos
#259
Mira, yo en el post http://foro.elhacker.net/index.php/topic,78841.0.html , pregunte solo por los botones pero el buen xavierote, me dio un enlace para toda la aplicacion.

Te explico basicamente com ose hace. Sino entra al post y mira el enlace.

1-Creas un archivo llamado Nombre_De_Tu_archivo.exe.manifest
y le metes esto dentro con el notepad:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="HybridDesign.WindowsXP.Example" type="win32" />
<description>Manifest</description>
<dependency><dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*" /> </dependentAssembly> </dependency> </assembly>


Despues, en tu aplicacion pones un modulo nuevo. Y le pones este code:
Public Declare Function InitCommonControls Lib "Comctl32.dll" () As Long


Y por ultimo en todos los forms pones:
Private Sub Form_Initialize()
Dim X As Long
X = InitCommonControls
End Sub


PD: el manifest debe estar en el mismo dir que el exe.

Con esto, logras que tanto scrollbars, como botones , textbox, y todo l oque implica "XP" este como en el XP.

Saludos
#260
Ah no, mucho trabajo. Simplemente fue el primer programa que me paso por la cabeza.

Respecto a los botones y eso, lla lo propare para mi aplicacion y funciona bien. Gracias.

Saludos