VB - Reload picture – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

VB - Reload picture – .NET – Fórum – Programujte.comVB - Reload picture – .NET – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Denoy
~ Anonymní uživatel
4 příspěvky
27. 4. 2012   #1
-
0
-

Zdravim,
řeším tu teď jeden problém a to oheldně screenování, mám tento kód

Dim Bounds = Screen.PrimaryScreen.Bounds
Dim width = Bounds.Width
Dim height = Bounds.Height
Dim screenshot As System.Drawing.Bitmap
Dim graph As Graphics
screenshot = New System.Drawing.Bitmap(width, height, System.Drawing.Imaging.PixelFormat.Format32bppArgb)
graph = Graphics.FromImage(screenshot)
graph.CopyFromScreen(0, 0, 0, 0, Bounds.Size, CopyPixelOperation.SourceCopy)
screenshot.Save("C:/test_" + count + ".jpg", System.Drawing.Imaging.ImageFormat.Jpeg)
count = count + 1

problém je v tom, že když to volám v nějakém itnervalu, tak se udělá první screen test_1.jpg, poté druhý test_2.jpg, ale ten druhý je totožný s tím prvním (i když na ploše něco změním, tak se to na screenu 2. neukže) a tak to jde dál, takže se vlastně udělá pouze ten 1. screen. Dělá to jen když jsem v nějaké hře a má otázka zní, jde to nějak upravit aby to šlo, nebo lze udělat podobný kód? (Podobný msyslím hlavně tím, že lze směrovat osu X a Y kde se screen vytvoří, tzn. že si vyfotím třeba jen hodiny vpravo dole na liště). Díky moc za odpovědi!

Nahlásit jako SPAM
IP: 93.95.35.–
Reklama
Reklama
pistolnik0
Newbie
27. 4. 2012   #2
-
0
-

#1 Denoy
No s těmi hrami bude trošku problém. Standardně se pro vykreslování od xpéček používá GDI+, které využívá i tvůj kód. Hry, ale většinou používají DirectX a programovat pomocí něj není zrovna jednoduché. Na některých fórech se dá dočíst, že lze udělat screen hry i výše uvedeným kódem, ale na Windows 7(nevím jak jinde) pouze za předpokladu vypnutého aera a i tak to má celou řadu problémů, viz. http://forums.create.msdn.com/forums/p/93241/558663.aspx

Řešením může být tento článek (C#): http://spazzarama.com//2009/02/07/screencapture-with-direct3d/ který předpokládá využití knihovny SlimDX a DirectX SDK. Link na knihovnu by měl být v článku.

Nahlásit jako SPAM
IP: 2001:718:1e02:9120:419e:4...–
Denoy
~ Anonymní uživatel
4 příspěvky
1. 5. 2012   #3
-
0
-

Díky za tu teorii, něco jsem si o tom našel a zkoušel jsem DirectX, ale nějak mi to nešlo tak teď zkouším OpenGL

Nahlásit jako SPAM
IP: 93.95.35.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 25 hostů

Podobná vlákna

Picture — založil Jacob

Picture in JTabbedPane — založil lubo

Pole picture boxu? — založil Karel

Reload stránky — založil yxcvb

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý