Решение ошибки

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

Spikers07

Client
Регистрация
25.05.2016
Сообщения
123
Реакции
54
Баллы
28
Не могу понять в чем причина кода:

C#:
Развернуть Свернуть Копировать
//Отправка капчи из картинки
var captcha__get = project.Variables["url_captcha"].Value;
var image = System.Drawing.Image.FromFile(@captcha__get);
string base64String = String.Empty;
using (System.IO.MemoryStream ms = new System.IO.MemoryStream())
{
  image.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
  byte[] imageBytes = ms.ToArray();
  base64String = Convert.ToBase64String(imageBytes);
}
var result = ZennoPoster.CaptchaRecognition("CapMonsterCloud.dll", base64String, "");
// отрезаем лишнее
var tmp = result.Split(new [] {"-|-"}, StringSplitOptions.None);
if (tmp.Length > 1) return tmp[0];
return result;

Ответ:

Выполнение действия CSharp OwnCode. Недостаточно памяти.


По форуму прошелся, разные методы пробывал, не помогает
 
C#:
Развернуть Свернуть Копировать
string captchapath = project.Directory+@"\"+ project.Variables["img_file"].Value; // путь к картинке
string b64strcaptcha = Convert.ToBase64String(System.IO.File.ReadAllBytes(captchapath));
 
C#:
Развернуть Свернуть Копировать
string captchapath = project.Directory+@"\"+ project.Variables["url_captcha"].Value; // путь к картинке
string b64strcaptcha = Convert.ToBase64String(System.IO.File.ReadAllBytes(captchapath));
Выполнение действия CSharp OwnCode. Данный формат пути не поддерживается.
url_captcha = c:\users\msi\desktop\шаблоны зенки\captcha\captcha(10).php
 
Вы не обернули его в using (т.е. нет вызова Dispose). Тот, кто будет использовать данный код, получит утечку памяти.
Вы бы не могли тогда верный код сделать полный? На форуме много такого рода вопросов, но решение так и нашлось(
 
Выполнение действия CSharp OwnCode. Данный формат пути не поддерживается.
url_captcha = c:\users\msi\desktop\шаблоны зенки\captcha\captcha(10).php
ну это же пример. в переменную captchapath надо свой путь писать. например captchapath = @"c:\users\msi\desktop\шаблоны зенки\captcha\captcha(10).php";
или через свою переменную. string captchapath = project.Variables["url_captcha"].Value; // путь к картинке
 

Такая вещь. В одном шаблоне, с которого скопировал данный код он прекрасно работает. Но в этом шаблоне и последующих новых для теста он всегда пишет ошибку о недостатке памяти.
 
Запустил на версии 5.16.2.0 и всё сразу запустилось.
 

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