Dooohh - I feel stupid now.
What happened:
  1: :D I added session logging.
  2: :shock: I was puzzled as the host key was exactly the same key as for my other host.
  3: :oops: I realized I'd been testing the script against the wrong IP - feeling quite stupid now.
Sorry for your trouble, and thanks for your help.
  /Karsten Wagner Bang
                
            
        
    
    
        
        
            
            
                You are most likely using from wrong key fingerprint.
Please set Session.SessionLogPath and check the fingerprints there. Attach the log here, if it does not help.
                
            
        
    
    
        
        
            
            
                After I read my post I can see I didn't use that much text.
If anyone would like to help but do not have enough information, please write and I'll try to gather all necessary information.
/Karsten Wagner Bang
                
            
        
    
    
        
        
            
            
                Hi
Problem: When I try to log on autocratically using the dll I get the following error message: "Host key wasn't verified!". Manual log on works perfect.
What I've done:
Manually connected to the server and copied the key from Server/Protocol Information.
Written the following powershell script:
----------------------
    $sftp_site =  @{"HOST" = "X.X.X.X"; "LOCATION" = "/Elev/"; "USER" = "YYYY"; "PASSWORD" = "ZZZZ"; "PRIVATEKEYPATH" = "mykey.ppk"; "HOSTKEY" = "ssh-dss 1024 bf:1f:9c:5d:92:a5:dd:2d:b1:ce:e6:c1:20:73:32:71"}
    # Load WinSCP .NET assembly
    [Reflection.Assembly]::LoadFrom($winscp_path) | Out-Null
 
    # Setup session options
    $sessionOptions = New-Object WinSCP.SessionOptions
    $sessionOptions.Protocol = [WinSCP.Protocol]::Sftp
    $sessionOptions.HostName = $sftp_site["HOST"]
    $sessionOptions.UserName = $sftp_site["USER"]
    $sessionOptions.Password = $sftp_site["PASSWORD"]
    $sessionOptions.SshHostKeyFingerprint = $sftp_site["HOSTKEY"]
 
    $session = New-Object WinSCP.Session
 
    try {
      # Connect
        $session.Open($sessionOptions)
 
        # Upload files
        $transferOptions = New-Object WinSCP.TransferOptions
        $transferOptions.TransferMode = [WinSCP.TransferMode]::Binary
 
        $transferResult = $session.PutFiles($work_directory + "*", $sftp_site["LOCATION"], $FALSE, $transferOptions)
 
        # Throw on any error
        $transferResult.Check()      
    }
    finally {
      # Disconnect, clean up
      $session.Dispose()
    }
------------------------
If I change the host key to an invalid value (deleting the last letter) I get an Regular Expression error - which shows that the Host key is being read.
What can I do to debug the problem?