2015-06-09 23 views
1

我試圖創建一個基於Pascal函數(它返回一個路徑)的結果的快捷方式,但不能如何做到這一點。基於Pascal函數的結果創建快捷方式

這就是我想要做的事:

[Icons] 
Name: '{userstartup}\Myprog'; Filename: MyFunctionThatReturnsPath() + 'Myprog.exe'; 

但功能沒有被調用,而不是文件名被視爲一個簡單的字符串。

+1

使用'文件名:{code:MyFunctionThatReturnsPath} +'Myprog.exe'' – TLama

+0

非常感謝! :-) – Jim

+0

我現在在函數上得到「invalid prototype」: function MyFunctionThatReturnsPath():string; ..... end; – Jim

回答

2

[Icons]部分條目應該看起來像:

[Icons] 
Name: "{userdesktop}\Myprog"; Filename: "{code:MyFunctionThatReturnsPath}\Myprog.exe" 

而且相應的功能是:

[Code] 

function MyFunctionThatReturnsPath(Param: string): string; 
begin 
    Result := 'C:\path'; 
end; 

函數必須有一個字符串參數,即使你實際上並不使用它。見Pascal Scripting: Scripted Constants

被調用的函數必須有一個名爲參數1個字符串參數,並且必須返回一個字符串或取決於常數使用中的Boolean值。

+0

我是Pascal語法的全新手(在BASIC世界多年)。我知道我想做什麼,只是做對了! 非常感謝您的幫助。 – Jim