Перейти к содержанию

Каракули вместо текста .


Рекомендуемые сообщения

Здравствуйте . Столкнулся с проблемой при выводе текста в ListBox .
Вот так текст выводится нормально 
SendMessage(hcom, LB_ADDSTRING, wParam, (LPARAM)(L"string"));
А при попытке вывести массив символов из 260 элементов (cher)
SendMessage(hcom, LB_ADDSTRING, 0, (LPARAM)(cher));
Выводятся каракули ( Внимание на картинку:
frB_Z8W7NJU.jpg
Помогите пожалуйста.

Ссылка на комментарий
Поделиться на другие сайты

afro228offical

3 часа назад, afro228offical сказал:

Либо я инфы мало дал , либо никто c++ не знает ... -_-

Код предоставил бы, помогли бы быстро, а так жди, а SendMessage выдает Return value LB_ERR или LB_ERRSPACE?

Ссылка на комментарий
Поделиться на другие сайты

7 часов назад, 2zolo2 сказал:

afro228offical

Код предоставил бы, помогли бы быстро, а так жди, а SendMessage выдает Return value LB_ERR или LB_ERRSPACE?

Всё , поздняк метаться ) Сам уже сделал...
xYCSGsm1bqk.jpg
Но теперь другой вопрос . Как выводить рядом с именами процессов какой-нибудь текст ?
SendMessage(hcom, LB_ADDSTRING, 0, (LPARAM)(cher));  так выводится имя процесса 
И как рядом выводить L"<<" ?

Ссылка на комментарий
Поделиться на другие сайты

14 часа назад, afro228offical сказал:

Но теперь другой вопрос . Как выводить рядом с именами процессов какой-нибудь текст ?

в момент заполнения списка, после апи которая достает имя, ставишь _wcsicmp на интерес. проц.
потом добавляешь текст через wcscat

  • Плюс 1
Ссылка на комментарий
Поделиться на другие сайты

В 16.05.2016в12:13, gmz сказал:

в момент заполнения списка, после апи которая достает имя, ставишь _wcsicmp на интерес. проц.
потом добавляешь текст через wcscat

Спасибо ) Вот ты реально шаришь )
9J1S93OTW_I.jpg
Пользуясь случаем , задам ещё 1 вопрос . Как DWORD перевести в wchar_t wcs[260]; ?

Ссылка на комментарий
Поделиться на другие сайты

оффтоп

Скрытый текст

afro228offical, на Purebasic легче было бы написать.


Procedure GetPIDbyName()
  entry.PROCESSENTRY32
  entry\dwSize = SizeOf(PROCESSENTRY32);
  
  snapshot = CreateToolhelp32Snapshot_(#TH32CS_SNAPPROCESS, #Null)
  
  If Not snapshot = #INVALID_HANDLE_VALUE
    If Process32First_(snapshot, @entry) = #True
      While Process32Next_(snapshot, @entry) = #True
         AddGadgetItem(0, -1, PeekS(@entry\szExeFile)+Space(5)+Str(entry\th32ProcessID))
      Wend
    EndIf
    CloseHandle_(snapshot)
  EndIf  
EndProcedure

If OpenWindow(0, 0, 0, 300, 40, "Pro")
  ButtonGadget(1, 5,5, 30,30, "OK")
  ComboBoxGadget(0, 40, 10, 250, 20)
  
  Repeat
    Event = WindowEvent() 
    If Event = #PB_Event_Gadget          
      If EventGadget() = 1
        GetPIDbyName()
      EndIf
    EndIf
    
  Until Event = #PB_Event_CloseWindow
EndIf
End

P.S. Каждый человек имеет право, писать на каком хочет языке.

 

Ссылка на комментарий
Поделиться на другие сайты

2 часа назад, 2zolo2 сказал:

оффтоп

  Показать содержимое

afro228offical, на Purebasic легче было бы написать.



Procedure GetPIDbyName()
  entry.PROCESSENTRY32
  entry\dwSize = SizeOf(PROCESSENTRY32);
  
  snapshot = CreateToolhelp32Snapshot_(#TH32CS_SNAPPROCESS, #Null)
  
  If Not snapshot = #INVALID_HANDLE_VALUE
    If Process32First_(snapshot, @entry) = #True
      While Process32Next_(snapshot, @entry) = #True
         AddGadgetItem(0, -1, PeekS(@entry\szExeFile)+Space(5)+Str(entry\th32ProcessID))
      Wend
    EndIf
    CloseHandle_(snapshot)
  EndIf  
EndProcedure

If OpenWindow(0, 0, 0, 300, 40, "Pro")
  ButtonGadget(1, 5,5, 30,30, "OK")
  ComboBoxGadget(0, 40, 10, 250, 20)
  
  Repeat
    Event = WindowEvent() 
    If Event = #PB_Event_Gadget          
      If EventGadget() = 1
        GetPIDbyName()
      EndIf
    EndIf
    
  Until Event = #PB_Event_CloseWindow
EndIf
End

P.S. Каждый человек имеет право, писать на каком хочет языке.

 

На c++ Хочу , он больше нравится )

Ссылка на комментарий
Поделиться на другие сайты

6 часов назад, gmz сказал:

типа swprintf(buffer,L"%d",&buffer); ?

Ну да , чтобы можно было DWORD вывести в listbox
DWORD dv = 10;
SendMessage(hcom, LB_ADDSTRING, wParam, (LPARAM)(dv));

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.