Question:
I started getting the following error today. SMTPQ 9.5.0.47 x64 has been installed and working for the last 3 months. As far as I can tell, nothing has changed on the server which is running Server 2012.
I have tried stopping and restarting the smtpq service and uninstalling and reinstalling. The log files for the smtpq does not indicate any errors.
ChilkatLog:
SendQ:
DllDate: Jun 23 2015
ChilkatVersion: 9.5.0.51
UnlockPrefix: INSURA.CB10617
Username: IV-WEB:ecerts_web
Architecture: Little Endian; 32-bit
Language: ActiveX
VerboseLogging: 0
createEmailForSending:
xSigningAlg: sha1
Auto-generating Message-ID
smtp_from: notifications@---------.com
smtp_recipients: ---------@-----------.com
SmtpHost: smtp.sendgrid.net
SmtpPort: 465
SmtpSsl: 1
StartTLS: 0
Failed to open company key
companyName: Chilkat Software, Inc.
Failed to open company key
companyName: Chilkat Software, Inc.
Failed to open or create Chilkat company registry key
Chilkat smtpQ may not be installed on this computer, or your application may need administrative privileges to access the registry.
(Wed, 19 Aug 2015 10:50:44 -0700) ---- SMTPQ Started ----
(Wed, 19 Aug 2015 10:50:44 -0700) version: 9.5.0.47
(Wed, 19 Aug 2015 10:50:44 -0700) Jan 24 2015
(Wed, 19 Aug 2015 10:50:44 -0700) queueDirectory: C:\ChilkatSmtpQ-9.5.0.47-x64\Q\\queue
(Wed, 19 Aug 2015 10:50:44 -0700) undeliverableDirectory: C:\ChilkatSmtpQ-9.5.0.47-x64\Q\\undeliverable
(Wed, 19 Aug 2015 10:50:44 -0700) sentDirectory: C:\ChilkatSmtpQ-9.5.0.47-x64\Q\\sent
(Wed, 19 Aug 2015 10:50:44 -0700) SaveSent: false
(Wed, 19 Aug 2015 10:50:44 -0700) LogErrorsOnly: false
(Wed, 19 Aug 2015 10:50:44 -0700) MaxThreads: 5
(Wed, 19 Aug 2015 10:50:44 -0700) MaxRetries: 5
My guess is that something deleted the registry keys, or your app doesn't have permission to access the key? You can avoid the registry by calling mailman.SendQ2 instead of SendQ because it allows you to pass the queue directory path in the 2nd argument.
The keys are in HKEY_LOCAL_MACHINE/Software/Chilkat Software, Inc./SmtpQ
I updated the paths using SmtpQConfigure.exe and removed the double \. I am still getting the same error. I have also checked the file permissions for my IIS user and that is set to full access.
RegistryQueryError: The system cannot find the file specified.
ValueName: QueueDir
Chilkat smtpQ may not be installed on this computer, or your application may need administrative privileges to access the registry.
The RegistryQueryError: "The system cannot find the file specified." is the string returned by the Windows OS for the call to the Windows Platform SDK function RegQueryValueExA
See: https://msdn.microsoft.com/en-us/library/windows/desktop/ms724911%28v=vs.85%29.aspx
See this snippet:
Return value
If the function succeeds, the return value is ERROR_SUCCESS.
If the function fails, the return value is a system error code.
If the lpData buffer is too small to receive the data, the function returns ERROR_MORE_DATA.
If the lpValueName registry value does not exist, the function returns ERROR_FILE_NOT_FOUND.
It's a bit confusing because there are no files involved. The RegQueryValueExA function is just using the "file not found" error code to indicate the value queried does not exist.
Given that it seems to exist based on your screen snips, maybe there are trailing spaces in the names causing trouble? Also, maybe the path to these values is not correct?
Here's the full picture:
I am not sure this is the best solution but this is working for now. I again complete removed SmtpQ and deleted the registry entries. This time I installed the 32bit version. This is working. The only difference that I a see is the registry keys are in a different location than the 64bit version.