tutorials.de Buch-Aktion 02/2012
ERLEDIGT
JA
ANTWORTEN
8
ZUGRIFFE
8270
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    wolli2003 wolli2003 ist offline Rookie
    Registriert seit
    May 2005
    Beiträge
    6
    Hallo,

    versuche eine einfache Anwendung für Windows CE zu schreiben, die einfach nur einige Programme startet. Dabei finde ich im Forum immer wieder den Code

    Process myPro = new Process();
    myPro.StartInfo.FileName = "\\windows\\ceplayer.exe";
    //myPro.StartInfo.WindowStyle = ProcessWindowStyle.Maximized;
    myPro.Start();

    Das funktioniert aber nicht. Der Compiler (ich arbeite mit Visual Studio .NET 2003) meldet mir den Fehler

    G:\Visual Studio Projects\SmartDeviceApplication1\SmartDeviceApplication1\Form1.cs(114): The type or namespace name 'Process' could not be found (are you missing a using directive or an assembly reference?)

    Kann mir jemand weiterhelfen? Bin in C# leider absoluter Anfänger und finde keine andere Möglichkeit, für Windows CE ein Programm zu schreiben.

    Danke
    Wolli
     

  2. #2
    Avatar von Christian Kusmanow
    Christian Kusmanow Christian Kusmanow ist offline Mitglied Diamant
    Registriert seit
    Aug 2004
    Ort
    Aachen (NRW)
    Beiträge
    2.208
    Blog-Einträge
    15
    Hallo wolli2003!
    The type or namespace name 'Process' could not be found (are you missing a using directive or an assembly reference?)
    Yes!
    Code :
    1
    
    [color=blue]using[/color] System.Diagnostics;
    MfG, cosmo
     
    MfG,
    Christian

    Wer sein Problem definiert, hat es schon halb gelöst!

    Bitte markiert eure Themen als erledigt. Sonst macht so ein Forum als Nachschlagewerk keinen Sinn.

    The Code Project! - C# Programming | C# / VB.NET Pendants

    Regeln + Netiquette

    Liebe FIAEs, verlasst euch nicht auf das was in der Berufsschule "vermittelt" wird
    und vor allem nicht auf das, was euch die IHK dazu erzählt!
    Die haben so viel Ahnung von dem Gewerk, wie der Bundestag vom Haushalt...

  3. #3
    Avatar von Norbert Eder
    Norbert Eder Norbert Eder ist offline Mitglied Diamant
    Registriert seit
    Feb 2004
    Ort
    Österreich / Graz
    Beiträge
    5.137
    Blog-Einträge
    51
    Im Compact Framework gibt es die Klasse Process nicht.

    Ich kann aber auf das OpenNETCF verweisen.
     

  4. #4
    wolli2003 wolli2003 ist offline Rookie
    Registriert seit
    May 2005
    Beiträge
    6
    Cosmo, danke für deinen Tip. Aber daran liegt es nicht, das hatte ich auch schon probiert. Norbert hat wohl recht, dass es die Klasse Process in dieser Umgebung nicht gibt. Ich versuche mal mit OpenNetCf klar zu kommen, obwohl ich noch nicht weiß, wie ich den Namespace OpenNETCF in Visual C# einbinden kann. Bis jetzt erkennt er ihn jedenfalls noch nicht.

    Gruß
    Wolli
     

  5. #5
    Avatar von Christian Kusmanow
    Christian Kusmanow Christian Kusmanow ist offline Mitglied Diamant
    Registriert seit
    Aug 2004
    Ort
    Aachen (NRW)
    Beiträge
    2.208
    Blog-Einträge
    15
    Zitat Zitat von wolli2003
    Norbert hat wohl recht, dass es die Klasse Process in dieser Umgebung nicht gibt.
    Wenn Du wüsstest wie oft er recht hat, das macht mir langsam angst.
    Zitat Zitat von wolli2003
    [...] obwohl ich noch nicht weiß, wie ich den Namespace OpenNETCF in Visual C# einbinden kann
    Weil man erst die Referenz auf die DLL im VS einstellen muss.
    Im Solution Explorer machst Du einen Rechtsklick auf 'References', wählst 'Add Reference...' aus und mit 'Browse...' wählst Du letztendlich deine DLL aus.
    Danach die Namspaces mit using einbinden und daruber freuen.

    MfG, cosmo
     
    MfG,
    Christian

    Wer sein Problem definiert, hat es schon halb gelöst!

    Bitte markiert eure Themen als erledigt. Sonst macht so ein Forum als Nachschlagewerk keinen Sinn.

    The Code Project! - C# Programming | C# / VB.NET Pendants

    Regeln + Netiquette

    Liebe FIAEs, verlasst euch nicht auf das was in der Berufsschule "vermittelt" wird
    und vor allem nicht auf das, was euch die IHK dazu erzählt!
    Die haben so viel Ahnung von dem Gewerk, wie der Bundestag vom Haushalt...

  6. #6
    wolli2003 wolli2003 ist offline Rookie
    Registriert seit
    May 2005
    Beiträge
    6
    Hallo Norbert,

    danke für deinen Tip. Habe mir das Smart Device Framework gezogen, komme aber nicht an OpenNETCF. Diagnostics heran. Muss man da nicht irgend eine DLL einbinden? Komme komplett aus der C++ Welt (Visual C++ und Borland sind kein Problem), aber mit dem C# habe ich doch so meine kleinen Probleme.

    Im Solution Explorer sehe ich unter References folgende Objekte:
    Interop.SHDocVw
    MSCorLib
    OpenNETCF
    OpenNETCF.Data
    OpenNETCF.Drawing
    OpenNETCF.Net
    OpenNETCF.Phone
    OpenNETCF.VisualBasic
    OpenNETCF.Web.Services2
    OpenNETCF.Windows.Forms
    OpenNETCF.WindowsCE.Forms
    OpenNETCF.Xml
    SDFInst
    SDFProjWiz
    SmartDeviceFramework
    System
    System.Data
    System.Drawings
    System.Windows.Forms
    System.XML

    Nach meiner Einschätzung sind die doch wohl fast alle überflüssig. Wo versteckt sich denn die relevante Diagnostics damit ich an die Process-Klasse komme?

    Habe im Code zusätzlich die usings eingebaut:

    using OpenNETCF;
    using OpenNETCF.Diagnostics;

    Aber der Compiler will davon einfach nichts wissen.

    Bin dir für deine Hilfe sehr dankbar.

    Gruß
    Wolli
     

  7. #7
    Avatar von Norbert Eder
    Norbert Eder Norbert Eder ist offline Mitglied Diamant
    Registriert seit
    Feb 2004
    Ort
    Österreich / Graz
    Beiträge
    5.137
    Blog-Einträge
    51
    Die einzelnen Klassen befinden sich nicht zwangsweise in den Teil-Namespaces. OpenNETCF ist eine freie Implementierung, die sich an das Compact-Framework hält und einfach einige Dinge erweitert.

    Unter http://www.opennetcf.org/library/ findest du eine Auflistung der Namespaces die zur Verfügung stehen.

    Als Anhaltspunkt kann ich dir folgendes mit auf den Weg geben:

    Namespace: OpenNETCF.ToolHelp
    Class: ProcessEntry

    Von da solltest du dich weiterarbeiten können.
     

  8. #8
    wolli2003 wolli2003 ist offline Rookie
    Registriert seit
    May 2005
    Beiträge
    6
    Jungs,

    ich habs endlich geschafft. An Cosmo und Norbert nochmals besten Dank. Schön dass einem hier im Forum so schnell und kompetent geholfen wird.

    Für alle anderen, die das Problem auch einmal haben, unter Windows CE aus einem Programm ein anderes aufzurufen, hier noch mal kurz der Lösungsweg:

    - den von Norbert empfohlenen OpenNETCF Framework downloaden und installieren (steckt komplett in einer MSI-Datei -> einfache Installation)
    - Dann in MS Visual Studio .NET 2003 unter "File->New->Projekt" ein Visual C# Projekt und im rechten Fenster die OpenNETCF Application wählen.
    - Im nächsten Dialog links "Windows CE" auswählen und rechts die Art der gewünschten Anwendung (habe mich hier für eine Konsolenanwendung entschieden, weil ich die Oberfläche nicht benötige)
    - Damit sind die wichtigsten Schritte schon durchgeführt, die OpenNETCF Klassen stehen ab jetzt zur Verfügung
    - Für den Programmaufruf noch das "using OpenNETCF.ToolHelp" einbinden und der Quellcode für den Programmstart sieht dann wie folgt aus:

    Process myPro = new Process();
    myPro.StartInfo.FileName = "\\windows\\ceplayer.exe";
    myPro.Start();

    - Dann das ganze zur EXE bilden
    - Auf dem Windows CE Gerät muss mindestens die OpenNETCF.dll mit bereitgestellt werden. Bei Oberflächen-Anwendungen natürlich auch noch die zusätzlichen .Forms und Drawings DLLs (packt der Compiler aber schon mit ins Verzeichnis der exe)
    - Das wars (eigentlich ganz simpel, wenn man weiß wie's geht)

    Gruß
    Wolli
     

  9. #9
    kaiserrudi kaiserrudi ist offline Grünschnabel
    Registriert seit
    Aug 2008
    Beiträge
    1
    Hi.
    Ich hab folgendes problem: ich möcht genau das erreichen, was hier besprochen wurde, eine exe aus einer andren heraus starten. ich hab jedoch weder ahnung noch die geforderten programme. also meine frage: kann einer von euch mir schnell eine solche .exe datei für Win CE machen? wäre voll cool. wenn ja, einfach kurz melden, dann geb ich die pfade un dateinamen durch.
    ich bedank mich schomma
    lg
    kaiserrudi
     

Ähnliche Themen

  1. Support fuer Postgresql in PHP unter XAMPP unter Windows aktivieren
    Von Thomas Darimont im Forum Hosting & Webserver
    Antworten: 2
    Letzter Beitrag: 24.08.10, 16:03
  2. Per linux unter Windows ein befehl ausführen
    Von LiVe im Forum Linux & Unix
    Antworten: 2
    Letzter Beitrag: 31.03.06, 13:37
  3. Antworten: 3
    Letzter Beitrag: 11.01.06, 09:32
  4. MouseEvents unter Unix anders als unter Windows
    Von wookenny im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 8
    Letzter Beitrag: 16.05.05, 12:30
  5. Antworten: 0
    Letzter Beitrag: 28.04.04, 23:43