ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

BrutalSynonym
  #101  
Старый 04.05.2010, 20:34
Аватар для Травников
Травников
Новичок
Регистрация: 17.02.2010
Сообщений: 6
Провел на форуме:
51827

Репутация: 2
Arrow BrutalSynonym

BrutalSynonym

Простенькая программа синонимайзер.
Заменяет слова в тексте на их синонимы,если таковые находятся в словаре (прилагается).
В словаре записи вида: слово синоним1 синоним2 ... синонимN
Случайным образом выбирает по одному синониму к каждому слову.



Вставляете текст в верхнее текстовое поле
Нажимаете кнопку "Generate"
Получаете текст в нижнем текстовом поле

Качество замен зависит от словаря.
Словарь можно дополнять и изменять (к примеру использовать английский словарь синонимов), но файл с синонимами должен иметь название "synonym.txt"



Последний раз редактировалось Травников; 08.05.2010 в 16:11..
 
Ответить с цитированием

  #102  
Старый 10.05.2010, 13:59
Аватар для vkhacker
vkhacker
Новичок
Регистрация: 12.12.2009
Сообщений: 1
Провел на форуме:
24662

Репутация: 0
По умолчанию

DateChanger v0.1

Программа для изменения ДАТЫ СОЗДАНИЯ большого количества файлов. Позволяет изменять дату создания файлов в каталоге по указанной маске. Возможна лишь установка действительной даты, т.е. даты, которая уже наступила. Также программа изменяет дату EXIF и удаляет содержание других параметров EXIF у файлов типа JPEG и JPG (небольшая потеря качества).




Скачать DateChanger v0.1
 
Ответить с цитированием

  #103  
Старый 11.05.2010, 06:13
Аватар для greki_hoy
greki_hoy
Познающий
Регистрация: 04.03.2010
Сообщений: 32
Провел на форуме:
32525

Репутация: 23
По умолчанию

не то что бы полезная программа скорее сырье для изучения регулярных выражений
тем кто хочет поигратся с регулярными выражениями в ANSI С для компияции надо добавить библиотеку импорта glib.lib скачать версию для венды ну и поставить флаг компилировать как Си код без плюсов
пользоватся просто вводим регулярное выражение диск на котором искать файлы
перебирает все файлы на диске мапит и скармливает их глибовскому регекспу и выводит файлы
в которых найдено совпадение например найти файлы в которых есть мыльники [A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4} или файлы с адресами проксей [0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}:[0-9]{1,4} да или просто найти в каких файлах хранится твой пароль gj#@$hjkhkjh кому интересно велком http://www.regular-expressions.info/ работает довольно быстро так как файл мапится и тут же идет на парсинг в GRegex вообщем кто хочет изучить регекспы и пользоватся ими в ANSI C зе бест
да и к тому же часто помниш слово а найти файл не можеш виндовый поиск иногда в упор не находит строку в файле хотя она там есть это только у меня так ?

кому интересно зачем g_regex_match (regex, string, 0, &match_info); в SEH фрейм включено скажу дело в том чтоб не испортить файл он открывается с атрибутом PAGE_READONLY но не все файлы заканчиваются '\0' поэтому на 165 тыс файлов где то 18 нарушений доступа на эти случаи можно прикрутить когда поймали исключение
загрузить файл полность в память завершить его '\0' вручную и отдать на парсинг
это медленно поэтому я предпочел ловить исключения а когда поймал можно для него индивидуально и выделить память идеи насчет того что сделать защиту PAGE_READWRITE дописать '\0' и парсить не идут так как в момень парсинга могут прибить прогу файл останетя испорченным ну это так мысли может и можно еще как то сделать

Код:
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <glib.h>


typedef void (*LPSEARCHFUNC)(LPCTSTR lpszFileName);
BOOL SearchFiles(
        LPCTSTR lpszFileName,                
        LPSEARCHFUNC lpSearchFunc,           
        BOOL bInnerFolders );     
                                            

char file[MAX_PATH];

BOOL SearchFiles(LPCTSTR lpszFileName, LPSEARCHFUNC lpSearchFunc, BOOL bInnerFolders)
{
    LPTSTR part;
   char tmp[MAX_PATH]; // временный массив
    char name[MAX_PATH];

   HANDLE hSearch = NULL;
   WIN32_FIND_DATA wfd;
    memset(&wfd, 0, sizeof(WIN32_FIND_DATA));

    // сначало поиск внутри вложенных папках ...
    if(bInnerFolders)
    {
        if(GetFullPathName(lpszFileName, MAX_PATH, tmp, &part) == 0) return FALSE;
        strcpy(name, part);
        strcpy(part, "*.*");

        // если папки существуют, то делаем поиск
        wfd.dwFileAttributes = FILE_ATTRIBUTE_DIRECTORY;
        if (!((hSearch = FindFirstFile(tmp, &wfd)) == INVALID_HANDLE_VALUE))
        do
        {
            // в каждой папке есть две папки с именами "." и ".."
            // и эти папки мы не трогаем

            // пропускаем папки "." и ".."
            if (!strncmp(wfd.cFileName, ".", 1) || !strncmp(wfd.cFileName, "..", 2))            
           continue;
       
            if (wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) // если мы нашли папку
            {
                char next[MAX_PATH];
                if(GetFullPathName(lpszFileName, MAX_PATH, next, &part) == 0) return FALSE;
                strcpy(part, wfd.cFileName);
                strcat(next, "\\");
                strcat(next, name);

                SearchFiles(next, lpSearchFunc, TRUE);
            }
        }
        while (FindNextFile(hSearch, &wfd)); // ищем следующий файл

        FindClose (hSearch); // заканчиваем поиск
    }

   if ((hSearch = FindFirstFile(lpszFileName, &wfd)) == INVALID_HANDLE_VALUE) 
       return TRUE; // в противном случае выходим
   do
   if (!(wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)) // если мы нашли файл
   {
        if(GetFullPathName(lpszFileName, MAX_PATH, file, &part) == 0) return FALSE;
        strcpy(part, wfd.cFileName);

        lpSearchFunc(file);
   }
   while (FindNextFile(hSearch, &wfd)); // ищем следующий файл
   FindClose (hSearch); // заканчиваем поиск

    return TRUE;
}

