Autor Beitrag
Bronstein
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 578
Erhaltene Danke: 1

WIN XP
Delphi 6 / Delphi 2006 / Delphi XE
BeitragVerfasst: Mi 18.06.08 21:21 
Hallo,
wir haben Siemens Bestückautomaten in unserem Betrieb. Jetzt bietet Siemens eine .Net-Schnittstelle an, mit der ich Daten aus der Datennbank lesen und schreiben kann.


In einem Siemens Forum steht, man soll die Schnittstelle "SPI" von Siemens verwenden, z.B. mit VB.NET


Ich habe jetzt leider keine Erfahrung mit .NET
Wie fange ich also am besten an?
Wie binde ich diese Option ein?
Gibt es ein geeignetes Tutorial?

_________________
Es gibt keine dummen Fragen nur dumme Antworten!!!
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Chefentwickler
Beiträge: 20334
Erhaltene Danke: 2118

Win 10
C# (VS 2017)
BeitragVerfasst: Mi 18.06.08 21:29 
Meine erste Empfehlung ist, nicht Delphi.NET zu verwenden.

Du kannst inzwischen noch nicht mal mehr WinForms-Anwendungen erstellen (wenn Du nicht auf einen Designer verzichten willst), an allen Ecken und Enden versucht man Win32-Schemata in .NET-Code zu pressen, Delphi.NET hängt bisher immer um Jahre der Entwicklung hinterher und Du schleppst immer irgendwelchen Borland-Code mit Dir rum.

Wenn Du bei einer Pascal-Sprache bleiben willst, schau Dir doch mal Oxygene an, ansonten ist C# auf jeden Fall eine sehr gute Alternative.

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
Bronstein Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 578
Erhaltene Danke: 1

WIN XP
Delphi 6 / Delphi 2006 / Delphi XE
BeitragVerfasst: Mi 18.06.08 22:03 
Das oxygene kenne ich jetzt gar nicht. Hab ich das richtig verstanden, dass das ein Tool für Visual Studio ist?

Ich möchte aber bei meinem Borland Delphi bleiben!

_________________
Es gibt keine dummen Fragen nur dumme Antworten!!!
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Chefentwickler
Beiträge: 20334
Erhaltene Danke: 2118

Win 10
C# (VS 2017)
BeitragVerfasst: Mi 18.06.08 22:07 
user profile iconBronstein hat folgendes geschrieben:
Das oxygene kenne ich jetzt gar nicht. Hab ich das richtig verstanden, dass das ein Tool für Visual Studio ist?

Ja, wobei Du eine Standard-Ausgabe vom Visual Studio mit nur Oxygene als Sprache drin dazu bekommst.

user profile iconBronstein hat folgendes geschrieben:
Ich möchte aber bei meinem Borland Delphi bleiben!
Du willst mit .NET arbeiten. Dafür ist Delphi ungeeignet. Um es mal verkürzt auszudrücken: .NET oder Delphi, beides geht im Moment nicht (wirklich).

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
Bronstein Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 578
Erhaltene Danke: 1

WIN XP
Delphi 6 / Delphi 2006 / Delphi XE
BeitragVerfasst: Mi 18.06.08 22:23 
Es werden doch aber Schulungen zu Delphi .Net angeboten. Beispiel:
www.lp-it.de/schulun...hi.net-schulung.php3

_________________
Es gibt keine dummen Fragen nur dumme Antworten!!!
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Chefentwickler
Beiträge: 20334
Erhaltene Danke: 2118

Win 10
C# (VS 2017)
BeitragVerfasst: Mi 18.06.08 22:27 
Ja, sicher. Ich habe auch nicht gesagt, dass Delphi.NET nicht existiert.

Aber es ist ein Unterschied, ob es etwas gibt und ob es sinnvoll ist, etwas einzusetzen. Delphi.NET ist eigentlich nur dann eine Möglichkeit, die man vielleicht mal in Betracht ziehen kann, wenn man eine bestehende Delphi-Anwendung auf .NET portieren will. Und auch dann sollte das nur ein Zwischenschritt sein, um die Anwendung langfristig zu einer "anständigen" .NET-Sprache zu portieren.

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
Bernhard Geyer
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 721
Erhaltene Danke: 3



