Отправляет email-рассылки с помощью сервиса Sendsay

Программирование. Форум !!!

За 2005-12-11

Re: Кодировки

Здравствуйте, -=.

Вы писали 10 декабря 2005 г., 16:33:33:

BT> Привет всем,

BT> Пожалуйста объясните что такое Кодировки, зачем они нужны и как
BT> набираемый текст в моей программе мог бы отображаться в Кодировки
BT> отличной от Windows-1251 или KOI8-R ?

Кодировка это порядок нумерации символов алфавита. Номера 0-127
фиксированы и соответствуют ASCII (как в ДОС). Далее идут национальные
кодировки. При этом в других кодировках каждый будет видеть символы
этой кодировки, если она установлена на машине или символы "?" если
нет.

   2005-12-11 18:23:01 (#488164)

Re[2]: либо GetFullPathName тормозит, либо я :)

Hello Victor,

Saturday, December 10, 2005, 11:28:03 PM, you wrote:

VVV> Здравствуйте !

>> GetFullPathName упорно возвращает имя приложения, из
>> которого оно запускается.

>> if (Process32First(hSnap, &proc))
>> {
>> if (proc.th32ProcessID==pid){
>> GetFullPathName(proc.szExeFile, 512,
>> str.GetBuffer(512),
>> 0);
>> CloseHandle(hSnap);
>> return str;
>> }

VVV> А чему, кстати, pid равен ?
VVV> Тут, похоже, просто то что первым попадается, то и возвращается.
VVV> Первым попадается твой процесс.

>> while (Process32Next(hSnap, &proc))
>> {
>> if (proc.th32ProcessID==pid){
>> GetFullPathName(proc.szExeFile, 512, str.GetBuffer(512),
>> 0);
>> CloseHandle(hSnap);
>> return str;
>> }
>> //m_List1.AddString(proc.szExeFile);
>> }
>> }

VVV> Просто закомментируй CloseHandle(hSnap); и return str в своем примере,
VVV> и посмотри под отладчиком что будет.

Если бы все так просто было :( Мне нужно по хэндлу окна узнать полное имя
приложения,
которому принадлежит это окно. И в первый раз я узнаю полное имя своего приложения.
Все
правильно выводится. Затем даю хэндлы других окон. По отладчику смотрел,
что находится
правильный экзешник, например KAV.exe, но GetFullPathName говорит, что это
приложение
находится там же, что и моя прога. Для моей программульки большая честь, что
Касперский
рядом с ней :), но это не так на самом деле.

VVV> А пример перечисления процессов, модулей, и.т.д. можно найти тут:

VVV> http://msdn.microsoft.com/library/en-us/perfmon/base/taking_a_snapshot_and_v
VVV> iewing_processes.asp

Хороший пример - он решил мою проблему, потому что в MODULEENTRY32.szExePath
сразу
содержится то, что мне нужно. Поэтому вопрос с GetFullPathName остается
чисто
риторическим.

   2005-12-11 14:06:10 (#488076)