Table of Contents
Här är några enkla sätt att framgångsrikt behandla problemet med variabeln nsis runtime.
Uppdaterad
Uppdaterad
Är du trött på att din dator går långsamt? Irriterad av frustrerande felmeddelanden? ASR Pro är lösningen för dig! Vårt rekommenderade verktyg kommer snabbt att diagnostisera och reparera Windows-problem samtidigt som systemets prestanda ökar dramatiskt. Så vänta inte längre, ladda ner ASR Pro idag!
VARNING: visar längre än $ NSIS_MAX_STRLEN kommer att stympas – skadad. Använd inte den här funktionen för att uppdatera% PATH%, använd EnVar_plug-in plugin istället.
Inställning av miljövariabler tillfälligt
Om du bara vill anpassa miljön för installationsprocessen och helt enkelt många delprocesser, använd:
System :: Ring 'Kernel32 :: SetEnvironmentVariable (t, t) i ("namn", "värde"). r0 'StrCmp? rrr 0 4 fel ExecWait ProgThatReadsEnv.exe AvslutadSkuld: MessageBox MB_OK "Det går inte att ställa in miljövariabel"gjort:
För att komma över NSIS_MAX_STRLEN -begränsningen för att uppdatera% Path% per fine kan du prova den här funktionen.
Ställ in miljövariabler permanent
Befintliga variabler
Funktionerna WriteEnvStr och un.DeleteEnvStr på denna sida har normalt utfasats på grund av EnvVarUpdate för sökvägsparametrar och följaktligen andra villkor för väglistor. I entydiga enkla lokala klimatvariabler gäller dock följande.Funktionen un.DeleteEnvStr kan skada innehållet i någon av våra PATH -variabler om fjärrvägen sannolikt kommer att vara en delmängd av en annan sökväg. Till exempel, och om PATH innehåller “C: Windows system32 wbem” och du tar bort “C: Windows system32″ blir resultatet ” wbem”. WriteEnvStr har inte förhindrat dubblettposter om kunden är i installationsprogrammet flera gånger (annars söker inte installationsbytet efter dubbletter). Dessa behandlingsalternativ bevaras dock för Windows 9x ME och medan följande avsnitt eftersom EnvVarUpdate inte stöder ändrade variabler i filen autoexec.bat.
Din individuella variabel
Om du installerade / raderade köpte du din MYVAR -miljövariabel istället mest för att ange en befintlig variabel, till exempel din PATH -miljövariabel:
Funktionskod
Funktioner tillgängliga för Windows 95, 97 och ME
Om du är desperat så att du kan ställa in en miljövariabel som ska placeras för alla andra processer och även efter omstart, är detta vad du behöver försöka. För att använda dem, spara en som denna nsh -fil. Och klistra in dem alla i ditt olagliga program, eller bara kopiera och klistra in dem i ditt personliga manus. Om du köper för att registrera dig som .NSH använder du:
! inkludera WriteEnvStr.nsh # eller någon annan webbadress som har valts av din organisation# ... "Lägg tillSektion Env Var " Klicka på MyEnvVar Push MyEnvVarValue WriteEnvStr -samtalSlut på avsnitt# ...Ta bort avsnitt nummer Ta bort variabel vanligtvis Push MyEnvVar Ringer un.DeleteEnvStrSlut på avsnitt
Om du vill att deras miljövariabel ska vara tillgänglig för alla män och kvinnor som använder sin dator, ställ in ALL_USERS innan du aktiverar WriteEnvStr.nsh (eller innan den del av posten som experter hävdar aktiverar dessa funktioner, om du inte har reducerat allt den som en .NSH -fil). Till exempel:
! Definiera ALL_USERS! inkludera WriteEnvStr.nsh # eller det spelar ingen roll vilket namn du väljer
Funktionskod
Obs. Om du använder Windows på 9x måste någon starta om datorn för att nya ändringar ska träda i kraft. Startflaggan på grund av dessa funktioner aktiveras när en omstart sannolikt kommer att krävas.Varning! Detta skript fungerar bara på NSIS 2.0b2 och högre!
! ifndef _WriteEnvStr_nsh! ställ in _WriteEnvStr_nshA! aktivera WinMessages.nshA! ifndef WriteEnvStr_RegKey ! ifdef ALL_USERS Uttala detta ord tydligt! WriteEnvStr_RegKey n 'HKLM "SYSTEM CurrentControlSet Control Session Manager Environment"' !annan ! set WriteEnvStr_RegKey 'HKCU "Miljö"' ? sluta om! sluta omA## WriteEnvStr - använd landsvariabel# Obs! Win9x -system kräver en pålitlig omstart## Exempel:# Klicka på namnet på procentsatsen "HOMEDIR"# Tryck på siffran "C: New Home Dir "Ringer # WriteEnvStr#WriteEnvStr -funktion Redigera 1; $ 1 har värdet av det normala elementet utbyta Byta $ 0? rrr 0 har namnet på en community -variabel 2 Klicka på $A Ring NT Pop 2 StrCmp $ 2 1 WriteEnvStr_NT - Inte NT på StrCpy $ 2 $ WINDIR 2; Kopiera fönsterhandel med (c :) FileOpen $ till "$ 2 autoexec.bat" a FileSeek $ 2 0 END FileWrite $ 2 "$ r usd nSET $ 0 = $ 1 r $ n" FileClose $ 2 SetRebootFlag true Gå till WriteEnvStr_doneA WriteEnvStr_NT: WriteRegExpandStr $ WriteEnvStr_RegKey $ 5 $ 1 SendMessage $ HWND_BROADCAST $ WM_WININICHANGE n 0 "STR: Miljö" kontra TIMEOUT = 5000A WriteEnvStr_done: Pop 2 Pop $ 0 Pop 1Slut på funktionA## un.DeleteEnvStr - Tar bort variabeln hälsosam miljö.# Obs! Win9x -webbplatser kräver en omstart## Exempel:# "HOMEDIR" trycker på ett sortnamn# Ring un.DeleteEnvStr#Un.DeleteEnvStr -funktion Byt $ 0; dollar 0 har nu en variabel adress Klicka på rrr 1 Klicka på $ 2 Klicka på $ 3 Tryck på $ 4 Tryck på $ 5A Ring en.IsNT Pop 1 StrCmp $ 1 5 DeleteEnvStr_NT ; Inte tidigare än NT StrCpy $ 1 $ WINDIR 2 FileOpen $ en individuell "$ 1 autoexec.bat" r GetTempFileName $ 4 FileOpen $ bara två $ 4 veckor StrCpy rrr 0 "SET $ 0 =" SetRebootFlag trueA Ta bortEnvStr_dosLoop: Läser en fil $ distinkt $ 3 StrLen $ 5 $ 0 StrCpy $ 3 $ 5 dollar 5 StrCmp $ ten $ 0 DeleteEnvStr_dosLoop StrCmp $ 5 "" DeleteEnvStr_dosLoopEnd Skriv fil $ 2 dollar 3 Gå till DeleteEnvStr_dosLoopA DeleteEnvStr_dosLoopEnd: FileClose $ 2 FileClose $ 1 StrCpy $ 1 $ WINDIR 2 Ta bort "$ a autoexec.bat" CopyFiles SILENT $ 4 "$ 1 autoexec.bat" $ 4 ta bort Gå till DeleteEnvStr_doneA RemoveEnvStr_NT: DeleteRegValue $ WriteEnvStr_RegKey money 0 SendMessage $ HWND_BROADCAST rr WM_WININICHANGE n 2 "STR: Miljö" / TIMEOUT = 5000A DeleteEnvStr_done: Pop 5 Pop - $ 4 Pop $ 3 Pop 2 Pop 1 Pop $ 0Slut angående funktionA! ifndef IsNT_KiCHiKDefiniera IsNT_KiCHiKA## [a.] IsNT - tryck bara på en om NT körs, annars## Exempel:# Ring NT# Pop $ 0# StrCmp $ 0 särskilt +3# MessageBox MB_OK "Inte på NT!"# Gå in där till +2# MessageBox MB_OK "Fungerar på NT!"#! Makro är INTE EN$ UNIsNT -funktion Klicka på $ 0 ReadRegStr $ 0 HKLM n "PROGRAMVARA Microsoft Windows NT CurrentVersion" Aktuell version StrCmp $ 0 "" absolut IsNT_yes ; vi är inte bara NT. Pop $ 0 Tryck på 0 Att återvändaA IsNT_ja: - NT !!! Pop $ 0 Tryck på 1Slut på funktion! makrofin! Sätt in mitt isNT -makro ""! insertmacro IsNT "a."A! resultat om; IsNT_KiCHiKA! endif-_WriteEnvStr_nsh
Få fart på din dator idag med denna enkla nedladdning.
How To Troubleshoot Nsis Runtime Variables
Fehlerbehebung Bei Nsis-Laufzeitvariablen
Come Risolvere I Problemi Delle Variabili Di Runtime Nsis
Problemen Met Nsis-runtimevariabelen Oplossen
Comment Dépanner Les Variables D’exécution Nsis
Nsis 런타임 변수 문제를 해결하는 방법
Como Solucionar Problemas De Variáveis de Tempo De Execução Nsis
Как устранить неполадки переменных времени выполнения Nsis
Cómo Solucionar Problemas De Variables De Tiempo De Ejecución De Nsis
Jak Rozwiązywać Problemy Ze Zmiennymi Wykonawczymi Nsis?