BeitragVerfasst: Mi 18.06.08 23:05 
Die Frage ist ob "SPI" überhaupt ein .NET-Interface ist oder nur ein "schnödes" COM/OLE-Interface ist das man prima per Delphi.Win32 bedienen kann und der Hinweis auf VB.NET nur da ist weil niemand mehr sich mit VB herumärgern will
Bronstein Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 578
Erhaltene Danke: 1

WIN XP
Delphi 6 / Delphi 2006 / Delphi XE
BeitragVerfasst: Do 19.06.08 12:35 
Wenn man die Schnittstelle installiert erscheint schon:
Welcome to Siemens SIPLACE PRO Interface (SPI) .Net


Hier mal ein Code Beispiel aus VB
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
Imports Siemens.SiplacePro.SPI.ComponentModel.Architecture.Interfaces
Imports Biz = Siemens.SiplacePro.SPI.ComponentModel.Business.Objects
Imports BizInt = Siemens.SiplacePro.SPI.ComponentModel.Business.Interfaces
Imports Arch = Siemens.SiplacePro.SPI.ComponentModel.Architecture.Objects


Module Module1
    Public session As ISession

    Sub Main()
        session = Siemens.SiplacePro.SPI.ComponentModel.Architecture.Objects.Session.CurrentSession

        ' Schnellste Möglichkeit auf Existenz eines Objektes zu prüfen
        Dim boardIdCol As Arch.IdentityCollection
        boardIdCol = session.GetIdentityList("Board:Board1")
        Dim countCol As Long = boardIdCol.Count

        If (countCol = 0) Then

            ' Objekt neu erzeugen
            Dim identBoard As Arch.Identity
            Dim board As Biz.Board

_________________
Es gibt keine dummen Fragen nur dumme Antworten!!!
alzaimar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2889
Erhaltene Danke: 13

W2000, XP
D6E, BDS2006A, DevExpress
BeitragVerfasst: Do 19.06.08 12:41 
Es ist doch ziemlich einfach:
1. Mit Delphi für Win32 geht es nicht.
2. Delphi.NET ist Schrott
3. Lerne C# (ist eh besser)

Ob Du 2 und 3 beherzigst, ist Dir überlassen. Ich musste 'neulich' mal etwas in C# machen und nach ein paar Tagen hatte ich alles drauf, was ich in Delphi auch kann. Nur ist das nur 10% dessen, was mit C# wirklich machbar ist.

_________________
Na denn, dann. Bis dann, denn.
Robert.Wachtel
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 895
Erhaltene Danke: 7

Windows 7 Ultimate x64
D5 Ent, D7 Arch, RAD Studio 2010 Pro, VS 2008
BeitragVerfasst: Do 19.06.08 12:55 
user profile iconBronstein hat folgendes geschrieben:
[...] Ich möchte aber bei meinem Borland Delphi bleiben!

Zusätzlich zu den anderen richtigen Antworten möchte ich nur noch anmerken, dass Du gar nicht weisst, was Du versäumst... ;)
Bronstein Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 578
Erhaltene Danke: 1

WIN XP
Delphi 6 / Delphi 2006 / Delphi XE
BeitragVerfasst: Fr 15.08.08 04:29 
Kann mir jemand sagen, wie ich den obigen VB-Code in C# schreibe.
Damit ich den ersten Grundstein habe

_________________
Es gibt keine dummen Fragen nur dumme Antworten!!!
Carla
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 111
Erhaltene Danke: 2



