Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
artik009
0 / 0 / 0
Регистрация: 13.07.2014
Сообщений: 31
#1

Нужно отредактировать код поиска в некоторых папках. Добавить функцию поиска в архивах - C++

14.07.2014, 10:25. Просмотров 252. Ответов 1
Метки нет (Все метки)

Нашёл одну программку, работает отлично, но вот не идёт поиск в таких местах как С:\users или C:\Windows
Как это исправить?(желательно напишите код, а то я практически 0 в Си)
И ещё желательно сделать чтобы вело поиск в архивах также

Visual Studio 2010

Вот код:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <locale.h>
 
#define MAX_SIZE 512
 
#define __DEBUG
 
void show_files(const wchar_t * _path, const wchar_t * mask, char Recursive )
{
    WIN32_FIND_DATA data;
    HANDLE h;
    wchar_t temp[MAX_SIZE], nextpath[MAX_SIZE], path[MAX_SIZE];
    int n, len;
 
    wcscpy(path, _path);
 
    len = wcslen(_path);
 
    if ( _path[ len - 1] != '\\' )
    {
        path[len] = '\\';
        path[len + 1] = '\0';
    }
 
    wcscpy(temp, path);
    wcscat(temp, mask);
 
    h = FindFirstFile
    (
      temp,
      &data
    );
 
    
    if ( h != INVALID_HANDLE_VALUE )
    {
        
        do 
        {
            wprintf(L"%s%s\n", path, data.cFileName);
        }
        while ( n = FindNextFile(h, &data ) );
    }
    
 
    FindClose(h);
 
    if ( Recursive )
    {
        wcscpy(temp, path);
        wcscat(temp, L"*.*");
 
        h = FindFirstFile
        (
            temp,
            &data
        );
 
        if ( h != INVALID_HANDLE_VALUE )
        {
            do 
            {
                if ( 
                    data.dwFileAttributes == FILE_ATTRIBUTE_DIRECTORY 
                    && wcscmp(data.cFileName, L".") != 0 
                    && wcscmp(data.cFileName, L"..") != 0 
                )
                {
                    wcscpy(nextpath, path);
                    wcscat(nextpath, data.cFileName);
                    show_files( nextpath, mask, 1 );
                }
            }
            while ( n = FindNextFile(h, &data ) );
        }
 
    }
 
    FindClose(h);
}
 
int main(int argc, char ** argv)
{
    
    wchar_t path[MAX_SIZE], mask[MAX_SIZE];
    setlocale(LC_CTYPE, "");
 
    wprintf(L"Введите начальную директорию\n");
    fgetws(path, MAX_SIZE, stdin);
    path[ wcslen(path) - 1] = 0;
 
    wcscpy(mask, L"Titanium.*");
 
    show_files(path, mask, 1);
 
    puts("\nDone.");
    system("pause");
 
    return 0;
}
Добавлено через 7 часов 43 минуты
update
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.07.2014, 10:25     Нужно отредактировать код поиска в некоторых папках. Добавить функцию поиска в архивах
Посмотрите здесь:

Нужно написать своеобразную функцию поиска строк в кавычках - C++
Мне нужна функция которая в текстовом файле примерно со следующим содержанием &quot;string1&quot; sometext &quot;string2&quot; искала строки заключённые в...

Нужно исправить код поиска смежных одинаковых элементов списка - C++
Задача:Пусть L обозначает кольцевой двунаправленный список с включенным заглавным звеном. Определить, есть ли в списке L хотя бы одно...

Поиска в записанном ранее файле по фамилии или по группе с выбором параметра поиска - C++
Нужно написать код для поиска в записанном ранее файле по фамилии или по группе с выбором параметра поиска. Помогите пожайлуйста, потому...

Организация поиска в списке. Исправить ошибку в методе поиска - C++
Сколько бы у меня желания не было, найти ее не могу. Может кто помочь? Заранее спасибо... #include &quot;stdafx.h&quot; #include &lt;iostream&gt; ...

Создать функцию, сортирующую данную структуру, и функцию для поиска нужного значения в структуре - C++
задание: Создать массив, элементами которого являются структуры – список журналов и газет (название, тираж, фамилия главреда, год...

Нужно отредактировать код - C++
Прошу помощи,очень нужно сделать сегодня) Смысл задачи: вычисление выражения в постфиксной форме с помощью стека. Сам алгоритм действий...

нужно отредактировать код, где то ошибка - C++
Задание Дана целочисленная квадратная матрица. Определить: 1. сумму элементов в тех столбцах, которые не содержат отрицательных...

подправить функцию поиска - C++
в структуре есть массив интов. нужно подправить функцию поиска, чтобы она выводила на печать соответствующее имя, группу и массив оценок,...

Добавить методы поиска медианного элемента в матрице и векторе - C++
Здравствуйте есть программа #include &quot;stdafx.h&quot; #include &lt;stdlib.h&gt; #include &lt;iostream&gt; #include &lt;math.h&gt; #include &lt;time.h&gt; ...

вид поиска, метод поиска - C++
Написать программу, реализующую один из алгоритмов программного поиска данных в информационном массиве, расположенном в оперативной памяти...

Написать функцию рекурсивного бинарного поиска - C++
#include &lt;iostream&gt; #include &lt;ctime&gt; using namespace std; void input(int Arr,int r); void output(int Arr,int r); int...

Упростить функцию поиска минимального листа - C++
#include&lt;iostream&gt; using namespace std; struct Tree { float data; Tree *left; Tree *right; }; Tree...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
5264 / 4584 / 1537
Регистрация: 14.04.2014
Сообщений: 18,213
14.07.2014, 13:39     Нужно отредактировать код поиска в некоторых папках. Добавить функцию поиска в архивах #2
Может у тебя просто прав нет на доступ в эти папки? С учётной записью Администратора запускать пробовал?
Чтобы работал поиск в архивах двумя строчками не обойдёшься, надо подключать библиотеки для работы с архивами.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru