Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/15: Рейтинг темы: голосов - 15, средняя оценка - 4.67
 Аватар для Serg34
100 / 100 / 33
Регистрация: 20.09.2014
Сообщений: 457
Записей в блоге: 3

Открыть файл в папке AppData\Local

29.11.2016, 23:09. Показов 3236. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток!
Вот мои последние изыскания:
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
#pragma once
 
#include <iostream>
#include <cstdlib>
#include <iomanip>
#include <stdio.h>
#include <tchar.h>
#include <fstream>
#include <Shlobj.h>
 
#include "stdafx.h"
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    TCHAR szPath[MAX_PATH];
    SHGetFolderPath(NULL, CSIDL_LOCAL_APPDATA | CSIDL_FLAG_CREATE, NULL, 0, szPath);
 
    wstring dpath;
    for each (wchar_t p in szPath) dpath += p;
 
    wstring fpath(L"\\Test\\Test.txt");
    wstring fullpath = dpath + fpath;
    
    ifstream fin(fullpath);
    if (!fin)
    {
        cout << "File Test.txt not found\n";
        system("pause");
    }
    int i = 0;
    while (!fin.eof())
        ...
    fin.close();
    ...
}
Путь к системной папке находит, но полный путь не хочет складываться, пробовал самому прописывать путь (wstring dpath(L"C:\...")) путь складывается, но поток файл все-равно не открывает.
Прошу помощи
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.11.2016, 23:09
Ответы с готовыми решениями:

Открыть файл во вложенной папке
Добрый день. К примеру главный программный модуль запускается в каталоге ~/current . Мне нужно получить доступ к файлу находящемуся в...

Не могу открыть файл, размещенный в папке с именем на русском языке
Файл на D:\Решетова_Н\Галкин\Всякое Если помещаю файл непосредственно на D - все работает. Думаю дело в русскоязычных названиях папок.......

Какая связь проекта с файлами в папке AppData\Local\Temp\Temporary ASP.NET Files
Разбираю примеры приложений asp.net mvc4 . И во время выполнения (уже в самом браузере) вылетает ошибка(смотреть картинку) . Я уже долго...

11
 Аватар для John999
230 / 113 / 79
Регистрация: 17.10.2016
Сообщений: 312
29.11.2016, 23:41
Цитата Сообщение от Serg34 Посмотреть сообщение
Путь к системной папке находит,
Так доступа нет вероятно.
0
 Аватар для Serg34
100 / 100 / 33
Регистрация: 20.09.2014
Сообщений: 457
Записей в блоге: 3
29.11.2016, 23:48  [ТС]
John999, Доступ есть. Я этот файл открывал вручную и программно (на C#)
0
 Аватар для John999
230 / 113 / 79
Регистрация: 17.10.2016
Сообщений: 312
29.11.2016, 23:55
Цитата Сообщение от Serg34 Посмотреть сообщение
программно (на C#)
Кстати вспомнил, у программ на C# приоритет выше.
Если открыли программой на C#, не откроете С++ программой.
Придется поднатужиться.
Подробности извините не помню.... Нужно у WinApi- шников
спрашивать.
1
 Аватар для Serg34
100 / 100 / 33
Регистрация: 20.09.2014
Сообщений: 457
Записей в блоге: 3
29.11.2016, 23:57  [ТС]
John999, А почему в строчке
C++
1
wstring fullpath = dpath + fpath;
к переменной fullpath не прибавляется fpath?
0
 Аватар для John999
230 / 113 / 79
Регистрация: 17.10.2016
Сообщений: 312
30.11.2016, 00:03
какая-то загадка
0
 Аватар для iRomul
163 / 104 / 14
Регистрация: 17.10.2012
Сообщений: 488
30.11.2016, 03:10
Кстати, а зачем вы строку инициализируете таким способом?
Цитата Сообщение от Serg34 Посмотреть сообщение
for each (wchar_t p in szPath) dpath += p;
Почему просто не передать массив в конструктор?
C++
1
wstring dpath(szPath);
Какая-то особенность работы функции SHGetFolderPath?
1
 Аватар для Serg34
100 / 100 / 33
Регистрация: 20.09.2014
Сообщений: 457
Записей в блоге: 3
30.11.2016, 07:53  [ТС]
iRomul, С русскими символами был косяк.
Сейчас попробовал - уже нормально получается wstring dpath(szPath) и конкатенация пути проходит нормально и файл открывается. Может и в этой строчке было дело..
Вобщем, как говорится утро вечера мудренее
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
30.11.2016, 09:47
Цитата Сообщение от John999 Посмотреть сообщение
Кстати вспомнил, у программ на C# приоритет выше.
Все процессы равны перед системой, от языка это не зависит.
С какими правами запустишь программу - с такими она и будет работать.
2
 Аватар для John999
230 / 113 / 79
Регистрация: 17.10.2016
Сообщений: 312
30.11.2016, 10:59
Цитата Сообщение от Убежденный Посмотреть сообщение
от языка это не зависит.
Конечно язык здесь не причем.
Извините что неясно выразился. Имел в виду приложения работающие
под управлением CLR.
Цитата Сообщение от Убежденный Посмотреть сообщение
С какими правами запустишь программу - с такими она и будет работать.
И до вашего ответа считал, что в файлах управляемой сборки
есть таинственный атрибут вроде System.Security.AccessControl.Above-Average.
Но пока ничего не нашел
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
30.11.2016, 12:00
Цитата Сообщение от John999 Посмотреть сообщение
Имел в виду приложения работающие под управлением CLR.
И CLR здесь тоже не при чем

Проверка прав при попытке открыть объект - это, по сути, проход по списку пользователей и групп,
заданных в списке контроля доступа объекта и поиск соответствующих SID-ов в токене потока или
процесса, который запрашивает доступ. На Vista и выше также проверяются метки целостности
объекта (Integrity Levels), а на Windows 8 и выше - разрешения для AppContainer.
Про CLR система безопасности Windows "ничего не знает" и если, например, у токена твоего
процесса отсутствует SID нужной группы, то доступ к объекту, который можно открывать только
членам данной группы, твой процесс не получит, независимо от каких-либо атрибутов сборки.
2
 Аватар для John999
230 / 113 / 79
Регистрация: 17.10.2016
Сообщений: 312
30.11.2016, 12:04
Убежденный, спасибо за объяснение.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.11.2016, 12:04
Помогаю со студенческими работами здесь

Вирус расплодился в папке C:\Users\.\AppData\Local\Temp. В диспетчере задач отображается как процессы браузеров
В папке temp несколько гигабайт папок с 11-символьными бессмысленными названий. До конца они не удаляются. Правда в безопасном режиме после...

Путь до папки local (appdata)
Проблема, работаю на Windows 10, использую Environment.GetEnvironmentVariable(&quot;LocalAppData&quot;) + @&quot;\Syspec\fox&quot; У меня всё работает,...

Что за папка \AppData\Local\Temp?
что за папка C:\Users\Name\AppData\Local\Temp ? Добавлено через 20 секунд wind7

Как почистить папку C:\Users\****\AppData\Local\Google\Chrome
Размер папки C:\Users\****\AppData\Local\Google\Chrome достиг 3 гигов, (Application 1гиг User Data 2гига), можно ли эти папки просто...

C:\Users\A4F7~1\AppData\Local\Temp\234429Log.iniis lost
Такое окошко с ошибкой возникает при загрузке системы. Проблема появилась после чистки папки Temp


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru