Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
c# Form in VB integrieren
c#_gast
myCSharp.de - Member



Dabei seit:
Beiträge: 71

Themenstarter:

c# Form in VB integrieren

beantworten | zitieren | melden

hallo.
ich mach folgendes: ich habe ein Rahmenprogramm in VB6, in welches man DLLs(komplette Anwendungen) hineinlädt und diese dann verwenden kann.
jetz habe ich so eine DLL in C# geschrieben, funktioniert auch alles, außer das C# Programm (nur ein Formular als Oberfläche) als extra Anwendung erscheint im TaskManager etc. . das ist störend in meinem vb-programm, weil beide kommunizieren.

kann man das irgendwie verhindern, das sich c#-form extra startet bzw. erscheint??

es soll quasi im vb Form integriert sein als child.


danke
private Nachricht | Beiträge des Benutzers
Yellow
myCSharp.de - Experte

Avatar #avatar-2347.png


Dabei seit:
Beiträge: 832

beantworten | zitieren | melden

hallo C#_gast,

was stört Dich denn nun genau?

Soll die C#-Form nicht in der Taskleiste erscheinen? Dazu gibt es in der Form eine Property "ShowInTaskbar" die du auf false setzen musst.

Wenn du die .NET-Anwendung als DLL in VB6 verwendest wird sie "in-process" ausgeführt und erscheint somit auch nicht im TaskManager.

Soll das .NET Fenster sich für den User anfühlen als wäre es ein Teil deiner VB6 Anwendung, musst du das Fenster mit Windows-API Funktionen kapern. Siehe auch .NET-Control in VB6 verwenden

-yellow
Selbst ein Weg von tausend Meilen beginnt mit einem Schritt (chinesisches Sprichwort).

Mein Blog: Yellow's Blog auf sqlgut.de
private Nachricht | Beiträge des Benutzers
c#_gast
myCSharp.de - Member



Dabei seit:
Beiträge: 71

Themenstarter:

beantworten | zitieren | melden

Zitat
Original von Yellow

Soll die C#-Form nicht in der Taskleiste erscheinen? Dazu gibt es in der Form eine Property "ShowInTaskbar" die du auf false setzen musst.

das hab ich auch schon gemacht und es funktioniert
Zitat
Wenn du die .NET-Anwendung als DLL in VB6 verwendest wird sie "in-process" ausgeführt und erscheint somit auch nicht im TaskManager.

sie erscheint aber im taskmanager, das ist ja das problem.
Zitat
Soll das .NET Fenster sich für den User anfühlen als wäre es ein Teil deiner VB6 Anwendung, musst du das Fenster mit Windows-API Funktionen kapern. Siehe auch .NET-Control in VB6 verwenden
das mit dem handle übergeben machich schon, sonst könnte die vb6 anwendung nicht auf die c# form zugreifen.

das problem entsteht, wenn ich eine Touchscreen-Tastatur einblende (wird vom vb6 programm gemacht) und zu der zeit meine c# form im vordergrund ist. dann wird die vb6 anwendung in und die tastatur in den vordergrund gebracht. jetz kann ich zwar mit ALT+TAB meine c# form wieder einblenden und die tastatur bleibt auch da, doch jedesmal wenn ich was an der tastatur mach, verschwindet die c# form wieder!
das darf nich passieren.
private Nachricht | Beiträge des Benutzers