AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

ShellExecute NonVCL Version

Ein Thema von sharkx · begonnen am 2. Nov 2003 · letzter Beitrag vom 2. Nov 2003
Antwort Antwort
Seite 1 von 2  1 2      
sharkx

Registriert seit: 24. Feb 2003
Ort: St. Ingbert
211 Beiträge
 
Delphi 7 Enterprise
 
#1

ShellExecute NonVCL Version

  Alt 2. Nov 2003, 12:57
Hallo,

Zur zeit schreibe ich gerade an einer dll die mir unter anderem auch eine bestimmte exe starten soll. Natührlich müsste ich die dll so klein wie möglich halten, daher meine Frage.

1.) kann ich die ShellExecute Function auch NonVCL nutzen, wenn die restlichen Functionen auf VCL geschrieben wurden?
2.) Was sollte ich am besten darüber lesen bzw. was muss ich beachten?



vielen dank :>
Programming today is a race between Software Engineers striving to build bigger and better idiot-proof Programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning!
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: ShellExecute NonVCL Version

  Alt 2. Nov 2003, 13:00
Shellexecute ist eine WinAPI Funktion und hat nichts mit der VCL zu tun. Deklariert ist sie in ShellAPI.pas
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
sharkx

Registriert seit: 24. Feb 2003
Ort: St. Ingbert
211 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: ShellExecute NonVCL Version

  Alt 2. Nov 2003, 13:01
ja aber wenn ich die ShellApi.pas einbinde, wird die dll direkt um ein vielfaches grösser. Und genau das möchte ich verhindern
Programming today is a race between Software Engineers striving to build bigger and better idiot-proof Programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning!
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: ShellExecute NonVCL Version

  Alt 2. Nov 2003, 13:08
Moin Sharkx,

dann musst Du Dir die Funktion selber importieren.
Wie man so etwas macht findest Du hier oft beschrieben. Such mal nach Hier im Forum suchenexternal oder Hier im Forum suchenLoadLibrary.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: ShellExecute NonVCL Version

  Alt 2. Nov 2003, 13:08
Dann lad die DLL dynamisch und importier die Funktion zur Laufzeit. Wie das geht, findest du hier: http://www.luckie-online.de/files/demos/
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
sharkx

Registriert seit: 24. Feb 2003
Ort: St. Ingbert
211 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: ShellExecute NonVCL Version

  Alt 2. Nov 2003, 13:13
Vielen Dank für die zahlreichen Antworten :-)

Da es eine mIRC dll ist, wird sie auch dynamisch geladen. Werde mir mal die beiden Antworten von Lucky und Christian Seehase genauer anschaun und dann für die best mögliche Funktion entscheiden.
Programming today is a race between Software Engineers striving to build bigger and better idiot-proof Programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning!
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#7

Re: ShellExecute NonVCL Version

  Alt 2. Nov 2003, 13:18
LOL. Was dir Christian vorgeschlagen hat, mache ich in meinem Demo.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: ShellExecute NonVCL Version

  Alt 2. Nov 2003, 13:21
Moin Sharkx,

ob Du eine Funktion dynamisch oder statisch importierst hat nichts damit zu tun, dass Du sie in einer DLL verwenden willst.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
sharkx

Registriert seit: 24. Feb 2003
Ort: St. Ingbert
211 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: ShellExecute NonVCL Version

  Alt 2. Nov 2003, 13:32
@Luckie: Woher soll ich wissen was du in deiner Demo machst, wenn ich sie mir nicht angeschaut habe? Bzw. woher soll ich den Unterschied zwischen deiner Demo und Christians Vorschlag wissen, wenn ich beides weder gesehen noch gelesen hab? ;PPP


@Christian: Ob ich nun die dll dynamisch oder Statisch lade, änder ja nix an meinen Functionen. Darüber bin ich mir bewusst. Nur wusste ich nicht wie ich eine Function zur Laufzeit importiere ;)
Programming today is a race between Software Engineers striving to build bigger and better idiot-proof Programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning!
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: ShellExecute NonVCL Version

  Alt 2. Nov 2003, 13:35
Moin Sharkx,

nur Funktionen aus DLLs können dynamisch oder statisch importiert werden, nicht die DLLs.

[EDIT]
@Chewie: Hab's korrigiert
[/EDIT]
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:05 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz