Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
Kommentar vom Moderator Biber am 15.12.2009 um 20:21:43 Uhr
*Thread abonnier*
*Popcorn kaltstell*
GELÖST

Bildschirmschoner in Assembler schreiben

Frage Entwicklung Assembler

Mitglied: Hacker

Hacker (Level 1) - Jetzt verbinden

14.12.2009, aktualisiert 19.12.2009, 5803 Aufrufe, 7 Kommentare

Bildschirmschoner von C# in Assembler übersetzen

Hallo, Ich habe mal aus Spaß einen Bildschirmschoner in C# geschrieben. Mir gefiel er und ich wollte in auch in der Schule auf den Computer ziehen. Allerdings funktioniert der dort nicht, weil er mindestens .NET-Framework 3.5 benötigt und auf den Schul-PC's haben wir nur 1.0. Auf jeden Fall hab ich zu dem Zeitpunkt Assembler gelernt und dachte mir, es wäre eine schöne Übung, den Bildschirmschoner in Assember aufzusetzten. Allerdings war keines der Programmierbücher, die ich gelesen hab so frei, die WM_PAINT-Nachricht abzufangen oder irgendwie auf andere Weise unter 32-Bit Systemen etwas zu zeichnen. Im Internet findet man auch eher wenig und meistens für andere Zwecke. Da wollte ich mal fragen, ob mir hier jemand helfen kann.

Da ich leider nicht weis, wie man Dateien hier reinstellt wäre es hifreich wenn mir noch Einer posten könnte, wie man das macht, da ich nicht den ganzen Quelltext hier reinschreiben möchte.

Danke schon mal im voraus.
Mitglied: lexa-lexa
14.12.2009 um 21:15 Uhr
Hi,

du weisst aber, was Assembler ist? Dann übersetze als Einstieg einfach den folgenden Mini-Code:

01.
using System; 
02.
namespace HalloWelt { 
03.
   class Program { 
04.
      static void Main() { 
05.
         Console.Out.Write("Hallo Welt"); 
06.
07.
08.
}
Dann reden wir weiter
Bitte warten ..
Mitglied: godlie
15.12.2009 um 07:41 Uhr
@lexa
Ich amüsiere mich gerade köstlich
Bitte warten ..
Mitglied: Hacker
15.12.2009 um 18:56 Uhr
.MODEL SMALL
.DATA
string db "Hallo Welt$"
.CODE
MOV AX, @Data
MOV DS, AX
MOV DX, OFFSET string
MOV AH, 09H
INT 21H
MOV AX, 4C00H
INT 21H

Das berühmte "Hallo Welt!"-Programm. Lernt man in fast jedem Programmierbuch zu erst!!!
Bitte warten ..
Mitglied: lexa-lexa
15.12.2009 um 20:01 Uhr
Die guten alten DOS IRQs, das waren noch Zeiten. Nunja, so hatte ich die Aufgabe zwar nicht gemeint, aber gut ;)

Ich verlinke dir mal einen Beispielcode für die Verwendung von DirectDraw:
http://www.movsd.com/masm.htm

In "masmflip.zip" werden Nachrichten wie "WM_PAINT" gehandelt. Vielleicht kannst du daraus ableiten, was du suchst.
Bitte warten ..
Mitglied: Hacker
16.12.2009 um 13:54 Uhr
War schon sehr hilfreich, aber es wirft eine unwichtige Frage auf (Benutzt man nicht ADDR statt OFFSET in 32 Bit Programmen), ist jetzt aber uninteressant.

Ich bin zwar eher schlecht als recht in Englisch, ich kann aber bestimmt schon mal was mit anfangen.
Zuerst bastel ich mal das Grundgerüst des Programmes, dann sehe ich weiter.

Wenn wir gerade dabei sind, wie kann ich sinnvoll ein Array mit 55 Punktstrukturen aufsetzten? Verwalten wäre kein Problem aber meine Idee wäre:

point STRUCT
x dw ?
y dw ?
ENDS
idee STRUCT
point1 <>
point2 <>
...
ENDS

Ich meine, so könnt ihr euch das vorstellen. Zweite Möglichkeit wäre:

idee2 dw (55*2) DUP (?)

Spart zwar Text, und es wird praktisch nie direkt auf ein Element zugegriffen, aber es ist schwierig vorzustellen.

Wie wären eure Ideen (wenn's den eine andere Möglichkeit gibt)?
Bitte warten ..
Mitglied: Hacker
19.12.2009 um 08:22 Uhr
Vielen Dank für deinen Link, der hat mir genug gezeigt, was ich wissen muss.
Bitte warten ..
Mitglied: Zedeck
23.02.2011 um 11:04 Uhr
Wie wärs, wenn du einfach in den Projekteigenschaften das Ziel Framework von 3.5 auf 2.0 stellst?

lg
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Bestimmte Daten aus CSV per Windows BATCH Datei in .txt Format schreiben lassen. (9)

Frage von freshman2017 zum Thema Batch & Shell ...

Windows 10
gelöst Zeichenfolge in .reg Datei schreiben (Registry) (4)

Frage von MedicalAd zum Thema Windows 10 ...

Datenbanken
gelöst T-SQL: Inhalt verschiedener Spalten in eine Spalte schreiben (2)

Frage von Suilven zum Thema Datenbanken ...

Batch & Shell
gelöst Schreiben eines Strings mit Leerzeichen in eine Datei (6)

Frage von c20082005 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(6)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(5)

Anleitung von BassFishFox zum Thema Windows 10 ...

Administrator.de Feedback

Tipp: Ungelöste Fragen ohne Antwort in Tickeransicht farblich hinterlegen

Tipp von pattern zum Thema Administrator.de Feedback ...

Heiß diskutierte Inhalte
Windows Server
gelöst Update BackupExec 2015 auf 2016 führt zu SQL-Server Problem (16)

Frage von montylein1981 zum Thema Windows Server ...

Batch & Shell
gelöst Batch um Benutzer aus Sitzung abzumelden (15)

Frage von zeroblue2005 zum Thema Batch & Shell ...

LAN, WAN, Wireless
IP Sec Client legt Netzwerkkarte lahm (12)

Frage von mario87 zum Thema LAN, WAN, Wireless ...