Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [VB2010] AnyCpu e API a 32 bit / 64 bit

    Ho sempre compilato (retaggio dei vecchi tempi) usando come opzione x86.

    Però gli anni passano, le Framework crescono... mi sorge la domanda:

    Sviluppando applicazioni che usano molte API basate sulla "user32.dll", come:


    -GetWindowRect
    -WindowFromPoint
    -PostMessage
    -MoveWindow


    Per evitare probemi è meglio continuare a compilare in x86 mode, o le Framework 4.0 mi consentono comunque di compilare per AnyCpu ed al resto pensano tranquillamente loro (cioè sono SICURO che caricano la .dll giusta?)

    Il dubbio mi sorge per il fatto che, tutto sommato, se al resto pensassero tranquillamente loro... optando per le 4.0 come Framework di destinazione l' opzione x86 "dovrebbe" sparire in quanto inutile. O no?

    Ty
    Ultima modifica di eziogsv; 12-04-2014 a 13:52

  2. #2
    Dovrebbe funzionare correttamente da sé, a patto che le dichiarazioni delle API siano corrette, in particolare per quanto concerne i tipi che cambiano dimensioni al passaggio a 64 bit - tipicamente i puntatori e gli handle devono essere dichiarati di tipo IntPtr, che è a 32 o 64 bit a seconda se il codice viene eseguito a 32 o 64 bit.
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Grazie della risposta... comunque alla fine ho optato per compilare nuovamente x86 e passare alle Framework4.0...

    Però adesso ho un problema inusuale... dopo moltissimi updates senza problemi, in cui i files user.config dei vari upgrade venivano inseriti sempre nella stessa cartella e pertanto "recuperavo" i settings delle versioni precedenti tramite My.Settings.Upgrade adesso l' ultima versine viene inserita in una nuova cartella. per cui perdo i settaggi precedenti.

    E' perché ho cambiato Framework di destinazione o cosa????
    .

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.