int yes;
char entries;
int entriesf;
int failopen;
int all_files;
int except;

static void
print_ip(const gchar *string);

void __cdecl show_info()
{
	int len, ret;
	char *cv, *pfmt;
	pfmt = strrchr(file, '\\');
	if (!pfmt)
		__asm int 3;
	len = _scprintf("f %d s %d a %d x %d %s", failopen, yes, all_files, except, pfmt);
	if (-1 == len)
		__asm int 3;
	cv = malloc(len + 1);
	if (!cv)
		__asm int 3;
	ret = sprintf(cv, "f %d s %d a %d x %d %s", failopen, yes, all_files, except, pfmt);
	if (-1 == ret)
		__asm int 3;
	ret = SetConsoleTitle(cv);
	if (!ret)
		__asm int 3;
	free(cv);
}

void DoSomething(LPCTSTR name)
{
	HANDLE hFile = INVALID_HANDLE_VALUE, hMap = NULL;
	DWORD dwFileSize;
	CHAR *base = NULL;
	show_info(++all_files);
	__try
	{
		hFile = CreateFile(name, GENERIC_READ,
			FILE_SHARE_READ, NULL, OPEN_EXISTING,
			FILE_ATTRIBUTE_NORMAL, NULL);
		if (hFile == INVALID_HANDLE_VALUE)
		{
			show_info(++failopen);
			__leave;
		}
		dwFileSize = GetFileSize(hFile, NULL);
		if (dwFileSize == INVALID_FILE_SIZE)
			__leave;
		hMap = CreateFileMapping(hFile, NULL, PAGE_READONLY, 0, dwFileSize, NULL);
	    if (!hMap)
			__leave;
		base = MapViewOfFile(hMap, FILE_MAP_READ, 0, 0, dwFileSize);
	    if (!base)
			__leave;
		
		print_ip(base);
	}
	__finally
	{
		if (base)
			UnmapViewOfFile(base);
		if (hMap)
			CloseHandle(hMap);
		if (hFile != INVALID_HANDLE_VALUE)
			CloseHandle(hFile);
	}
	if (entriesf && entries == 'y')
	{
		puts(name);
		entriesf ^= entriesf;
	}
	return;
}

#define _124KB 126976
static char regexp[_124KB];

static void
print_ip(const gchar *string)
{
  GRegex *regex;
  GMatchInfo *match_info;
     
  regex = g_regex_new (regexp, 0, 0, NULL);
  __try
    {
	  g_regex_match (regex, string, 0, &match_info);
    }
  __except(EXCEPTION_EXECUTE_HANDLER)
    {
	  show_info(++except);
	  g_regex_unref(regex);
	  return;
    }
  while (g_match_info_matches (match_info))
    {
      gchar *word = g_match_info_fetch (match_info, 0);
      g_print ("%s\n", word);
      g_free (word);
      g_match_info_next (match_info, NULL);
	  entriesf = 1;
	  show_info(++yes);
    }
  g_match_info_free (match_info);
  g_regex_unref (regex);
}

int main(void)
{
	printf("echo entries (y/n) -> ");
	scanf("%c", &entries);
	fflush(stdin);
	printf("enter regexp -> ");
	gets(regexp);
	SearchFiles("C:\\*.*", DoSomething, TRUE);
}
 
Ответить с цитированием

  #104  
Старый 31.05.2010, 17:44
Аватар для <Cyber-punk>
<Cyber-punk>
Участник форума
Регистрация: 01.10.2009
Сообщений: 105
Провел на форуме:
559542

Репутация: 94
Отправить сообщение для <Cyber-punk> с помощью ICQ
По умолчанию

Написал маленькую программку - отладчик VBS.
Версия пока бетта. Язык - ASM.

Скрин:



Скачать:

http://depositfiles.com/files/atf1irpqh

P.S. Если что не работает пишите.
З.Ы.Ы. http://www.virustotal.com/ru/analisis/db14d0f1d6b70286ed03590f02b07ff22cb51106288b95c3ce 66a082c5c8c8d0-1275307631

Последний раз редактировалось <Cyber-punk>; 31.05.2010 в 17:47..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Хакер и закон! SladerNon Болталка 17 12.11.2009 09:42
Обзор бесплатных Cms em00s7 PHP, PERL, MySQL, JavaScript 16 03.07.2009 13:13
О законе. _-[A.M.D]HiM@S-_ Статьи 28 01.11.2007 12:25
Программы для работы с железом. Часть I – настройка видеокарт _GaLs_ Аппаратное обеспечение 2 20.12.2006 01:18
Программы для работы с железом. Часть 2 – материнские платы _GaLs_ Аппаратное обеспечение 0 19.11.2006 12:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