Entwickler-Ecke
Sonstiges (.NET) - Bildschirmschoner: .exe funktioniert .scr nicht
Namenlosnameless - Sa 24.07.10 20:12
Titel: Bildschirmschoner: .exe funktioniert .scr nicht
Hallo!
Ich habe mir einen Bildschirmschoner gebastelt die den iTunes-Visualizer nutzt!
Nun zu meinem Problem:
Wenn ich das Programm teste funktioniert es, wenn ich die .exe dann auf .scr umbenenne und den Bildschirmschoner einstellen will funktioniert auch die Vorschau noch, das wesentliche (der Aufruf um den Bildschirm zu schonen) erzeugt eine fehlermeldung und ruft den JIT-Debugger auf!
Wenn ich in der Programm.cs nur die Form1 laufen lasse, dann läuft ebenfalls alles einwandfrei!
Mein Code:
Programm.cs
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37:
| using System; using System.Collections.Generic; using System.Linq; using System.Windows.Forms; using iTunes_ScreenSaver;
namespace MeinBildschirmschoner { static class Program { [STAThread]
static void Main(string[] args) {
if (args.Length > 0) { string arg = args[0].ToLower().Trim().Substring(0, 2);
switch (arg) { case "/c": break;
case "/p": break;
case "/s": Form1 frm1 = new Form1(); Application.Run(frm1); break; } } } } } |
Die ScreenSaver-Klasse:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51:
| using iTunesLib; using System.Diagnostics; using System.Runtime.InteropServices; using System.IO;
namespace iTunes_ScreenSaver { public partial class Form1 : System.Windows.Forms.Form { iTunesApp itunes = new iTunesApp(); IITPlaylist pl;
Timer th=new Timer();
public Form1() { InitializeComponent(); }
private void Form1_Load(object sender, EventArgs e) { th.Interval = 100; th.Tick += new EventHandler(th_Tick);
IITLibraryPlaylist mainLibrary = itunes.LibraryPlaylist; pl = itunes.LibrarySource.Playlists.ItemByName["Mediathek"]; pl.PlayFirstTrack(); itunes.FullScreenVisuals = true; itunes.VisualsEnabled = true; th.Start(); }
void th_Tick(object sender, EventArgs e) { if (itunes.VisualsEnabled == false) { itunes.Quit(); this.Close(); } }
} } |
Stimmt der Code nicht oder lässt sich das nicht als ScreenSaver realisieren?
mfg Christoph
Kha - Sa 24.07.10 20:38
Besitzt die Fehlermeldung auch einen Inhalt?
Und dass heutzutage Bildschirmschoner Bildschirme schonen, halte ich für ein Gerücht :mrgreen: .
Namenlosnameless - Sa 24.07.10 23:23
ja sie besitzt einen Ihnhat, oder sollte ich sagen viele, es ist ständig eine andere Exception die ausgelöst wird ;) ich hab mal eine als Bild reingeladen!
Namenlosnameless - So 25.07.10 09:47
Mittlerweile weiß ich auch bei welcher Codezeile er das Problem feststellt...
gleich bei: iTunesApp itunes=new iTunesApp(); lustigerweise hat der JIT-Debugger kein Problem damit wenn iTunes vor dem start bereits läuft..
Darum hab ich verucht itunes vor der Zeile: iTunesApp itunes=new iTunesApp(); zu starten, indem ich den Prozess manuell starten wollte, das hat aber wieder eine andere Fehlermeldung ausgelöst!
schon langsam verzweifle ich :(
Namenlosnameless - Mo 26.07.10 14:56
kann es vielleicht sein das sich das mit dem ScreenSaver nicht verträgt?
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!