مساعدة ضرورية معرفة الخطا بالكود


(تولاي دانيال) #1

السلام عليكم
هاد كود بعمل load لصورة اي بقرا صورة من نوع jpg لكن عند تنفيذه على visual c++ لا تظهر الصورة اي لا يقراها لكن يخرج المربع الذي يجب ان تظهر به الصوره لا اعلم اين الخطا احتاج المساعده ضروري جدا

// t.cpp : main project file.

#include "stdafx.h"
#include "Form1.h"
#using <mscorlib.dll> //requires CLI

using namespace System;
using namespace System::IO;
using namespace System::Windows::Media::Imaging;
using namespace System::Windows::Media;
using namespace System::Windows::Controls;

using namespace t;

[STAThreadAttribute]
int main(array<System::String ^> ^args)
{
	// Enabling Windows XP visual effects before any controls are created
	Application::EnableVisualStyles();
	Application::SetCompatibleTextRenderingDefault(false); 

	// Create the main window and run it
	Application::Run(gcnew Form1());


	// Open a Stream and decode a JPEG image
    //ملاحظة مسار (امتداد) الصور هوC:/heart.jpg
Stream^ imageStreamSource = gcnewFileStream("C:\Users\SOSO\Desktop		\a.jpg", FileMode::Open, FileAccess::Read, FileShare::Read);

JpegBitmapDecoder^ decoder = gcnewJpegBitmapDecoder(imageStreamSource, BitmapCreateOptions::PreservePixelFormat, BitmapCacheOption::Default);
BitmapSource^ bitmapSource = decoder->Frames[0];//< --mamybitmape
// Draw the Image
System::Windows::Controls::Image^ myImage = gcnewSystem::Windows::Controls::Image();  //<--- this image in the Form1  -------
        //ابعاد الصورة 
myImage->Source = bitmapSource;
myImage->Stretch = Stretch::None;
int width = 128;//العرض
int height = width;//الارتفاع=العرض
int stride = width / 8;
        array<System::Byte>^ pixels = gcnew array<System::Byte>(height * stride);

// Define the image paletteo
BitmapPalette^ myPalette = BitmapPalettes::Halftone256;

// Creates a new empty image with the pre-defined palette.
BitmapSource^ image = BitmapSource::Create(width, height,96, 96,PixelFormats::Indexed1,myPalette,pixels,stride);

System::IO::FileStream^ stream = gcnewSystem::IO::FileStream("C:\Users\SOSO\Desktop		\a.jpg", FileMode::Create);
JpegBitmapEncoder^ encoder = gcnewJpegBitmapEncoder();
TextBlock^ myTextBlock = gcnewSystem::Windows::Controls::TextBlock();
myTextBlock->Text = "Codec Author is: " + encoder->CodecInfo->Author->ToString();
        encoder->FlipHorizontal = true;
        encoder->FlipVertical = false;
        encoder->QualityLevel = 30;
        encoder->Rotation = Rotation::Rotate90;
        encoder->Frames->Add(BitmapFrame::Create(image));
        encoder->Save(stream);
return 0;
}