2009-03-06 7 views
16

Mi è stato detto che esiste una variabile di ambiente che è possibile impostare per forzare l'esecuzione delle applicazioni .NET come applicazioni a 32 bit su versioni x64 di Windows. Sai di cosa si tratta, o conosci un riferimento su di esso? Temo che il mio google-fu mi abbia mancato oggi (o non esiste).Variabile di ambiente per forzare l'esecuzione delle applicazioni .NET come 32 bit

Sto usando Resolver One (un foglio di calcolo .NET) e voglio accedere ad alcune funzionalità solo a 32 bit senza modificare l'eseguibile. Se posso configurarlo da una variabile di ambiente, posso accedere alle funzionalità a 32 bit quando necessario, ma anche funzionare come app a 64 bit quando necessario.

(NOTA: in modo efficace Voglio essere in grado di passare se un applicazione viene eseguita come 32bit o 64bit al momento del lancio invece di costringerla al momento della compilazione.)

Grazie

risposta

14

ho avuto una risposta da Dino Veihland (Microsoft IronPython sviluppatore). Non ho ancora avuto il tempo di provarlo ...

È COMPLUS_ENABLE_64BIT. Penso che impostarlo su 0 disabilita 64 bit.

Dovresti essere in grado di impostarlo come env var o aggiungere un valore a HKLM \ Software \ Microsoft \ .NETFramework con il nome "Enable_64Bit", il tipo REG_DWORD e il valore 0 per impostarlo globalmente (questo è come tutti i COMPLO_ * vars funzionano). Questo potrebbe essere abbastanza speciale (deve essere eseguito prima che il processo venga creato) che deve essere impostato nel tasto reg ma non ne sono del tutto sicuro.

+1

La variabile di ambiente non ha funzionato per me, ma è stata impostata la voce di registro e il riavvio. – fuzzyman

+0

l'impostazione del registro ha funzionato anche per me, grazie! – UserControl

+0

Le impostazioni del registro hanno funzionato come un incantesimo, grazie :) –

9

Come su this link

Non proprio una variabile di ambiente, ma basta usare lo strumento CoreFlags per passare avanti e indietro.

Per passare a 32 bit:

CorFlags.exe TheApp.exe /32BIT+ 

Per tornare a 64 bit:

CorFlags.exe TheApp.exe /32BIT- 
+0

Hmmm ... questo è quello che stavo cercando di evitare, ma potrebbe non avere alcuna scelta - grazie. – fuzzyman

+0

@ Ruben - risolta la mia risposta. –

+0

@Eric: grandi cose; Rimosso il mio commento –

Problemi correlati