Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.12.2007, 09:56   #1
aesoem
Форумчанин
 
Регистрация: 24.12.2007
Сообщений: 288
Печаль TXT редактор

Всем привет, как сделать так чтобы, после открытия текставого файла запускалась моя прога??? У меня ролучается что моя прога запускается но компанент Memo чист
aesoem вне форума Ответить с цитированием
Старый 26.12.2007, 15:50   #2
Domovoy
Форумчанин
 
Регистрация: 24.10.2007
Сообщений: 254
По умолчанию

У меня такое впечатление что с реестром ты не плохо паработал а вот инфу с файла то небось загрузить то и забыл
Domovoy вне форума Ответить с цитированием
Старый 26.12.2007, 16:11   #3
Air
Участник клуба
 
Аватар для Air
 
Регистрация: 30.04.2007
Сообщений: 1,307
По умолчанию

Просто твоя программма не знает о том, что нужно принимать данные.


Этот код использет метод Drag and Drop (или как там его...)

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls,ShellApi;

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    procedure FormCreate(Sender: TObject);
  private
   procedure WMDROPFILES(var Message: TWMDROPFILES); message WM_DROPFILES;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

Function DropFile(Mes: TWMDropFiles):String;
var
buffer:array[0..255] of char;
begin
Result:='';
DragQueryFile(Mes.Drop,0,nil,0);
DragQueryFile(Mes.Drop,0,@buffer,sizeof(buffer));
Result:=buffer;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
{Разрешаем форме принимать данные}
DragAcceptFiles(Form1.Handle, True);
end;

procedure TForm1.WMDROPFILES(var Message: TWMDROPFILES);
begin
memo1.Lines.LoadFromFile(DropFile(Message));
end;

end.
Текстовый файл переносишь на окно проги и в Memo он загружается.
Всё гениальное - просто!

Последний раз редактировалось Air; 26.12.2007 в 19:47.
Air вне форума Ответить с цитированием
Старый 27.12.2007, 18:14   #4
Air
Участник клуба
 
Аватар для Air
 
Регистрация: 30.04.2007
Сообщений: 1,307
По умолчанию

Цитата:
Сообщение от Domovoy Посмотреть сообщение
У меня такое впечатление что с реестром ты не плохо паработал а вот инфу с файла то небось загрузить то и забыл
А как Вы загрузите данные в программу, если она не готова к загрузке?
Всё гениальное - просто!
Air вне форума Ответить с цитированием
Старый 27.12.2007, 18:35   #5
Domovoy
Форумчанин
 
Регистрация: 24.10.2007
Сообщений: 254
По умолчанию

Чот не понял вопросика? Как это не готова?
Domovoy вне форума Ответить с цитированием
Старый 28.12.2007, 00:32   #6
Air
Участник клуба
 
Аватар для Air
 
Регистрация: 30.04.2007
Сообщений: 1,307
По умолчанию

Цитата:
Сообщение от Domovoy Посмотреть сообщение
Чот не понял вопросика? Как это не готова?
Вот этот код, например даёт способность форме принимать данные:

Код:
DragAcceptFiles(Form1.Handle, True);
- Но как загрузить данные из файла при запуске проги?
Всё гениальное - просто!
Air вне форума Ответить с цитированием
Старый 28.12.2007, 11:38   #7
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Н-даа.... Вопрос-то не про перетаскивание файлов

Код:
Procedure TForm1.FormCreate(Sender: TObject);  
begin  
 If (ParamCount > 0) and (FileExists(ParamStr(1))) then
 Memo1.Lines.LoadFromFile(ParamStr(1));
end;
В реестре, соответственно,
HKEY_CLASSES_ROOT\txtfile\shell\ope n\command
путь_к_программе "%1"
пыщь
JTG вне форума Ответить с цитированием
Старый 28.12.2007, 12:23   #8
Domovoy
Форумчанин
 
Регистрация: 24.10.2007
Сообщений: 254
По умолчанию

Цитата:
Н-даа.... Вопрос-то не про перетаскивание файлов
Во во так и я про тоже......
Domovoy вне форума Ответить с цитированием
Старый 28.12.2007, 15:46   #9
Air
Участник клуба
 
Аватар для Air
 
Регистрация: 30.04.2007
Сообщений: 1,307
По умолчанию

Перетаскивание файлов, тоже может пригодиться.

Во, хороший ответ. +1

Цитата:
Сообщение от JTG Посмотреть сообщение
Н-даа.... Вопрос-то не про перетаскивание файлов

Код:
Procedure TForm1.FormCreate(Sender: TObject);  
begin  
 If (ParamCount > 0) and (FileExists(ParamStr(1))) then
 Memo1.Lines.LoadFromFile(ParamStr(1));
end;
В реестре, соответственно,
HKEY_CLASSES_ROOT\txtfile\shell\ope n\command
путь_к_программе "%1"
Всё гениальное - просто!
Air вне форума Ответить с цитированием
Старый 28.12.2007, 15:48   #10
Air
Участник клуба
 
Аватар для Air
 
Регистрация: 30.04.2007
Сообщений: 1,307
По умолчанию

Цитата:
Сообщение от Domovoy Посмотреть сообщение
Во во так и я про тоже......
А-аха, а что ж Вы ни чего не предложили в ответ..?
Всё гениальное - просто!
Air вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Графический редактор Alex_Bond Общие вопросы .NET 1 14.05.2008 08:55
Текстовый редактор Михаил Юрьевич Общие вопросы Delphi 7 04.04.2008 22:54
HEX редактор Simply-Art Помощь студентам 1 08.12.2007 13:18
Текстовый редактор. GPhantom Общие вопросы C/C++ 4 02.11.2007 21:24
редактор MadDog__ Общие вопросы C/C++ 2 03.10.2007 12:49