ViKing Antispam Программа для удаления спама из групп. Программа доступна в двух вариантах – версии Lite и Pro. Lite версия полностью бесплатна, позволяет скачать все сообщения в группе и отображает их в удобной форме. После этого можно быстро выделить ненужные сообщения и удалить их одним щелчком мыши. Pro версия обладает спам-фильтрами и способна работать в автоматическом режиме. ____ Характеристики программы: Интуитивно понятный интерфейс Загрузка всех сообщений в группе из тем и со стены единым списком Возможность сортировки и удаления сообщений одним нажатием клавиши Разнообразные фильтры для автоматического детектирования спам-сообщений (только в версии pro). Планировщик заданий для автоматической загрузки и удаления сообщений из групп через заданные промежутки времени (только в версии pro) Для корректной работы необходим .NET Framework 3.5 SP1 Цена версии Pro: 450р. Программа привязывается к железу, смена привязки - 50р. ICQ: 884122 (понедельник – суббота с 18.00 до 22.00) Skype: viking-studio (понедельник – суббота с 18.00 до 22.00) E-Mail: [email protected] Сайт программы: http://viking-studio.com Скачать версию Lite и купить Pro в автоматическом режиме можно на нашем сайте. Тема с отзывами ТУТ
Платную доделаем примерно через неделю. Альбомы будут позже, в них сложнее спам определять, и нужно будет интерфейс проги к картинкам приспособить.
Code: <System.Windows.Markup.XamlParseException> <Message>Не удается преобразовать значение в атрибуте "Property" в объект типа "System.Windows.DependencyProperty". Ошибка в объекте "System.Windows.Setter" из файла разметки "Antispam;component/mainwindow.xaml".</Message> <StackTrace> <Frame>в System.Windows.Markup.XamlParseException.ThrowException(String message, Exception innerException, Int32 lineNumber, Int32 linePosition, Uri baseUri, XamlObjectIds currentXamlObjectIds, XamlObjectIds contextXamlObjectIds, Type objectType)</Frame> <Frame>в System.Windows.Markup.XamlParseException.ThrowException(ParserContext parserContext, Int32 lineNumber, Int32 linePosition, String message, Exception innerException)</Frame> <Frame>в System.Windows.Markup.BamlRecordReader.ThrowException(SRID id, String parameter1, String parameter2)</Frame> <Frame>в System.Windows.Markup.BamlRecordReader.GetCustomDependencyPropertyValue(BamlPropertyCustomRecord bamlPropertyRecord, Type& declaringType)</Frame> <Frame>в System.Windows.Markup.BamlRecordReader.GetCustomDependencyPropertyValue(BamlPropertyCustomRecord bamlPropertyRecord)</Frame> <Frame>в System.Windows.Markup.StyleBamlRecordReader.ReadPropertyCustomRecord(BamlPropertyCustomRecord bamlPropertyRecord)</Frame> <Frame>в System.Windows.Markup.BamlRecordReader.ReadRecord(BamlRecord bamlRecord)</Frame> <Frame>в System.Windows.Markup.StyleBamlRecordReader.ReadRecord(BamlRecord bamlRecord)</Frame> <Frame>в System.Windows.Markup.BamlRecordReader.Read(Boolean singleRecord)</Frame> <Frame>в System.Windows.Markup.StyleTreeBuilderBamlTranslator.ParseFragment()</Frame> <Frame>в System.Windows.Markup.TreeBuilder.Parse()</Frame> <Frame>в System.Windows.Markup.XamlStyleSerializer.ConvertBamlToObject(BamlRecordReader reader, BamlRecord bamlRecord, ParserContext context)</Frame> <Frame>в System.Windows.Markup.BamlRecordReader.ReadElementStartRecord(BamlElementStartRecord bamlElementRecord)</Frame> <Frame>в System.Windows.Markup.BamlRecordReader.ReadRecord(BamlRecord bamlRecord)</Frame> <Frame>в System.Windows.Markup.BamlRecordReader.ReadElement(Int64 startPosition, XamlObjectIds contextXamlObjectIds, Object dictionaryKey)</Frame> <Frame>в System.Windows.ResourceDictionary.CreateObject(Int32 valuePosition, Object key)</Frame> <Frame>в System.Windows.ResourceDictionary.RealizeDeferContent(Object key, Object& value, Boolean& canCache)</Frame> <Frame>в System.Windows.ResourceDictionary.GetValueWithoutLock(Object key, Boolean& canCache)</Frame> <Frame>в System.Windows.ResourceDictionary.GetValue(Object key, Boolean& canCache)</Frame> <Frame>в System.Windows.ResourceDictionary.FetchResource(Object resourceKey, Boolean allowDeferredResourceReference, Boolean mustReturnDeferredResourceReference, Boolean& canCache)</Frame> <Frame>в System.Windows.FrameworkElement.FindResourceOnSelf(Object resourceKey, Boolean allowDeferredResourceReference, Boolean mustReturnDeferredResourceReference)</Frame> <Frame>в System.Windows.Markup.BamlRecordReader.FindResourceInParserStack(Object resourceNameObject, Boolean allowDeferredResourceReference, Boolean mustReturnDeferredResourceReference)</Frame> <Frame>в System.Windows.Markup.BamlRecordReader.FindResourceInParentChain(Object resourceNameObject, Boolean allowDeferredResourceReference, Boolean mustReturnDeferredResourceReference)</Frame> <Frame>в System.Windows.StaticResourceExtension.ProvideValueInternal(IBamlReader bamlReader, Object targetObject, Object targetProperty, Boolean allowDeferredReference)</Frame> <Frame>в System.Windows.StaticResourceExtension.ProvideValue(IServiceProvider serviceProvider)</Frame> <Frame>в System.Windows.Markup.BamlRecordReader.ProvideValueFromMarkupExtension(MarkupExtension markupExtension, Object obj, Object member)</Frame> <Frame>в System.Windows.Markup.BamlRecordReader.BaseReadOptimizedMarkupExtension(Object element, Int16 attributeId, PropertyDefinition propertyDefinition, Object value)</Frame> <Frame>в System.Windows.Markup.BamlRecordReader.ReadPropertyWithExtensionRecord(BamlPropertyWithExtensionRecord bamlPropertyRecord)</Frame> <Frame>в System.Windows.Markup.BamlRecordReader.ReadRecord(BamlRecord bamlRecord)</Frame> <Frame>в System.Windows.Markup.BamlRecordReader.Read(Boolean singleRecord)</Frame> <Frame>в System.Windows.Markup.TreeBuilderBamlTranslator.ParseFragment()</Frame> <Frame>в System.Windows.Markup.TreeBuilder.Parse()</Frame> <Frame>в System.Windows.Markup.XamlReader.LoadBaml(Stream stream, ParserContext parserContext, Object parent, Boolean closeStream)</Frame> <Frame>в System.Windows.Application.LoadComponent(Object component, Uri resourceLocator)</Frame> <Frame>в Antispam.MainWindow.InitializeComponent()</Frame> <Frame>в Antispam.MainWindow..ctor()</Frame> <Frame>в Antispam.App.AppStartup(Object , StartupEventArgs )</Frame> <Frame>в System.Windows.Application.OnStartup(StartupEventArgs e)</Frame> <Frame>в System.Windows.Application.<.ctor>b__0(Object unused)</Frame> <Frame>в System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)</Frame> <Frame>в System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)</Frame> </StackTrace> <Data> <System.Object>null</System.Object> </Data> </System.Windows.Markup.XamlParseException>
FaS, в какой момент ошибка возникает? После нее программа работает? nexter аналогичный вопрос, после этой ошибки программа работает? Попробуйте поставить .NET 3.5 SP1 P.S. В отличие от обычного C# эти ошибки в xaml невозможно нормально анализировать - он не пишет где ошибка.
обновил фреймворк. когда запуская программу, появляется вот такое окно. поставив галочку "подробно" получаю вот такой текст нажимаю ок и после этого программа закрывается. upd. Все, заработала )
- В PRO версии реализуйте возможность чистить одновременно несколько групп. И что бы софт не только удалял спам но и помечал сообщения как "спам"=) - Индивидуально настраиваемые фильтры - Сделайте демократическую цену.. так как софт явно не коммерческого характера и преследует благие намерения и чем больше разойдется копий тем чище станет "вконтакте")) хорошо если бы лайт имел возможность работать с одной группой а про версия с не ограниченным количеством! - Поиск спама по альбомам и видео - Возможность удаление спамящего пользователя в blacklist - Запоминание логина админа (сейчас все нужно каждый раз вводить)
Я сначала так и сделал, но некоторым юзерам оказалось непонятно. Они решили что в той строке теперь можно редактировать логин админа уже добавленной группы
Будем делать после выхода PRO Будем делать после выхода PRO Так и будет Цена будет примерно 500р. меньше мне кажется нет смысла делать. Не представляю пока что как определять фотка спам или нет. После выхода про версии займемся добавлением ручного редактирования альбомов. С видео все несколько сложнее поэтому не знаю будет или нет Будем делать после выхода PRO про это написал постом выше
Не, не в том суть.. Достаточно того, что бы где-то на скрытой вкладке можно было просматривать последние загруженные фото и видео и самому решать что с ними делать.. Я имел в виду поиск спам-коментариев к видео и фото!! И еще одно, это перепривязка.. В случае смены пк не приходилось выкладывать за нее столько же как и за перепривязку "викинга"))) Зделайте на это соответствующую цену