
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[216.73.216.75] |
![]() |
|
Сообщ.
#1
,
|
|
|
При попытке сохранения файла из ресурса вылетает Stream write error.
Хотя раньше всё было нормально, а также заметил что эта ошибка вылетает периодически. В чём может быть проблема? |
Сообщ.
#2
,
|
|
|
Код - в студию!
|
Сообщ.
#3
,
|
|
|
Есть функция:
![]() ![]() void __fastcall TForm1::InstallBDE() { TResourceStream *bde_stream = new TResourceStream(0,"BDE_ONLY", "BDE" ); bde_stream->SaveToFile(Path_Edit->Text+"BdeInst.dll"); delete bde_stream; typedef DWORD (CALLBACK* LPRSP)(DWORD,DWORD); HINSTANCE hDLL; AnsiString BDE_DLL = Path_Edit->Text + "BdeInst.dll"; hDLL = LoadLibrary(BDE_DLL.c_str()); if(hDLL) { LPRSP RSP = (LPRSP)GetProcAddress(hDLL, "DllRegisterServer"); if(RSP==NULL) { ShowMessage("Не найдена указанная процедура"); return ; } if (RSP != NULL) RSP(0, 1); } FreeLibrary(hDLL); } которая вытаскивает BdeInst.dll и запускает его в обработчике кнопки вызываеться эта функция - и получаем эррор(который может появляться через раз) |
Сообщ.
#4
,
|
|
|
Проверь в отладчике, что у тебя в Path_Edit->Text, значение bde_stream->Size (должно соответствовать размеру ресурса), мосмотри что лежит в bde_stream->Memory (должны быть байты как в ресурсе).
А вообще, TResourceStream не имеет "своего" метода SaveToFile - он его унаследовал от TCustomMemoryStream и поэтому bde_stream->SaveToFile вовсе не добавит ресурс к длл-ке, как ты, имхо, надеешься, просто перепишет файл солдержимым своего Memory... З.Ы. Сообщение об ошибке еще может выскакивать, если твоя длл-ка используется при этом. |
Сообщ.
#5
,
|
|
|
Цитата bde_stream->SaveToFile вовсе не добавит ресурс к длл Мне надо извлечь из ресурсов |
Сообщ.
#6
,
|
|
|
Цитата - а это тогда о чем? Kamenev_D, 28.07.04, 13:49 При попытке сохранения файла из ресурса вылетает Stream write error. ![]() Или в ресурсе сама dll-ка? Тогда первый абзац сообщения #4 (впрочем, и последний тоже м.б.) или, еще лучше, FAQ VC: Как засунуть файл в ресурсы и достать его оттуда |