Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    98

    [VB.NET 2008] Problema dragdrop su windows7

    Salve,
    rieccomi di nuovo qua.

    Dunque ho problemi di permessi con windows 7 che non so come risolvere.. mi spiego meglio.

    Quando si apre il mio programma se si trascinano dei files sulla form questo agisce su di essi in una certa maniera che però non ha niente a che fare con il problema.

    Il problema sta nel fatto che su winodws xp funziona benissimo, mentre su windows 7 quando trascino dei file sul form il cursore cambia e diventa quella sorta di "divieto nero" che fa capire che non si possono trascinare sul form. Ho letto in giro che si tratta di un problema di permessi, poichè non solo il programma deve essere eseguito come amministratore ma gli stessi privilegi li devono anche avere i file che si stanno "trascinando" sul form..

    tramite vb.net ho settato nel manifesto:
    <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />

    che mi fa eseguire il mio programma con i privilegi di amministratore senza ogni volta fare click destro -> Esegui come amministratore

    Il programma si apre e fa tutto, è in grado di scrivere e leggere dal registro, cancellare o aprire files, però quando provo a trascinarci dei files sopra non va.. perchè non si attiva proprio l'evento dragdrop, nonostante mi trovi su un account Administrator, quindi come risolvere?

    p.s. il fatto che il mio programma e i file che trascino devono avere gli stessi privilegi sembra confermato dal fatto che se setto:
    <requestedExecutionLevel level="asInvoker" uiAccess="false" />

    cioè i permessi "normali" il dragdrop pare funzionare, cioè i files li posso trascinare ma ovviamente non posso farci niente perchè ho privilegi troppo bassi.. come posso fare?

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472

    Re: [VB.NET 2008] Problema dragdrop su windows7

    Originariamente inviato da GrG
    cioè i permessi "normali" il dragdrop pare funzionare, cioè i files li posso trascinare ma ovviamente non posso farci niente perchè ho privilegi troppo bassi.. come posso fare?
    Devi ridurre il livello di privilegi richiesti dalla tua applicazione, oppure far aprire Gestione risorse con livelli elevati.

    Chiaramente, non puoi risolvere senza sciogliere uno di questi nodi, poiché se fosse possibile allora non avrebbe nemmeno senso dotarsi di una UAC.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    98

    Re: Re: [VB.NET 2008] Problema dragdrop su windows7

    Originariamente inviato da alka
    Devi ridurre il livello di privilegi richiesti dalla tua applicazione
    Questo non posso farlo perchè diventerebbe inutilizzabile, visto che la mia applicazione manipola i files (li apre, cancella, copia, ecc.)

    oppure far aprire Gestione risorse con livelli elevati.
    Come posso farlo? Purtroppo non sono pratico di windows 7 quindi mi sarebbe d'aiuto ricevere dei chiarimenti a riguardo

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Originariamente inviato da GrG
    Questo non posso farlo perchè diventerebbe inutilizzabile, visto che la mia applicazione manipola i files (li apre, cancella, copia, ecc.)
    Non c'è bisogno di privilegi elevati per manipolare qualsiasi file, a meno che non si tratti di file in locazioni particolari o "delicati", condizioni che vengono applicate anche a Gestione risorse.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    98
    mm in effetti con privilegi "bassi" non so se il mio programma poteva manipolare i file.. questo perchè si blocca subito appena aperto dato che va a creare una chiave di registro che invece non può creare per colpa dei privilegi bassi..

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    98
    Allora, diciamo che una "soluzione" estrema l'ho trovata..

    infatti andando in:
    Pannello di controllo -> Sistema e sicurezza -> Centro operativo -> Modifica le impostazioni di controllo dell'account utente

    e disattivando l'UAC dopo il riavvio del pc il programma funziona benissimo.. ora diciamo che non è una soluzione molto "professionale", dunque nessuno sa come fare senza ricorrere alla disattivazione dell'UAC?

  7. #7
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Originariamente inviato da GrG
    e disattivando l'UAC dopo il riavvio del pc il programma funziona benissimo..
    Beh, è chiaro che se l'UAC ti impedisce di fare qualcosa e tu la disabiliti, il tutto funziona benissimo.

    Originariamente inviato da GrG
    nessuno sa come fare senza ricorrere alla disattivazione dell'UAC?
    Non c'è molto da aggiungere a quanto già detto. L'unica via che si potrebbe suggerire è quella di lanciare il programma con diritti non amministrativi, che non richieda quindi l'intervento dell'UAC e che accetti file da Esplora risorse, ma demandando le operazioni sui file a un programma esterno che, in base alla locazione del file o a problemi nella sua manipolazione diretta, confermando la richiesta di elevazione dei diritti dell'UAC, esegua effettivamente l'operazione comandata dal programma principale.

    Ogni altra "scappatoia" non è ammessa, perché renderebbe inutile l'UAC stessa.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    98
    Originariamente inviato da alka
    ma demandando le operazioni sui file a un programma esterno che, in base alla locazione del file o a problemi nella sua manipolazione diretta, confermando la richiesta di elevazione dei diritti dell'UAC, esegua effettivamente l'operazione comandata dal programma principale.
    Non ho ben capito cosa intendi dire.. potresti rispiegarmelo?

    Comunque ho continuato a fare ricerche sull'argomento, perchè com'è possibile che non sia consentito il dragdrop? Un modo secondo me ci deve essere, pure che si tratta di pagare microsoft, un modo ci deve per forza essere..

    Questi sono i link che ho trovato (anche se il primo link non mi è ben chiaro ma non credo riguardi esattamente il mio problema):
    http://www.codeproject.com/KB/winsdk/AddToGAC.aspx
    http://msdn.microsoft.com/en-us/library/k5b5tt23(v=vs.80).aspx
    http://msdn.microsoft.com/en-US/library/8s9b9yaz(v=VS.80).aspx
    http://www.dotnetwork.it/Articoli/ta...7/Default.aspx
    http://www.wiscocomputing.com/articles/code-signing.htm
    http://www.codeproject.com/KB/vista-...ivalGuide.aspx
    http://www.codeproject.com/Articles/...?display=Print

    Soprattutto l'ultimo link dovrebbe riguardare il mio problema..

    Comunque sono riusciuto a firmare il mio programma e a dargli quindi un nome univoco (in inglese: Strong name) ma nonostante questo e nonostante lo esegua come amministratore e nel percorso C:\Programmi o C:\Windows\System32 il dragdrop non funziona..

    Su internet appunto ho trovato che il programma doveva stare per forza in uno dei due percorsi sopracitati e doveva avere una firma ma nonostante ho fatto questo non funziona, quindi non so più come procedere..

  9. #9
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Prova così:

    - clic destro sul nome del tuo programma (exe)
    - Proprietà
    - Sicurezza
    - in Utenti e gruppi selezioni il tuo utente, esempio: Administrators (mario-pc\Administrators)
    - in Autorizzazioni per Administrators, se il check Controllo completo è spuntato, allora non so cosa dirti.

    Se invece non è spuntato procedi così:
    - clic su Avanzate
    - scheda Proprietario
    - clic su Modifica...
    - selezioni il TUO utente (es. mario-pc\mario)
    - clic su Applica (appare il messaggio che sei diventato proprietario)
    - clic su OK per chiudere (2 volte, per tornare alle Proprietà)
    - clic su Modifica...
    - in Utenti e gruppi seleziona di nuovo: Administrators (mario-pc\Administrators)
    - in Autorizzazioni per Administrators fai clic sul check 'Controllo completo' sotto 'Consenti': questo abiliterà tutte le voci.
    - clic su Applica
    - clic su OK per chiudere per tornare alle Proprietà
    - clic su OK per chiudere le Proprietà

    Incrocia le dita, e prova a vedere se ti da ancora problemi...


  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    98
    gibra purtroppo avevo già provato ma non funziona lo stesso..

    comunque sembra che ho risolto il problema abbassando i privilegi come mi suggerito da voi.

    Il problema era che non potevo agire sui file perchè mi trovavo in un percorso "protetto" (cioè c:\programmi) ma se io ad esempio metto il programma in C:\ o sul desktop funziona bene

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.