|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
Привет всем реализовал по DataSnap получение файла с Servera используя пример из Инета Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70.
но файл на сервере остаётся открытым, даже если клиентское приложение закрыть его ни удалить, ни изменить Может кто знает где поправить? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2022, 19:19 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
Нет закрытия/удаления RetStream. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2022, 19:40 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
GunSmoker, делал так на Клиенте Код: pascal 1. 2. 3. 4. 5. 6.
не помогло я даже приложение Клиента закрываю, а на сервере файл открытым остаётся Windows 11 Delphi 11 и Сервер и Клиент 64х разрядные ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2022, 19:48 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
SergeyKNP, Не полагайся на Free, сделай объекту-читателю явный Close сразу же после Read. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2022, 20:36 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
Создаваемый TServerMethods1.DownloadFile TStream не удаляется. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2022, 21:05 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
Vlad F, извини за тупость, но где и как это сделать не соображу... на сервере: как закрыть Result? :( Код: pascal 1. 2. 3. 4. 5. 6.
на клиенте: не у Mem, не у RetStream нет Close; Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58.
... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2022, 21:06 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
GunSmoker, переделал так Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
вообще перестал получать файл ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2022, 21:14 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
Нафига вам этот датаснап... ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2022, 21:52 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
ъъъъъ, твои предложения. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2022, 22:04 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
SergeyKNP, Не так, - поставь RetStream.Free сразу после RetStream.Read(). ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2022, 22:10 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
Vlad F, Код: pascal 1. 2. 3.
как я поставлю RetStream.Free? там же repeat Модератор: Пользуйтесь тегом (кнопкой) SRC для оформления кода, пожалуйста. Как мне оформить свое сообщение? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2022, 22:16 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
SergeyKNP, После until поставь, от ты нудный.)) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2022, 23:09 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
SergeyKNP GunSmoker, переделал так Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
вообще перестал получать файл Я бы попробовал создать метод для закрытия открытого fStream1 (объявить его конечно не внутри локального метода, а как минимум внутри TServerMethodsX). И вызвал бы метод закрытия потока после чтения из клиента. Т.е. если грубо: Код: pascal 1. 2. 3. 4. 5. 6.
Ну и не забыть вызвать этот метод из клиента после чтения. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2022, 09:09 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
Belotsky Serge Я бы попробовал создать метод для закрытия открытого fStream1 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2022, 12:21 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
_Vasilisk_, переделал по другому, теперь вроде всё ок Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2022, 12:03 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
SergeyKNP, Забористый код. Зачем возвращать отдельно Size, когда он и так идёт в составе Result? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2022, 12:24 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
SergeyKNP теперь вроде всё ок ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2022, 14:11 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
_Vasilisk_Ну если это ок, то даже не знаю что сказать Как писал один "специалист по хай-лоад" на хабре: "чтобы отдать мегабайтный файл миллиону пользователей нужно ОЗУ в террабайт". Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2022, 14:19 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
_Vasilisk_, предложи свой, конкретный вариант кода ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2022, 14:20 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
_Vasilisk_ SergeyKNP теперь вроде всё ок Я не особо знаток в DataSnap, но вроде он там TStream маршалирует в TDBXStreamReaderStream . Т.е. возвращаемый объект он удаляет, но, видимо, нет гарантии, что это происходит сразу. Но, конечно, тут надо матчасть поизучать, чем такие эксперименты ставить. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2022, 14:36 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
Проще выкинуть DataSnap и отдавать файл по SMB или HTTP. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2022, 14:40 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, "Особо одарённых" прошу не возбуждаться и идти лесом. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2022, 14:48 |
|
DataSnap после получения файла с Server'а файл на сервере остаётся открытым
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Проще выкинуть DataSnap и отдавать файл по SMB или HTTP. Код: pascal 1.
где SrcFileName - имя файла по сети, что-то типа: '//remote_host/D:/folder/filename'? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2022, 16:14 |
|
|
start [/forum/topic.php?fid=58&msg=40124751&tid=2036736]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
63ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
67ms |
get tp. blocked users: |
2ms |
others: | 306ms |
total: | 480ms |
0 / 0 |