Quantex GmbH
DE RU EN EL
Ваш регион: Европа

PassThruStopMsgFilter v4.04 v5.0

Удаление фильтра сообщений

Последнее изменение:

Описание

Эта функция удаляет один из ранее установленных фильтров.

long PassThruStopMsgFilter(unsigned long ChannelID, unsigned long FilterID)

Параметры

Возвращаемые коды ошибок

Код Описание Возможные причины и решения
STATUS_NOERROR Функция выполнена успешно
ERR_DEVICE_NOT_CONNECTED Нет соединения с адаптером
  • Адаптер выключен или вне зоны доступа
  • Решение: проверьте питание адаптера и сетевое подключение
ERR_INVALID_DEVICE_ID Недействительный идентификатор устройства
  • DeviceID не был получен через PassThruOpen или устройство уже закрыто
  • Решение: убедитесь, что PassThruOpen выполнен успешно
ERR_INVALID_CHANNEL_ID Недействительный идентификатор канала
  • ChannelID не был получен через PassThruConnect или канал уже закрыт
  • Решение: убедитесь, что PassThruConnect выполнен успешно
ERR_INVALID_FILTER_ID Недействительный идентификатор фильтра
  • FilterID не был получен через PassThruStartMsgFilter или фильтр уже удалён
  • Решение: используйте FilterID, полученный от PassThruStartMsgFilter
ERR_FAILED Неопределённая ошибка
  • Внутренняя ошибка библиотеки или адаптера
  • Решение: вызовите PassThruGetLastError() для получения описания

Примеры

Пример на C/C++

#include "j2534_lib.hpp"

unsigned long ChannelID; // ID канала
unsigned long FilterID;  // ID фильтра, полученный от PassThruStartMsgFilter
long Ret;

Ret = PassThruStopMsgFilter(ChannelID, FilterID);
if (Ret != STATUS_NOERROR)
{
    // Обработка ошибки
}

Пример на Kotlin (Android)

// channelID и filterID получены ранее
val result = j2534.ptStopMsgFilter(channelID, filterID)
if (result.status == STATUS_NOERROR) {
    // Фильтр успешно удален
    Log.i("J2534", "Фильтр $filterID удален.")
} else {
    // Обработка ошибки
    Log.e("J2534", "Ошибка удаления фильтра: ${result.status}")
}

Пример на Python

from ctypes import *

# channelID и filterID получены ранее
ret = j2534.PassThruStopMsgFilter(channel_id, filter_id)
if ret == 0:  # STATUS_NOERROR
    print(f"Фильтр {filter_id} удалён")
else:
    error = create_string_buffer(256)
    j2534.PassThruGetLastError(error)
    print(f"Ошибка: {error.value.decode()}")

Пример на C#

// channelID и filterID получены ранее
int ret = J2534.PassThruStopMsgFilter(channelId, filterId);
if (ret == 0) // STATUS_NOERROR
{
    Console.WriteLine($"Фильтр {filterId} удалён");
}
else
{
    var error = new StringBuilder(256);
    J2534.PassThruGetLastError(error);
    Console.WriteLine($"Ошибка: {error}");
}