Differences
This shows you the differences between the selected revisions of the page.
| 2013-04-15 | 2013-04-30 | ||
| &beta_feature (martin) | Converting to .NET Assembly (martin) | ||
| Line 38: | Line 38: | ||
| </code> | </code> | ||
| + | ===== Converting to .NET Assembly ===== | ||
| + | When [[library_from_script|converting script to .NET Assembly]], map ''put'' command to ''[[library_session_getfiles|Session.PutFiles]]'' method. | ||
| + | Parameters mapping: Command parameter ''file'' maps to method parameter ''localPath''. When multiple source file parameters are used, you need to call ''Session.PutFiles'' multiple times. Command parameter ''directory/newname'' maps to method parameter ''remotePath''. You have to [[library_from_script#paths|convert relative paths to absolute paths]]. | ||
| + | |||
| + | Switches mapping: | ||
| + | ^ Switch ^ Mapping ^ | ||
| + | | ''-delete'' | Value ''true'' (''$True'') for method parameter ''remove''. | | ||
| + | | ''-resume'' | Not supported. | | ||
| + | | ''-append'' | Not supported. | | ||
| + | | ''-preservetime'' \\ ''-nopreservetime'' \\ ''-permissions'' \\ ''-nopermissions'' \\ ''-transfer'' \\ ''-filemask'' \\ ''-resumesupport'' | [[library_from_script_transfer_settings|Converting transfer settings scripting switches]] to .NET assembly class ''TransferSettings''. | | ||
| + | | ''-speed=<kibps>'' | Not supported. | | ||
| + | |||
| + | To emulate ''[[scriptcommand_option|option batch abort]]'' mode, call ''[[library_operationresultbase|TransferOperationResult.Check]]'' on method's result. See also [[library_session#results|Capturing results of operations]]. | ||
| + | |||
| + | For example, following script snippet | ||
| + | <code winscp> | ||
| + | option batch abort | ||
| + | ... | ||
| + | cd /home/martinp | ||
| + | lcd d:\ | ||
| + | ... | ||
| + | put -delete -filemask=*>1M -resumesupport=off *.txt *.xml web/ | ||
| + | </code> | ||
| + | maps to following PowerShell code | ||
| + | <code powershell> | ||
| + | $transferOptions = New-Object WinSCP.TransferOptions | ||
| + | # -filemask=*>1M | ||
| + | $transferOptions.FileMask = "*>1M" | ||
| + | # -resumesupport=off | ||
| + | $transferOptions.ResumeSupport.State = [WinSCP.TransferResumeSupportState]::Off | ||
| + | # Absolute paths + $True for -delete + Two calls for two source parameters | ||
| + | # + calling Check on result to emulate "option batch abort" | ||
| + | $session.PutFiles("d:\*.txt", "/home/martinp/web/", $True, $transferOptions).Check() | ||
| + | $session.PutFiles("d:\*.xml", "/home/martinp/web/", $True, $transferOptions).Check() | ||
| + | </code> | ||