CD laufwerk öffnen?
lima-city → Forum → Programmiersprachen → C/C++ und D
base
befehl
button
code
compiler
editor
erforderliche methode
fehler
label
laufwerk
methode
null
point
private system
region
set
system
text
verwaltete ressourcen
windows
-
Hallo,
ich möchte mit C++ mein CD laufwerk öffnen wenn ich auf einen button drücke.
aber die befehle die ich gefunden habe wollen nicht so wie ich das willXD
mein code
namespace WindowsFormsApplication1 { partial class Form1 { /// <summary> /// Erforderliche Designervariable. /// </summary> private System.ComponentModel.IContainer components = null; /// <summary> /// Verwendete Ressourcen bereinigen. /// </summary> /// <param name="disposing">True, wenn verwaltete Ressourcen gelöscht werden sollen; andernfalls False.</param> protected override void Dispose(bool disposing) { if (disposing && (components != null)) { components.Dispose(); } base.Dispose(disposing); } #region Vom Windows Form-Designer generierter Code /// <summary> /// Erforderliche Methode für die Designerunterstützung. /// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden. /// </summary> private void InitializeComponent() { this.button1 = new System.Windows.Forms.Button(); this.label1 = new System.Windows.Forms.Label(); this.SuspendLayout(); // // button1 // this.button1.Location = new System.Drawing.Point(102, 113); this.button1.Name = "button1"; this.button1.Size = new System.Drawing.Size(81, 20); this.button1.TabIndex = 0; this.button1.Text = "ja"; this.button1.UseVisualStyleBackColor = true; this.button1.Click += new System.EventHandler(this.button1_Click_1); // // label1 // this.label1.AutoSize = true; this.label1.Location = new System.Drawing.Point(85, 52); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(104, 13); this.label1.TabIndex = 1; this.label1.Text = "CD laufwerk öffnen "; this.label1.Click += new System.EventHandler(this.label1_Click); // // Form1 // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(292, 266); this.Controls.Add(this.label1); this.Controls.Add(this.button1); this.Name = "Form1"; this.Text = "Form1"; this.ResumeLayout(false); this.PerformLayout(); } #endregion private System.Windows.Forms.Button button1; private System.Windows.Forms.Label label1; } }
so und den code den ich gefunden habe:
#mciSendString("Set CDAudio Door Closed\0",ptrChrRc,256,NULL);
könnt ihr mir helfen???
LG -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
christian1603 schrieb:
Hallo,
ich möchte mit C++ mein CD laufwerk öffnen wenn ich auf einen button drücke.
aber die befehle die ich gefunden habe wollen nicht so wie ich das willXD
mein code
namespace WindowsFormsApplication1 { partial class Form1 { /// <summary> /// Erforderliche Designervariable. /// </summary> private System.ComponentModel.IContainer components = null; /// <summary> /// Verwendete Ressourcen bereinigen. /// </summary> /// <param name="disposing">True, wenn verwaltete Ressourcen gelöscht werden sollen; andernfalls False.</param> protected override void Dispose(bool disposing) { if (disposing && (components != null)) { components.Dispose(); } base.Dispose(disposing); } #region Vom Windows Form-Designer generierter Code /// <summary> /// Erforderliche Methode für die Designerunterstützung. /// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden. /// </summary> private void InitializeComponent() { this.button1 = new System.Windows.Forms.Button(); this.label1 = new System.Windows.Forms.Label(); this.SuspendLayout(); // // button1 // this.button1.Location = new System.Drawing.Point(102, 113); this.button1.Name = "button1"; this.button1.Size = new System.Drawing.Size(81, 20); this.button1.TabIndex = 0; this.button1.Text = "ja"; this.button1.UseVisualStyleBackColor = true; this.button1.Click += new System.EventHandler(this.button1_Click_1); // // label1 // this.label1.AutoSize = true; this.label1.Location = new System.Drawing.Point(85, 52); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(104, 13); this.label1.TabIndex = 1; this.label1.Text = "CD laufwerk öffnen "; this.label1.Click += new System.EventHandler(this.label1_Click); // // Form1 // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(292, 266); this.Controls.Add(this.label1); this.Controls.Add(this.button1); this.Name = "Form1"; this.Text = "Form1"; this.ResumeLayout(false); this.PerformLayout(); } #endregion private System.Windows.Forms.Button button1; private System.Windows.Forms.Label label1; } }
so und den code den ich gefunden habe:
#mciSendString("Set CDAudio Door Closed\0",ptrChrRc,256,NULL);
könnt ihr mir helfen???
LG
DWORD d = 0; DeviceIoControl(handlezudeinemcdrom, IOCTL_STORAGE_EJECT_MEDIA, NULL, 0, NULL, 0, &d, NULL);
-
Danke schonmal
census schrieb:
DWORD d = 0; DeviceIoControl(handlezudeinemcdrom, IOCTL_STORAGE_EJECT_MEDIA, NULL, 0, NULL, 0, &d, NULL);
mh.. ich programmire mir Microsoft Visual C# 2008 Express Edition und das gibt mir immer nen error aus.???! -
Fehler 42?
Fehler ID10T?
Kompilerfehler? Linkerfehler? Laufzeitfehler? Herzfehler? Rechtschreibfehler? Lüfterfehler?
Wie wäre es denn wenn du den Fehler im Detail postest und dazu deine errno.h ?
EDIT: Oder wie auch immer die errno.h unter Windows heißt.
Beitrag zuletzt geändert: 5.9.2009 14:41:12 von census -
Bei mir ist DeviceIoControl rot unterstrichen. wenn ich anklicke um den fehler anzeigen zulassen steht da immer "Die methode muss einen Rückgabetyp besitzen"
-
Das deine IDE was bunt anmalt ist ja nicht wirklich ein Fehler. Was sagt denn der Compiler, wenn du ihn drüberlaufen lässt? Lies doch mal die MSDN von Microsoft, von denen ist immerhin das Betriebssystem:
http://msdn.microsoft.com/en-us/library/aa363147%28VS.85%29.aspx -
Ich hätte auch gerne gewusst wie man dass cd laufwerk öffnen kann. Aber leider benutze ich den Compiler von C++ Borland Builder 6.
-
Jungs, es ist doch völlig egal welchen Compiler man benutzt. Die Windows-API mit der ihr redet ist doch dieselbe, egal welches wilde Gebäude obendrüber steht.
Das rot unterstrichene des ersten Posters heißt wahrscheinlich: "Ich die IDE kenne diese Routine nicht, weil der Author weder die entsprechende Header eingebunden hat, noch die entsprechende Lib gelinkt hat."
Sascha, wenn du für Windows programmierst, kannst du natürlich die Windows-API nutzen und diese hat - wie bereits beschrieben - Routinen zum Auswerfen von Medien. Ob den Compiler jetzt Borland, Berta oder Christof heißt ist egal. Du musst deiner IDE halt nur sagen, wo die Header liegen und wo die Bibliotheken liegen mit denen er linken soll. Aber das ist bei allen IDEs so, egal ob Boralnd, Visual Studio, Trolltech QT Creator oder eclipse. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage