好球員,讓我試着解釋我的問題:批處理腳本:從功能1局部變量函數2
我開始用一條線從那裏我開始2個不同的功能
setlocal EnableDelayedExpansion
for %%i in ("C:\*.*") do (
call :function1 "%%~i"
call :function2 "%%~i"
)
goto :eof
在功能1,在我在本地環境中做了一個SET:
setlocal EnableDelayedExpansion
...
...
set name1=blabla
endlocal & SET name=%name1%
echo %name%
goto :eof
echo會返回我的變量。現在到我的問題。 我退出功能之一,我去功能2(見第一代碼段) 我不能在這裏調用變量形式。我嘗試了function2,我在調用function2之前試過,但都沒有解決問題。
我的猜測是隻設置了function1的局部變量。我搜索網絡,但我讀到,行「endlocal & SET name =%name1%」應該已經解決了我的問題。
我希望我已經解釋清楚了,所有幫助表示感謝!
好吧,我的愚蠢沒有嘗試簡化版本。感謝您的答案。爲了確保我沒有錯過任何東西,我會再次瀏覽代碼。如果我沒有找到問題,我會回來;)謝謝你的答案paxdiablo! – Rps 2011-01-22 10:05:50
我解決了這個問題,把兩個函數放在一起。 我現在不稱它來解決問題,但繞過一個問題;) – Rps 2011-01-22 21:53:47