BeitragVerfasst: Fr 15.08.08 08:27 
[quote="[user]Bronstein
Ich möchte aber bei meinem Borland Delphi bleiben![/quote]

Warum eigentlich klammern sich so viele Delphi Programmierer an dieses Entwicklungssystem ?
Da C# und Delphi den gleichen Vater haben, ist der Umstieg relativ einfach.
Delphi ist einfach eine Einbahnstrasse mit jahrelangen Rückstand und stagnierender Entwicklung.
Das Debuggen ist im Vergleich zu C# eine Zumutung und die Entwicklungsumgebung hat viele nervige Bugs.
Das Framework von Net ist um Größenordnungen mächtiger.
Mir kommt das bei einigen fast wie ein fundamentalistisches Glaubensbekenntnis vor.

Gruß Carla
Robert.Wachtel
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 895
Erhaltene Danke: 7

Windows 7 Ultimate x64
D5 Ent, D7 Arch, RAD Studio 2010 Pro, VS 2008
BeitragVerfasst: Fr 15.08.08 09:49 
user profile iconBronstein hat folgendes geschrieben:
Kann mir jemand sagen, wie ich den obigen VB-Code in C# schreibe.
Damit ich den ersten Grundstein habe


ausblenden 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:
using Siemens.SiplacePro.SPI.ComponentModel.Architecture.Interfaces
using Siemens.SiplacePro.SPI.ComponentModel.Business.Objects
using Siemens.SiplacePro.SPI.ComponentModel.Business.Interfaces
using Siemens.SiplacePro.SPI.ComponentModel.Architecture.Objects

public class module1
{
  public ISession session;

  public void Main()
  {
    session = Siemens.SiplacePro.SPI.ComponentModel.Architecture.Objects.Session.CurrentSession;

    // Schnellste Möglichkeit auf Existenz eines Objektes zu prüfen
    Arch.IdentityCollection boardIdCol = session.GetIdentityList("Board:Board1");
    long countCol = boardIdCol.Count;

    if (countCol == 0)
    {
      // Objekt neu erzeugen
      Arch.Identity identBoard;

      Biz.Board board;

[...]


hth

Moderiert von user profile iconChristian S.: Code- durch C#-Tags ersetzt
Bronstein Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 578
Erhaltene Danke: 1

WIN XP
Delphi 6 / Delphi 2006 / Delphi XE
BeitragVerfasst: Fr 15.08.08 12:01 
Ich bekomme jetzt folgende Meldung:
[C# Fehler] WinForm.cs(7): Der Typ oder Namespace 'Siemens' konnte nicht gefunden werden. Möglicherweise fehlt eine Anweisung oder ein Assemblyverweis.

_________________
Es gibt keine dummen Fragen nur dumme Antworten!!!
alias5000
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2145

WinXP Prof SP2, Ubuntu 9.04
C/C++(Code::Blocks, VS.NET),A51(Keil),Object Pascal(D2005PE, Turbo Delphi Explorer) C# (VS 2008 Express)
BeitragVerfasst: Fr 15.08.08 12:07 
Robert hat das ja nicht Copy&Paste fertig gemacht. Zusätzlich musst du in deinem Projekt natürlich auch die entsprechende Assembly (*.dll) einbinden.

Um C# an sich zu lernen oder sich mal Stichwortartig drin langzuhangeln, gibts viele Medien online. Z.B. das Openbook C# oder das Openbook Visual C#.

...und natürlich auch das C-Sharp-Forum der EE: www.c-sharp-forum.de ;)

Gruß
alias5000

_________________
Programmers never die, they just GOSUB without RETURN
Bronstein Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 578
Erhaltene Danke: 1

WIN XP
Delphi 6 / Delphi 2006 / Delphi XE
BeitragVerfasst: Fr 15.08.08 12:22 
Hallo,
wie kann ich die DLL einbinden. Ich habe den Borland C# Builder und dort eine neue Windows From Anwendung ausgewählt.

Geht das mit diesem überhaupt oder muss ich mir ein anderes Programm herunterladen!

_________________
Es gibt keine dummen Fragen nur dumme Antworten!!!
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Chefentwickler
Beiträge: 20334
Erhaltene Danke: 2118

Win 10
C# (VS 2017)
BeitragVerfasst: Fr 15.08.08 12:33 
Wenn Du jetzt doch C# benutuzen willst, dann lade Dir Visual C# 2008 Express runter. Der C# Builder ist völlig veraltet.

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
Bronstein Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 578
Erhaltene Danke: 1

WIN XP
Delphi 6 / Delphi 2006 / Delphi XE
BeitragVerfasst: Fr 15.08.08 12:52 
Okay, das habe ich heruntergeladen.


Wie kann ich jetzt die DLL einbinden?

_________________
Es gibt keine dummen Fragen nur dumme Antworten!!!
alias5000
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2145

WinXP Prof SP2, Ubuntu 9.04
C/C++(Code::Blocks, VS.NET),A51(Keil),Object Pascal(D2005PE, Turbo Delphi Explorer) C# (VS 2008 Express)
BeitragVerfasst: Fr 15.08.08 12:55 
Ich hab die englische Version, bei mir heißt das rechts im Solution Explorer "References". Dort fügst du die DLL mit ein (Popupmenü)

Gruß
alias5000

_________________
Programmers never die, they just GOSUB without RETURN