From d7514af334022b7eee5b8f3b181b1fda8e218016 Mon Sep 17 00:00:00 2001 From: Andre Hartmann Date: Sun, 25 Mar 2018 10:59:43 +0200 Subject: PeakCAN: Add logging info about used PCAN-API during DLL loading Can be useful to debug problems caused by old PCANBasic-DLLs. Change-Id: I096611e2d7b7f36085a9784b91352245e161bf8e Reviewed-by: Alex Blasche --- src/plugins/canbus/peakcan/peakcanbackend.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'src/plugins/canbus/peakcan') diff --git a/src/plugins/canbus/peakcan/peakcanbackend.cpp b/src/plugins/canbus/peakcan/peakcanbackend.cpp index 85d2ebc..8154157 100644 --- a/src/plugins/canbus/peakcan/peakcanbackend.cpp +++ b/src/plugins/canbus/peakcan/peakcanbackend.cpp @@ -64,7 +64,7 @@ Q_GLOBAL_STATIC(QLibrary, pcanLibrary) bool PeakCanBackend::canCreate(QString *errorReason) { #ifdef LINK_LIBPCANBASIC - return true; + Q_UNUSED(errorReason); #else static bool symbolsResolved = resolvePeakCanSymbols(pcanLibrary()); if (Q_UNLIKELY(!symbolsResolved)) { @@ -73,8 +73,17 @@ bool PeakCanBackend::canCreate(QString *errorReason) *errorReason = pcanLibrary()->errorString(); return false; } - return true; #endif + + char apiVersion[32]; + TPCANStatus stat = CAN_GetValue(PCAN_NONEBUS, PCAN_API_VERSION, apiVersion, sizeof(apiVersion)); + if (Q_UNLIKELY(stat != PCAN_ERROR_OK)) { + qCWarning(QT_CANBUS_PLUGINS_PEAKCAN, "Cannot resolve PCAN-API version!"); + return false; + } + qCInfo(QT_CANBUS_PLUGINS_PEAKCAN, "Using PCAN-API version: %s", apiVersion); + + return true; } struct PcanChannel{ -- cgit v1.2.3