Archived Forum Post

Index of archived forum posts

Question:

Activex ftp 9.5.0.43 unlock component crashes application

Sep 11 '14 at 21:54

I just updated my Active X bundle to version 9.5.0.43 on two computers. On my XP box, the component will unlock and work without error. On my 2003 server the unlockcomponent call causes a fatal error and the application exits. There is no entry in any of the event viewer categories from my application or from chilkat. Please let me know if I need a .net or c runtime. Downgrading the 2003 server to version 9.5.0.23 works.

Thanks,

-- Erik

Public Function ConnectTo_FTP() As Chilkat_v9_5_0.ChilkatFtp2
    Dim xNode As Chilkat_v9_5_0.ChilkatXml
    Dim oFTP As New Chilkat_v9_5_0.ChilkatFtp2

  Set xNode = xApp.FindChild("FTP")
  DoEvents

  MsgBox oFTP.Version 'Works

  '   Connect to RackSpace
  With oFTP
    .UnlockComponent "SINSVISFTP_xxxxxxxxxxxxx"  'Crashes here on 2003
    MsgBox .LastErrorText  'Do not execute
    .Passive = 1
    .ConnectTimeout = xNode.GetChildContent("ConnectTimeout")
    .ReadTimeout = xNode.GetChildContent("ReadTimeout")
    .KeepSessionLog = 0
    .AutoFeat = 1
    .HostName = xNode.GetChildContent("HostName")
    .UserName = xNode.GetChildContent("Username")
    .password = xNode.GetChildContent("Password")
    .Connect

  End With
  Set xNode = Nothing

  Set ConnectTo_FTP = oFTP

End Function

Answer

Erik,

Set the oFTP.DebugLogFilePath property equal to the path of a log file that is to be created. Also turn on verbose logging by setting oFTP.VerboseLogging = 1.

Re-run the program. If there was truly a crash within UnlockComponent, then the log file will contain an incomplete "LastErrorText" for the call to UnlockComponent.


Answer

This is what I found, as usual it was something that I did. On my development machine, I reverted back to the previous version(9.5.0.23) for testing and complied the exe. On the production machine I had 9.5.0.43 installed and the program crashed. Once I re-updated my dev machine to v.43 and re-compiled the exe, the application worked in production. Does this mean that with the new all-in-one dll, all applications will need to be recompiled on changes in sub versions?

Erik


Answer

Erik, I'm confused -- what programming language are you using? It seems as if you're using the ActiveX in VB.NET? In any case, I wouldn't expect the sub-versions to make any difference. They should be backward compatible with no ActiveX / COM interface changes (except perhaps additional methods or properties that may not have been present in the earlier version).