Выполнение действия CSharp OwnCode. Неверный дескриптор

  • Автор темы Автор темы smarchenko
  • Дата начала Дата начала

smarchenko

Client
Регистрация
18.01.2014
Сообщения
141
Реакции
8
Баллы
18
Всем доброго времени суток.
Выполняю следующий код
C#:
Развернуть Свернуть Копировать
string file = project.Variables["file"].Value;
Bitmap bitmap = new Bitmap(375,600); // ширина и высота скриншота
Graphics graphics = Graphics.FromImage(bitmap);
graphics.CopyFromScreen(0,0,0,0, bitmap.Size);
bitmap.Save(file, System.Drawing.Imaging.ImageFormat.Jpeg);
bitmap.Dispose();
graphics.Dispose();
Все хорошо работает. Но бывает, что выдает ошибку
"Выполнение действия CSharp OwnCode. Неверный дескриптор"
В чем может быть дело и как ее избежать?
 
оборачивай в try/catch, между строками добавь изменение переменной 1,2,3 и так далее и в разделе catch выводи эту переменную в лог.
так узнаешь на какой строке вылетает. а дальше можно и подумать, чем это вызвано.
 
оборачивай в try/catch, между строками добавь изменение переменной 1,2,3 и так далее и в разделе catch выводи эту переменную в лог.
так узнаешь на какой строке вылетает. а дальше можно и подумать, чем это вызвано.
а можешь пример привести? а то я сильно далек от этого
 
а можешь пример привести? а то я сильно далек от этого
так попробуй, при ошибке в лог будет выводить код присвоенный перед выполнением проблемной команды
C#:
Развернуть Свернуть Копировать
var debag="0";
try
{
    string file = project.Variables["file"].Value;
    debag="1";
    Bitmap bitmap = new Bitmap(375, 600); // ширина и высота скриншота
    debag="2";
    Graphics graphics = Graphics.FromImage(bitmap);
    debag="3";
    graphics.CopyFromScreen(0, 0, 0, 0, bitmap.Size);
    debag="4";
    bitmap.Save(file, System.Drawing.Imaging.ImageFormat.Jpeg);
    debag="5";
    bitmap.Dispose();
    debag="6";
    graphics.Dispose();
    debag="7";
}
catch
{
    project.SendInfoToLog($"ошибка : {debag}", true);
}
 
  • Спасибо
Реакции: Rimen и smarchenko
так попробуй, при ошибке в лог будет выводить код присвоенный перед выполнением проблемной команды
C#:
Развернуть Свернуть Копировать
var debag="0";
try
{
    string file = project.Variables["file"].Value;
    debag="1";
    Bitmap bitmap = new Bitmap(375, 600); // ширина и высота скриншота
    debag="2";
    Graphics graphics = Graphics.FromImage(bitmap);
    debag="3";
    graphics.CopyFromScreen(0, 0, 0, 0, bitmap.Size);
    debag="4";
    bitmap.Save(file, System.Drawing.Imaging.ImageFormat.Jpeg);
    debag="5";
    bitmap.Dispose();
    debag="6";
    graphics.Dispose();
    debag="7";
}
catch
{
    project.SendInfoToLog($"ошибка : {debag}", true);
}
Спасибо большое
 
так попробуй, при ошибке в лог будет выводить код присвоенный перед выполнением проблемной команды
C#:
Развернуть Свернуть Копировать
var debag="0";
try
{
    string file = project.Variables["file"].Value;
    debag="1";
    Bitmap bitmap = new Bitmap(375, 600); // ширина и высота скриншота
    debag="2";
    Graphics graphics = Graphics.FromImage(bitmap);
    debag="3";
    graphics.CopyFromScreen(0, 0, 0, 0, bitmap.Size);
    debag="4";
    bitmap.Save(file, System.Drawing.Imaging.ImageFormat.Jpeg);
    debag="5";
    bitmap.Dispose();
    debag="6";
    graphics.Dispose();
    debag="7";
}
catch
{
    project.SendInfoToLog($"ошибка : {debag}", true);
}
Выяснилось, что ошибка 3. Что то можно с ней сделать?
 
В плане он большой или наоборот?
а... не... чот я думал с файла изображение забирается.... а тут прямо с экрана.
тогда возникает что происходит в системе, когда эта ошибка возникает ?
локальный комп ? сколько потоков работает с этим кодом ?
 
а... не... чот я думал с файла изображение забирается.... а тут прямо с экрана.
тогда возникает что происходит в системе, когда эта ошибка возникает ?
локальный комп ? сколько потоков работает с этим кодом ?
Этот шаблон работает на дедике. Шаблон работает в 1 поток. По появлению ошибки закономерность найти не могу. Могу только сказать, что когда она появляется то не исчезает, и каждый новый повтор она есть. Помогает перезапуск зенки
 
Этот шаблон работает на дедике. Шаблон работает в 1 поток. По появлению ошибки закономерность найти не могу. Могу только сказать, что когда она появляется то не исчезает, и каждый новый повтор она есть. Помогает перезапуск зенки
возникает не во время отключения RDP ?
 
Да, кстати может быть такое. Сейчас когда к удаленке подключен все работает
 
Это получается никак не решить эту проблему. Потому что насколько я понял он не может сделать скрин экрана, так как экрана вроде как и нет?
 
Это получается никак не решить эту проблему. Потому что насколько я понял он не может сделать скрин экрана, так как экрана вроде как и нет?
на форуме обсуждали проблему RDP, зенки и отсутствия экрана. надо поискать по форуму или погуглить в гугле.
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)