Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2011.09.11;
Скачать: [xml.tar.bz2];

Вниз

Переходник между чужим приложением и его файлами   Найти похожие ветки 

 
reqyz   (2010-02-13 07:44) [0]

такой вопрос: как зделать программу, с помощью которой можно было бы изменять направление запроса другой программы.
Подробно: Открыть чужое приложение, которое было перенесено из папки, с файлами, ему принадлежащими, и когда оно попытается обратиться к ним, перенаправлять запрос туда, где эти файлы находятся, желательно, чтоб это можно было реализовать по сети, если exe файл находится на другом компьютере, относительно своих файлов?


 
KilkennyCat ©   (2010-02-13 10:35) [1]

зкопировать ярлык ехе файла туда куда надо относительно того где было


 
reqyz   (2010-02-13 11:01) [2]

возможно мой вопрос был не совсем понятен, exe фал может находиться на другом компьютере, а программа должна отлавливать его обращения к его файлам, направлять их по сети на нужный компьютер, там обрабатывать и посылать обратно


 
oldman ©   (2010-02-13 11:02) [3]


> как зделать программу, с помощью которой можно было бы изменять
> направление запроса другой программы.


Если в чужой программе нет Open или Path, а жестко прописаны файлы, то никак.
Проще написать свою программу по работе с этими файлами.

ЗЫ: Если программа берет данные из "своей" папки, то в ярлыке, кажется, указывается "рабочий каталог"...


 
reqyz   (2010-02-13 11:07) [4]


> Если в чужой программе нет Open или Path, а жестко прописаны
> файлы, то никак.Проще написать свою программу по работе
> с этими файлами.

нужно отловить поток, который пошлет эта программа, это осуществимо, просто я не умею
> ЗЫ: Если программа берет данные из "своей" папки, то в ярлыке,
>  кажется, указывается "рабочий каталог"...

и что, я заранее знаю где раньше лежал исполнительный фал, вопрос то не в этом


 
Anatoly Podgoretsky ©   (2010-02-13 12:01) [5]

> oldman  (13.02.2010 11:02:03)  [3]

Если бы он мог, а так "партия дай порулить"


 
reqyz   (2010-02-13 12:10) [6]

попытаюсь разбить задачу
1. В момент обращения программы к файлам перехватить это обращение, возможно используя хуки(hook).
2.перенаправить обращение к файлам, туда, где они на самом деле лежат(по сети на другой компьютер)
3.вернуть те значения, программе, которые обработали её файлы,
т.е. как бы стать мостом между программой и её фалами
вот, кто знает, как это зделать?


 
reqyz   (2010-02-13 12:13) [7]

иногда место "файл", пишу "фал", буква "Й" западает, не обращайте внимание)


 
sniknik ©   (2010-02-13 12:44) [8]

> Если в чужой программе нет Open или Path, а жестко прописаны файлы, то никак.
на том диске куда она обращается делаешь ярлык с именем папки куда она пытается обратится, и ссылкой на сетевой ресурс... все.
???


 
oldman ©   (2010-02-13 12:51) [9]


> sniknik ©   (13.02.10 12:44) [8]


да не хочет автор с ярлыками работать.
ему хук надо переподвывернутый.


 
Плохиш ©   (2010-02-13 12:54) [10]


> sniknik ©   (13.02.10 12:44) [8]

Да ладно, не прикалывайся :-) Он хочет велосипед с треугольными колёсами под названием "веб-сервис/клиент"...


 
Плохиш ©   (2010-02-13 12:58) [11]


> reqyz   (13.02.10 12:10) [6]
>
> попытаюсь разбить задачу
> 1. В момент обращения программы к файлам перехватить это
> обращение, возможно используя хуки(hook).

Перехватываешь функцию открытия/создания файла

> 2.перенаправить обращение к файлам, туда, где они на самом
> деле лежат(по сети на другой компьютер)
>

Читаешь файл откуда хочешь

> 3.вернуть те значения, программе, которые обработали её
> файлы,
>

Возвращаешь значения в формате перехваченной в пункте 1 функции


> вот, кто знает, как это зделать?
>

Я знаю как это сделать.


 
sniknik ©   (2010-02-13 13:03) [12]

> да не хочет автор с ярлыками работать.
плевать на автора. это ты сказал, что если в проге жесткие обращения к файлам то никак.

> Он хочет велосипед с треугольными колёсами под названием "веб-сервис/клиент"...
ну, то что "авторы" зачастую не решают ЗАДАЧУ, а изгаляются над своим извращенным ее пониманием, и только частного пути решения (которое иногда и не путь вовсе, а тупик), это давно не секрет.


 
oldman ©   (2010-02-13 13:34) [13]


> sniknik ©   (13.02.10 13:03) [12]
> > да не хочет автор с ярлыками работать.
> плевать на автора. это ты сказал, что если в проге жесткие
> обращения к файлам то никак.


FileName:="C:\MyProga\Data\base.db"
AutoOpen:=True

Ну и как ты перенаправишь ярлыком?


 
sniknik ©   (2010-02-13 14:29) [14]

> Ну и как ты перенаправишь ярлыком?
как написал, только тут одна промежуточная папка будет. для содержания собственно ярлыка
делаем папку "C:\MyProga", в ней ярлык "Data", при  создании первым "размещение объекта"  сетевой путь. и все.
тогда обращение по  "C:\MyProga\Data\base.db" приведет на путь "C:\MyProga" + ярлык "Data" по его сетевому пути на файл base.db. что и требовалось.


 
sniknik ©   (2010-02-13 14:59) [15]

а хотя, да, понял... ярлыки в винде, это не тоже самое что симлинки в линуксе... так работать не будет. ;(


 
sniknik ©   (2010-02-13 16:18) [16]

с другой стороны, начиная с висты уже должно (почитал по теме), там сделали нормальные (или как пишет мелкософт "расширенные").


 
Дмитрий Белькевич   (2010-02-13 18:30) [17]


> с другой стороны, начиная с висты уже должно (почитал по
> теме), там сделали нормальные (или как пишет мелкософт "расширенные").
>


Не прошло и 30 лет :) В своё время на XP сильно не хватало.


 
Slym ©   (2010-02-14 18:10) [18]

нужно сделать перехват
по типу http://yandex.ru/yandsearch?text=ReplaceIATEntry&lr=237
ReplaceIATEntryInAllModules(kernel32,"ReadFile",@Intercept_ReadFile);

могу накидать завтра пример подмены причтении...
(писал для себя шифровалку файлов налету - на диске шифрованый, а приложение читает нормальный, прослойка незаметно дешифрует)



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2011.09.11;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.003 c
2-1306717948
Lutdan
2011-05-30 05:12
2011.09.11
Rave Reports ошибка


2-1306067684
Drowsy
2011-05-22 16:34
2011.09.11
ODS.


3-1263964618
Дмитрий С
2010-01-20 08:16
2011.09.11
Запрос последней связи


15-1305890709
Тимохов Дмитрий
2011-05-20 15:25
2011.09.11
Вирт. машина Parallels - как отключить автомэп сетевых дисков?


4-1250528858
ivanoff
2009-08-17 21:07
2011.09.11
как наити нужный Edit в чужом приложении





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский