Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 17 su 17
  1. #11
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Non c'è bisogno del video, si è capito ...

    Potresti provare ad inviare un messaggio con la SendMessage di tipo Broadcast

    HWND_BROADCAST,WM_SETTINGCHANGE
    Ho provato a fare ciò ma non funziona:
    codice:
    Private Const HWND_BROADCAST = &HFFFFPrivate Const SMTO_ABORTIFHUNG = &H2
    Private Const WM_SETTINGCHANGE = &H1A
    Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Long) As Long
    
    
    Private Sub RefreshExplorer()
    	SendMessage HWND_BROADCAST, WM_SETTINGCHANGE, 0, 0
    End Sub
    
    
    Private Sub Button1_Click()
    	RefreshExplorer()
    End Sub

  2. #12
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Posta anche il codice che modifica il registro per provare
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #13
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Posta anche il codice che modifica il registro per provare
    codice:
    My.Computer.Registry.SetValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced", "Hidden", 1, RegistryValueKind.DWord)
    In pratica diventa:
    codice:
    Private Const HWND_BROADCAST = &HFFFFPrivate Const SMTO_ABORTIFHUNG = &H2
    Private Const WM_SETTINGCHANGE = &H1A
    Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Long) As Long
    
    
    Private Sub RefreshExplorer()
        SendMessage HWND_BROADCAST, WM_SETTINGCHANGE, 0, 0
    End Sub
    
    
    Private Sub Button1_Click()
        My.Computer.Registry.SetValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced", "Hidden", 1, RegistryValueKind.DWord)
        RefreshExplorer()
    End Sub

  4. #14
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    In .NET, nelle funzioni API, i parametri Long vanno dichiarati come Integer.

  5. #15
    Quote Originariamente inviata da deamon75 Visualizza il messaggio
    EDIT:
    Sembra che questo è proprio ciò di cui ho bisogno... qualcuno saprebbe tradurmi cosa fa effettivamente?
    http://social.msdn.microsoft.com/For...rum=vblanguage
    Sì, quel codice dice alle finestre di Explorer di aggiornare il contenuto della vista tramite un metodo ben supportato (usa gli appositi oggetti COM della shell). Per convertirlo in VB.NET puoi usare uno qualunque dei converitori C# <=> VB.NET che puoi trovare sul web. Nota comunque che ti stai comunque appoggiando a comportamento non ben definito - non sta scritto da nessuna parte che ad ogni refresh Explorer va a controllare quella chiave di registro.
    Amaro C++, il gusto pieno dell'undefined behavior.

  6. #16
    Quote Originariamente inviata da MItaly Visualizza il messaggio
    Sì, quel codice dice alle finestre di Explorer di aggiornare il contenuto della vista tramite un metodo ben supportato (usa gli appositi oggetti COM della shell). Per convertirlo in VB.NET puoi usare uno qualunque dei converitori C# <=> VB.NET che puoi trovare sul web. Nota comunque che ti stai comunque appoggiando a comportamento non ben definito - non sta scritto da nessuna parte che ad ogni refresh Explorer va a controllare quella chiave di registro.
    Ho provato quel codice però mi apre una cartella (C:\DATA\) io invece non voglio aprire nessuna cartella, e comunque non mi funziona cioè apre la cartella ma non si ricarica le impostazioni di registro.

    Io ho Windows 8.1 ma anche su 7 funziona, in pratica nella barra in alto a destra c'è la checkbox "Mostra file nascosti", appena l checko mi fa vedere i file nascosti o appunto li nasconde.
    In pratica ho visto che quella opzione va a modificare la chiave del registro cosi come la modifico io, però se la modifico Manualmente e/o tramite Vb.Net non vedo cambiamenti finchè non premo f5 da una qualsiasi parte oppure faccio tasto destro <> Aggiorna

    Repeat: Facendo con quel codice del link il refresh comunque non vedo i file nascosti dopo aver modificato la chiave

    Info?


    Quote Originariamente inviata da gibra Visualizza il messaggio
    In .NET, nelle funzioni API, i parametri Long vanno dichiarati come Integer.
    Ora provo a modificare le dichiarazioni però non credo che risolverò il problema
    Ultima modifica di deamon75; 11-01-2014 a 19:07

  7. #17
    Quote Originariamente inviata da deamon75 Visualizza il messaggio
    Ora provo a modificare le dichiarazioni però non credo che risolverò il problema
    Niente, non va!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.