41 Востаннє редагувалося incrome (13.06.2013 23:19:04)

Re: WinApi - Drag&Drop проблема

В мене зовсім нічого не виводить((
Може новий проект спробувати?

42 Востаннє редагувалося incrome (13.06.2013 23:28:47)

Re: WinApi - Drag&Drop проблема

Знаєте! Я де що зробив! Я повернув до wchar_t та оголосив змінну через PCHAR! І в мене в РічЕдіт вивелося багато символів... Та після перезапуску програми ось що я маю:
http://www.pictureshack.ru/images/34243_rty.png
Зовсім не розумію що коїться, то воно працює(криво), то зовсім не працює...

43

Re: WinApi - Drag&Drop проблема

Ну, ось щось таке:

 void __fastcall TForm4::WmDropFiles(TWMDropFiles& Message)
{
char *chFileName = "";
//AnsiString chFileName;
int Count;
Count = DragQueryFileA(HDROP (Message.Drop), 0xFFFFFFFF, chFileName, MAX_PATH);
//Count = DragQueryFile(HDROP (Message.Drop), 0xFFFFFFFF,chFileName.c_str(),MAXPATH);
for (int i=0;i<Count;i++)
  {
   if ( DragQueryFileA(HDROP (Message.Drop), i, chFileName, MAX_PATH) != 0 )
   {
        MessageBox( Form4->Handle, "Its allright", "good", MB_OK);
   } else
   {
        MessageBox( Form4->Handle, "Dont good, error", "error", MB_OK);
        chFileName = "Error";
   }


    for (int j=0; j < strlen( chFileName ); j++){
        RichEdit1->Lines->Strings[i] = RichEdit1->Lines->Strings[i] + chFileName[j];
        //RichEdit1->Lines->Strings[i] = chFileName;
   }
  //Form4->Caption =  chFileName;
  }
DragFinish(HDROP (Message.Drop));
 
  }
//---------------------------------------------------------------------------
Подякували: incrome1

44

Re: WinApi - Drag&Drop проблема

Ось знову я вирубаю цей білдер проклятий, мінію на Char, запускаю, бачу ось таке:
http://www.pictureshack.ru/images/3326_frtg.png
Закриваю програму та знов запускаю її! І що ви думаєте? Ось це я бачу:
http://www.pictureshack.ru/images/84136_123aaa.png
Чи с періодом часу воно відновлюється , все не знаю..

45

Re: WinApi - Drag&Drop проблема

Ви подивились моє попереднє повідомлення?

46

Re: WinApi - Drag&Drop проблема

Знаєте що саме смішне? Такого результату я добився все давно, але нащо він такий нужен якщо він не відображає повний шлях)
http://www.pictureshack.ru/images/44106_123qwe.png

47

Re: WinApi - Drag&Drop проблема

Ну це вже щось, а тепер можете переробити на юнікод =)

48

Re: WinApi - Drag&Drop проблема

Chemist-i написав:

Ви подивились моє попереднє повідомлення?

Так))

49 Востаннє редагувалося incrome (13.06.2013 23:47:16)

Re: WinApi - Drag&Drop проблема

Ось так?

void __fastcall TForm4::WmDropFiles(TWMDropFiles& Message)
{
AnsiString chFileName = "";
//AnsiString chFileName;
int Count;
Count = DragQueryFileA(HDROP (Message.Drop), 0xFFFFFFFF, chFileName.c_str(), MAX_PATH);
//Count = DragQueryFile(HDROP (Message.Drop), 0xFFFFFFFF,chFileName.c_str(),MAXPATH);
for (int i=0;i<Count;i++)
  {
   if ( DragQueryFileA(HDROP (Message.Drop), i, chFileName.c_str(), MAX_PATH) != 0 )
   {
        //MessageBox( Form4->Handle, "Its allright", "good", MB_OK);
   } else
   {
        //MessageBox( Form4->Handle, "Dont good, error", "error", MB_OK);
        chFileName = "Error";
   }


    for (int j=0; j < strlen( chFileName.c_str() ); j++){
        RichEdit1->Lines->Strings[i] = RichEdit1->Lines->Strings[i] + chFileName[j];
        //RichEdit1->Lines->Strings[i] = chFileName;
   }
  //Form4->Caption =  chFileName;
  }
DragFinish(HDROP (Message.Drop));

  }

