2012-08-27 23 views
0

這是我正在使用的代碼。指向$ text的快捷方式指向「C:\ Users \ ze \ Desktop \ 329328」:s 任何建議?!在NSIS中定義一個快捷方式

感謝

Function nsDialogsPage 

    nsDialogs::Create 1018 
    Pop $Dialog 

    nsDialogs::SelectFileDialog open "$PROGRAMFILES\InduSoft Web Studio v7.0\Bin\RunStartUp.exe" "*.exe" 

    Pop $Text 

    ${NSD_CreateText} 0 13u 100% -13u $Text 
    Pop $Text 

    nsDialogs::Show 

    CreateShortCut "$SMPROGRAMS\My application\My application.lnk" "$Text" 
    CreateShortCut "$DESKTOP\My application.lnk" "$Text" 

FunctionEnd 

回答

1

pop $Text聲明存儲窗口處理創建的文本的,而不是它的文本內容(參考文檔在這一點上誤導)。在你的例子中,返回的句柄是329328,這解釋了奇怪的鏈接目標。

要獲取的內容,你可以使用${NSD_GetText}這樣的:

${NSD_CreateText} 0 13u 100% -13u $TextToShow 
Pop $TextHandle 
;... 
;... 
${NSD_GetText} $TextHandle $0 ; $0 will receive the text string 
+0

謝謝:)這是工作。 –