Я начинающий, подскажите как...(Все вопросы начинающих - постить только здесь!!!)
Автору:если надо,могу скинуть часть книги "Самоучитель по системным функциям" Финогенова,там есть описание этой системы.Если есть интернет,можно самому скачать
отношения к файловой системе не имеет. Это физическая структура диска, не логическая.
все зависит от того, что автор понимает под "нестандартным" форматированием - из заданного вопроса лично мне это не понятно.
вставляем дискету с нашей программой в дисковод, и компьютер грузится с неё и выводит на экран нам Hello world если нужно могу скинуть, но там работа с диском описана на асемблере.
Как мне видится - это тот же вариант форматирования дискет с нестандартным количеством секторов на дорожку и прочее - который использовался для защиты программ еще во времена DOS.
я в этом не уверен, на сколько память мне не изменяет после проверки поста и передачи управления IPL считывается первые 80 байт с нулевого цилиндра нулевой головки и первой дорожки :o
Пожалуйста обьъясните этот процесс на языке ближе к преподаватльскому студенческому, по предмету (архитектура эвм), ну чтобы понять что такое указатель окончательно. :)
Нужно отсортировать двумерный массив и переставить k и j строки
Пожалуйста обьъясните этот процесс на языке ближе к преподаватльскому студенческому, по предмету (архитектура эвм), ну чтобы понять что такое указатель окончательно. :)
Указатель - переменная, содержащая своим значением адрес другой переменной. C точки зрения ассемблера, если мы прибавим к указателю единицу, мы заставим его указывать на следующий байт памяти. С точки зрения C/C++, если мы прибавим к указателю единицу, мы заставим его указывать на объект в памяти, следующий за указываемым. Таким образом, прибавление единицы к указателю в С/C++ будет работать по разному - в зависимости от того, какой объект мы адресуем.
ЗЫ Книги читай
спасибо за объяснения именно это я и хотел узнать, нипонятно было толи я вообще неимею представления что такое компьютер, толи в си уже зарание продумали, как указатели ведут себя при применении к ним различных операторов :)
Абсолютно верно. Если можно - пример реализации нечто подобного на любом языке. И главное, намекните как это реализовать с использованием MS Visual Studio в WinXP.
C++
имеются два RichTextBox, один пустой, в другом, допустим, содержит "НАПример"
во второй нужно получить "например"
пишу
RichTextBox2->Lines[0] = RichTextBox1->Lines[0]->ToLower()
Не работает. Никаких сообщений об ошибках, ничего.
При этом MessageBox::Show(RichTextBox1->Lines[0]->ToLower()) работает
С чем это может быть связано и как еще можно перевести текст из RichTextBox1 в RichTextBox2 в нижний регистр?
Есть ли такие технологии для C#? Как называются, даже не знаю в какую сторону копать...
Можно ли в C# у потомка изменить видимость родительских свойств, с public на private?
Т.е. есть class MyControl : UserControl и мне нужно сделать недоступным некоторые события и/или свойства UserControl. Возможно ли это в принципе?
Кто-нибудь знает как aspnet_isapi.dll загружает CLR для выполнения .net кода или где про это можно почитать, т. е. как можно сделать самому программу которая загружает CLR и выполняет код .net?
Можно ли в C# у потомка изменить видимость родительских свойств, с public на private?
нет. видимость потомка может быть только расширена
Есть ли такие технологии для C#? Как называются, даже не знаю в какую сторону копать...
Parallel Extensions.
[quote=Maximillian_Cavalera]
как можно сделать самому программу которая загружает CLR и выполняет код .net?
[/quote]Это называется хостинг CLR. Тыц, тыц.
Но вообще-то есть и более простые средства автоматизации приложения на нативном C++, например Lua.
HANDLE h;
WIN32_FIND_DATA d;
unsigned long fileCount=0;//Количество файлов.
/*Считаем указаную директорию и вложеные папки.*/
if (h=FindFirstFile(String(dir+"\\*").c_str(), &d)) {
do{
if (String(d.cFileName) != "." && String(d.cFileName) != "..") {
if (d.nFileSizeLow==0) {//Если вложеная папка.
/*Вызываем функую еще раз и возвращенное количество
прибавляем к общему счетчику*/
fileCount += addition(String(dir+"\\"+d.cFileName));
}else {//Если файл.
fileCount++;//Считаем его.
}
}
}while(FindNextFile(h, &d));
}
return fileCount;//Результат.
}
Функция считает количество файлов в указанной директории и в ее подпапках.
P.S.
Я понимаю что рекурсия, но должен же быть выход. Функция должна после себя память почистить иначе никак. Сутки, двое и памяти не будет хватать.
Уровень вложенности не может быть большим,ибо Max_Path=260…если не Unicode,конечно.И всё равно не будет таких мощных запросов на память,ибо функция ж когда-то перестанет вызываться(т.е. пойдёт возврат по дереву папок вверх),а уж там C позаботится об освобождении памяти
Вот мой пример(на асме,и немного другая задача была–он искал и выводил все папки).Как можно убедиться,память там не особо много поедается:)
Функция считает количество файлов в указанной директории и в ее подпапках.
Используйте FindClose() для освобождения памяти выделенной в FindFirstFile()
Это, как вам уже сказали, ахтунг! У этой структуры есть поле Attributes - его и используйте для проверки на каталог.
А какие значения у Attributes ?
А какие значения у Attributes ?
вам обязательно нужно напомнить о том существует поиск по форуму и справке? Или вы сами об этом вспомните.
что за "КриптоПро CSP"?..я никогда об этом не слышал...расскажите пожалуйста..
а для шифровки существует полно шифраторов, можно просто вставить оттуда код к себе в прогу и оптимизировать потоки...
а для шифровки существует полно шифраторов, можно просто вставить оттуда код к себе в прогу и оптимизировать потоки...
Это криптопровайдер от компании CryptoPro.
Мдааа,слона-то я и не заметил…:(
А вот об этом я не знал.Получается,что проверка dwFileAttributes And File_Attribute_Directory для CD и сетевых папок дадут неверный результат?
Проблема такова, к длл прилагается конфиг файл, который лежит в той же папке что и длл. Однако длл эту загружает другое приложение, в моем случае это ИИС или Апач. Соответственно когда доходит время до загрузки конфига, иис не находит его в папке вместе с сервером иис (так как длл запрашивает его именно по этому адресу). Можно как-то в длл узнать где она лежит и загрузить конфиг файл именно оттуда?
"Можно как-то в длл узнать где она лежит и загрузить конфиг файл именно оттуда?"
это как??..может я конечно чего-то не понимаю, но это по-моему масло-масляное..
когда апач загружает мою длл, текущим каталогом становится каталог апача, где моего конфиг файла и в помине нет. (предлагать поместить мой конфиг в папку с апачем не надо)
мне нужно в моей длл узнать путь к каталогу где эта длл лежит физически... чтобы добраться до конфиг файла
когда апач загружает мою длл, текущим каталогом становится каталог апача, где моего конфиг файла и в помине нет. (предлагать поместить мой конфиг в папку с апачем не надо)
мне нужно в моей длл узнать путь к каталогу где эта длл лежит физически... чтобы добраться до конфиг файла
Одним из параметров DllMain тебе приходит HINSTANCE. Используй его в вызове ф-ции GetModuleFileName, чтобы получить полный путь к твоей DLL.
fopen написал просто для быстрого примера да и C++ мне ближе, но прогать не всегда приходится на том чем хочется. Суть-то одна.
fopen написал просто для быстрого примера да и C++ мне ближе, но прогать не всегда приходится на том чем хочется. Суть-то одна.
Это как это суть одна?
В следующем посте окажется, что ты вообще программируешь на бейсике под ZX Spectrum... А что суть то одна... :)
Смотри в сторону System.Reflection.Assembly.GetExecutingAssembly().
Суть одна, это я про смысл моей проблемы, она не зависит от того как я открываю файл :P
Попробовал заюзать: System.IO.StreamReader config_reader = System.IO.File.OpenText(System.Reflection.Assembly.GetExecutingAssembly().Location + "\\config.conf");
получил сие: Сведения об исключении: System.IO.DirectoryNotFoundException: Не удалось найти часть пути "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\sampleasp\d93aaae0\a4a3537d\assembly\dl3\2c8334b3\00967c00_afc2c901\BusinessLogicLayer.DLL\config.conf".
BusinessLogicLayer.DLL\config.conf это конечно шляпа, но если исправить, легче не станет :) ибо сбока у меня лежит в d:\sampleasp
P.S.А ошибка,видимо,возникает потому,что вы имя DLL не исключили.Попробуйте,может,сработает