50

Re: WinApi - Drag&Drop проблема

Нє, так:

 void __fastcall TForm4::WmDropFiles(TWMDropFiles& Message)
{
wchar_t *chFileName;
//AnsiString chFileName;
int Count;
Count = DragQueryFileW(HDROP (Message.Drop), 0xFFFFFFFF, chFileName, MAX_PATH);
//Count = DragQueryFile(HDROP (Message.Drop), 0xFFFFFFFF,chFileName.c_str(),MAXPATH);
for (int i=0;i<Count;i++)
  {
   if ( DragQueryFileW(HDROP (Message.Drop), i, chFileName, MAX_PATH) != 0 )
   {
        MessageBox( Form4->Handle, "Its allright", "good", MB_OK);
   } else
   {
        MessageBox( Form4->Handle, "Dont good, error", "error", MB_OK);
        //chFileName = "Error";
   }


    for (int j=0; j < wcslen( chFileName ); j++){
        RichEdit1->Lines->Strings[i] = RichEdit1->Lines->Strings[i] + chFileName[j];
        //RichEdit1->Lines->Strings[i] = chFileName;
   }
  //Form4->Caption =  chFileName;
  }
DragFinish(HDROP (Message.Drop));

  }
//---------------------------------------------------------------------------

51

Re: WinApi - Drag&Drop проблема

Або ось так?

void __fastcall TForm4::WmDropFiles(TWMDropFiles& Message)
{
UnicodeString chFileName = "";
//AnsiString chFileName;
int Count;
Count = DragQueryFile(HDROP (Message.Drop), 0xFFFFFFFF, chFileName.c_str(), MAX_PATH);
//Count = DragQueryFile(HDROP (Message.Drop), 0xFFFFFFFF,chFileName.c_str(),MAXPATH);
for (int i=0;i<Count;i++)
  {
   if ( DragQueryFile(HDROP (Message.Drop), i, chFileName.c_str(), MAX_PATH) != 0 )
   {
        //MessageBox( Form4->Handle, "Its allright", "good", MB_OK);
   } else
   {
        //MessageBox( Form4->Handle, "Dont good, error", "error", MB_OK);
        chFileName = "Error";
   }


    for (int j=0; j < chFileName.Length(); j++){
        RichEdit1->Lines->Strings[i] = RichEdit1->Lines->Strings[i] + chFileName[j];
        //RichEdit1->Lines->Strings[i] = chFileName;
   }
  //Form4->Caption =  chFileName;
  }
DragFinish(HDROP (Message.Drop));

  }

52

Re: WinApi - Drag&Drop проблема

Ось ваш спосіб:
http://www.pictureshack.ru/images/48399_12345ff.png

53 Востаннє редагувалося incrome (13.06.2013 23:56:41)

Re: WinApi - Drag&Drop проблема

А це мій перший спосіб:
http://www.pictureshack.ru/images/20751_perv.png
А другий без помилок, але нічого не виводить...

54

Re: WinApi - Drag&Drop проблема

Black Magic =(

55

Re: WinApi - Drag&Drop проблема

Ця магія мене вже доконала(( Авжешь дуже хочеться узнати в чому то проблема, але може є якась альтернатива?

56

Re: WinApi - Drag&Drop проблема

incrome
Так, є альтернатива - переходьте на лінукс

Подякували: Cyan1

57

Re: WinApi - Drag&Drop проблема

Яж не для себе пишу, невже всім на лінукс переходити?

58

Re: WinApi - Drag&Drop проблема

Може спробувати білдер інший?

59 Востаннє редагувалося Chemist-i (14.06.2013 00:09:42)

Re: WinApi - Drag&Drop проблема

ні, розбирайтесь зі вказівниками на рядок, точно в цьому біда

Подякували: Replace1

60

Re: WinApi - Drag&Drop проблема

Я вже не знаю що робити в загалі:(
Яб до того що ви зробили, сумніваюся що б додумався, а то й ще щось самому придумати....