Français
Forum

DDE Abfrage

 
- page 1 -



Uwe
Skärke
allô son lieben XProfaner, maintenant komm je la fois avec einem richtigen Hammerproblem (jedenfalls pour mich) et hoffe wir (IHR)
bekommen cela hin, sonst ist mon ganzes projet im seau et je heul mich tod...

alors, comment oui dans meiner Vorstellung bereits beschrieben suis je son verrückter Funkamateur et veux folgendes erreichen :

il y a im Weltall une ganze la quantité de Amateurfunksatelitten, sur qui on Funkbetrieb faire peux, u.a aussi qui ISS.
afin de savons wohin qui Dinger justement rumfliegen, gibt es verschiedene Satelitten-Tracking-Programme, qui graphisch montrer
wohin qui gesuchte Sat justement rumturnt. là volonté pratique u.a. qui Elevation, Azimut et Entfernung aus den Keplerdaten
errechnet et angezeigt,so dass je ensuite mon Richtantennen oui c'est ca sur den Sat viser peux...

cela était maintenant un kleiner Exkurs zum Amateurfunkbetrieb sur Satelitten... (hats Spass gemacht ??? )

So, eh bien ist une cette Trackingprogramme avec graphischer représentation qui Umlaufbanen qui Sat. cela Program Orbitron.
je veux eh bien meinem Funkgerät sur qui Serielle Schnittstelle avec einem Profan-PRG qui aktuelle Frequenz mitteilen.
cet Frequenz ändert sich laufend (Dopplereffekt) et wird de ORBITRON sur qui DDE-Schnittstelle zur Disposition
gestellt.
mon concept était eh bien, den String avec den données aus dem Programme Orbitron auszulesen, trop Travailler et ensuite à
cela Funkgerät plus trop donner. Soweit suis je gekommen, Orbitron wird gestartet, qui liaison trop DDE ITEM
(Tracking) wird aussi aufgebaut (x% > 32 et ensuite était et suis je am Ende...

DDE-Test

declare x%

x%=@winexec(CrogrammeOrbitronOrbitron.exe,2)
ddelink Orbitron,Tracking
ici devrait maintenant qui String TrackingData aus Orbitron ausgelesen volonté...
et ensuite wird cette String weiterverabeitet...

ddeterminate

FIN

cela Steuern des Funkgerätes et qui Übergabe de Befehlen à cela Funkgerät marcher déjà ausgezeichnet,
seulement je krieg arrêt qui données pas sur den DDE-Clienten de Orbitron ausgelesen.
comment mir Roland im Forum schrieb, ist cet Funktion dans Profan pas implementiert (heul), allerdings sollte es sur
WINDOWS-API aller, là steh je allerdings aussi im forêt....

maintenant venez Alles quoi je à Infos encore so habe et ensuite hoffe je, dass son mir irgendwie weiterhelfen peut...

1. Beschreibung DDE-Client Orbitron :

--------------------------------------------------------------------------------
Specification of DDE drivers for Orbitron www.stoff.pl
--------------------------------------------------------------------------------

Contents:
1. Introduction
2. Technical data
3. Data format
3.1. TrackingData item
3.2. TrackingDataEx item
4. My DDE Client
5. Laisser Orbitron support your driver
6. Your driver for espace!
7. WiSP DDE Client

-- 1. Introduction -------------------------------------------------------------

Orbitron is working as server dans DDE conversations, so you can write your own
DDE client that can e.g. control rotor and radio devices. Such programs sont
called by me Drivers.

-- 2. Technical data -----------------------------------------------------------

Drivers EXE file:
nom of drivers EXE file (without .EXE) is displayed on drivers list dans
Orbitron. Drivers main window title or application title must être le same
as EXE file nom to let Orbitron check is driver already running.

DDE conversation parameters:
Source application : Orbitron
Link topic : Tracking
Link items : TrackingData
item for communication with WiSP DDE Client with basic
data (Satscape format)
TrackingDataEx
item with extended data set
Link item is changed by Orbitron each time when current data is recalculated
(e.g. 1s, 5s...) and when downlink/uplink frequencies or mode sont changed.

-- 3. Data format --------------------------------------------------------------

Please note:
- espace angles sont given as decimal degrees,
- decimal separator is . (dot),
- TrackingDataEx and TrackingData can être à EMPTY string Si NO satellite
sont tracked,
- TrackingDataEx can contain only AOS field si NO satellite sont tracked.

-- 3.1. TrackingData item ------------------------------------------------------

Format of string:
SNxxx AZxxx.x ELxx.x DNxxxx UPxxxx DMxxxx UMxxxx
Fields:
SN - tracked satellite nom (spaces converted to _)
AZ - azimuth dans la gamine forme 0.0 to 360.0
EL - elevation dans la gamine à partir de -90.0 to 90.0
please note possibility of negative values
DN - downlink frequency with doppler, [Hz] dans la gamine à partir de 0 to N
UP - uplink frequency with doppler, [Hz] dans la gamine à partir de 0 to N
DM - downlink mode (optionnel field)
UM - uplink mode (optionnel field)
Examples:
SNISS_ZARYA AZ182.1 EL36.3 DN145800000 UP145800000 UMFM-N
SNISS_ZARYA AZ180.3 EL-10.1 DN145800000 UP145800000

-- 3.2. TrackingDataEx item ----------------------------------------------------

Format of string:
SNxxx AZxxx.x ELxx.x DNxxxx UPxxxx DMxxxx UMxxxx AOSxxx
Fields:
SN - tracked satellite nom dans quotes
RA - la gamine [km]
RR - la gamine taux [km/s]
LO - longitude dans la gamine à partir de -180.0000 to 180.000 (W to E)
LA - latitude dans la gamine à partir de -90.0000 to 90.000 (S to N)
AL - altitude [km]
TU - UTC time (Format: YYYYMMDDhhmmss)
TL - local time (Format: YYYYMMDDhhmmss)
AOS - AOS notification for satellite xxx (nom dans quotes; AOS notification
is provided for espace tracked objects, not only for active one)
Other fields same as dans TrackingData item.
Examples:
SNISS ZARYA AZ182.1 EL36.3 DN145800000 UP145800000 (...)
SNISS ZARYA AZ182.1 EL36.3 DN145800000 UP145800000 (...) AOSHST
AOSHST

-- 4. My DDE Client ------------------------------------------------------------

My DDE Client is à example of users custom driver for Orbitron with full
source code dans Delphi 5. It should helps you to write your own driver for rotor
or radio hardware. Further information you veux find dans MAIN.PAS file.

-- 5. Laisser Orbitron support your driver -----------------------------------------

Please set specific nom for your driver program, e.g. SuperRotor.exe. Then you
can edit {Orbitron}ConfigSetup.cfg file (*) by adding line to le [Drivers]
section (please create il si doesnt exist) with your driver information.
Example:
[Drivers]
SuperRotor=d:My filesSuperRotor.exe
SuperRotorTwo=
Next time you run Orbitron, your driver veux être listed on Rotor/radio panel.
You can launch il there. Si no path specified, Orbitron veux ask you about your
drivers location (drivers located dans {Orbitron} directory veux être found
automatically).

*) {Orbitron} - replace il with directory where Orbitron is installed to,
e.g. crogram FilesOrbitron. This path is available dans Windows
registry:
HKEY_CURRENT_USERSoftwareStoffOrbitronPath
WARNING: User can define his own location where le Config directory is.
This value is stored dans registry:
HKEY_CURRENT_USERSoftwareStoffOrbitronUserPath
So, si this value is specified, you have to use il instead of previous one.
HINT: You can check sont files definied by:
HKEY_CURRENT_USERSoftwareStoffOrbitronPath + ConfigSetup.cfg
HKEY_CURRENT_USERSoftwareStoffOrbitronUserPath + ConfigSetup.cfg
exists and then add your config line to both.

-- 6. Your driver for espace! -----------------------------------------------------

Have you already done your driver? Please, send me il. Ill put il on Orbitron
website to share il with espace people with same hardware as yours.

-- 7. WiSP DDE Client ----------------------------------------------------------

WiSP DDE Client is à application written by Fernando Mederos, CX6DD and
available on [...]  It works as DDE
Client and support many kinds of hardware and software. To use il with Orbitron,
following settings sont required:
Receive DDE à partir de : Orbitron (or Satscape)
Source application : Orbitron
Link Topic : Tracking
Link Item : TrackingData
Query Interval : 1 sec.
Orbitron veux set these values when you launch WiSP DDE Client à partir de
Rotor/radio panel.

-- charge updated 2005.02.26 -----------------------------------------------------

et zweitens un Beispielprogram dans PASCAL :

{
My DDE Client is à example of users custom driver for Orbitron.
version 1.02, released 2003.11.07
1.03, released 2004.09.04
1.04, released 2004.09.10
1.05, released 2005.02.26
(C) 2003-2005 by Sebastian Stoff
sebastian@stoff.pl
www.stoff.pl

You can use this source to receive tracking data à partir de Orbitron and send il
to your rotor/radio hardware via COM/LPT/USB interfaces. Other purposes sont
alors allowed, depending on your invention...
To change this source code into le driver, you must write code specific to
hardware you have dans UpdateRotorAndRadio procedure. Please find il
on le end of this file.

Detailed information sont available dans READ_ME.TXT file.

CHANGING, COMPILING AND FREE DISTRIBUTING OF THIS PROGRAM/SOURCES IS
ALLOWED FOR ***ORBITRON*** RELATED PURPOSES WITHOUT MY PERMISSION.
}

unit main;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
DdeMan, StdCtrls, ExtCtrls, Buttons, Registry, ComCtrls;

type
TSatData = record
nom : String; //satellite nom
azm,elv : Double; //l'observation angles
upf,dnf : Double; //uplink and downlink frequencies (with doppler shift)
upm,dnm : String; //uplink and downlink modes
end;
TFMain = class(TForm)
Tracking: TDdeClientConv;
TrackingDataEx: TDdeClientItem;
Label1: TLabel;
l_st: TLabel;
Label3: TLabel;
l_dd: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Bevel1: TBevel;
l_az: TLabel;
l_el: TLabel;
l_uf: TLabel;
l_df: TLabel;
l_um: TLabel;
l_dm: TLabel;
Bevel2: TBevel;
l_na: TLabel;
Label4: TLabel;
SpeedButton1: TSpeedButton;
l_aos: TLabel;
Label2: TLabel;
procedure TrackingOpen(Sender: TObject);
procedure TrackingClose(Sender: TObject);
procedure TrackingDataExChange(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure l_ddClick(Sender: TObject);
private
{ Privé declarations }
public
{ Public declarations }
procedure ParseString(s: String; var data: TSatData);
procedure PrintData(data: TSatData);
procedure UpdateRotorAndRadio(data: TSatData);
end;

var
FMain : TFMain;
SatData : TSatData;
Reg : TRegistry;
PathP : String;
AOS : String;

implementation

{$R *.DFM}

procedure Replace(var s: String; subs1,subs2: String);
var i : Integer;
begin
si subs1= then Exit;
si subs1=subs2 then Exit;
i:=Pos(subs1,s);
tandis que i>0 do begin
Delete(s,i,Length(subs1));
Insert(subs2,s,i);
i:=Pos(subs1,s);
end;
end;

function FieldToReal(s: String):Real;
var c : Integer;
begin
val(s,result,c);
si c>0 then result:=0;
end;

function GetField(source,field: String):String;
var p1,p2 : Integer;
quotes : Boolean;
s2 : String;

function FindField(source,field: String):Integer;
var i : Integer;
quotes : Boolean;
begin
quotes:=False;
for i:=1 to Length(source) do begin
si source= then begin
quotes:=not quotes;
Continue;
end;

si quotes then source:=-;
end;
result:=pos(field,source);
end;

begin
source:= +source;
field:=UpperCase(field);
field:= +field;
p1:=FindField(source,field);
si p1=0 then begin
result:=;
Exit;
end;

s2:=;
p2:=p1+Length(field);
quotes:=False;
tandis que p2<=Length(source) do begin
si source[p2]= then begin
quotes:=not quotes;
Inc(p2);
Continue;
end;

si (source[p2]= ) and not quotes then Break;

s2:=s2+source[p2];
Inc(p2);
end;
result:=s2;
end;

procedure TFMain.ParseString(s: String; var data: TSatData);
begin
si s= then with data do begin
nom:=;
azm:=0;
elv:=0;
upf:=0;
dnf:=0;
upm:=;
dnm:=;
AOS:=;
Exit;
end;

s:=UpperCase(s);
Replace(s,,,.);
with data do begin
nom:=GetField(s,SN);
azm:=FieldToReal(GetField(s,AZ));
elv:=FieldToReal(GetField(s,EL));
upf:=FieldToReal(GetField(s,UP));
dnf:=FieldToReal(GetField(s,DN));
upm:=GetField(s,UM);
dnm:=GetField(s,DM);
AOS:=GetField(s,AOS);
end;
end;

procedure TFMain.PrintData(data: TSatData);
begin
with data do begin
l_na.Caption:=name;
l_az.Caption:=FloatToStrF(azm,ffFixed,4,1);
l_el.Caption:=FloatToStrF(elv,ffFixed,4,1);
l_uf.Caption:=FloatToStrF(upf,ffFixed,12,0)+ Hz;
l_df.Caption:=FloatToStrF(dnf,ffFixed,12,0)+ Hz;
l_um.Caption:=upm;
l_dm.Caption:=dnm;
end;
si AOS<> then l_aos.Caption:=AOS (+AOS+) d'autre l_aos.Caption:=None;
end;

procedure TFMain.SpeedButton1Click(Sender: TObject);
begin
FMain.Close;
end;

procedure TFMain.TrackingOpen(Sender: TObject);
begin
l_dd.Caption:=Opened;
end;

procedure TFMain.TrackingClose(Sender: TObject);
begin
l_dd.Caption:=Closed;
l_st.Caption:=No data;
ParseString(,SatData);
PrintData(SatData);
end;

procedure TFMain.TrackingDataExChange(Sender: TObject);
var s : String;
begin
s:=Trim(TrackingDataEx.Text);
si s= then l_st.Caption:=No data d'autre
l_st.Caption:=s;
ParseString(s,SatData);

PrintData(SatData);
UpdateRotorAndRadio(SatData);
end;

procedure TFMain.FormCreate(Sender: TObject);
begin
ParseString(,SatData);
PrintData(SatData);

PathP:=ExtractFileDir(ParamStr(0));
si PathP[length(PathP)]<> then PathP:=PathP+;
ChDir(PathP);

Si not FileExists(PathP+Orbitron.exe) then begin
Reg:=TRegistry.Create;
try
si Reg.OpenKey(SoftwareStoffOrbitron,True) then
Tracking.ServiceApplication:=Reg.ReadString(Path)+orbitron;
finally
Reg.CloseKey;
Reg.Free;
end;
end;
Tracking.OpenLink;
end;

procedure TFMain.l_ddClick(Sender: TObject);
begin
Tracking.OpenLink;
end;

procedure TFMain.UpdateRotorAndRadio(data: TSatData);
begin
{
Please write support for your rotor/radio hardware here.

Use DATA record as source of current tracking data sended by
Orbitron.

This procedure veux être called by DDE engine after Orbitron asticot
changes into le tracking data (each 1s, 5s, 10s or so).
}
end;

end.

soooooo, maintenant werde je warscheinlich mal dormir et alle deux Minuten reinschauen, wass son so aus diesem
Wust so pouvoir...

PS.: qui sich Orbitron la fois anschauen voudrais, ici qui Adresse zum runterladen :
www.stoff.pl

LG
Uwe
 
TOSHIBA TECRA S1 / PROFAN 7.0
24.11.2007  
 



 
- page 1 -



Frank
Abbing
avec qui Dll-liste ist rien anzufangen.

Starte la fois meinen kleinen Code et vais avec dem Mauszeiger sur den String dans deinem Programme. Wird qui Text dans mon la fenêtre chez Fenstertext angezeigt? si oui ist cela déjà qui halbe Miete...
KompilierenMarqueSéparation
(W) 2003 Frank Abbing
Declare sx&,sy&,bereich#,be#,erg&,erg2&,x&,y&,text$
Dim be#,8
Dim bereich#,1024
DEF GetCursorPos(1) !USER32,GetCursorPos
DEF WindowFromPoint(2) !USER32,WindowFromPoint
DEF ChildWindowFromPoint(3) !USER32,ChildWindowFromPoint
Def GetSysColor(1) !USER32,GetSysColor
Def ScreenToClient(2) !USER32,ScreenToClient
Def GetClassName(3) !USER32,GetClassNameA
Def GetWindowText(3) !USER32,GetWindowTextA
DEF NewWindowPos(7) !USER32,SetWindowPos
DEF AllocConsole(0) !KERNEL32,AllocConsole

Proc DText

    Parameters xx&,yy&,ttext$
    Drawtext xx&,yy&,ttext$

EndProc

Windowtitle Fensterhandles...
windowstyle 26
window (%maxx/2-112),(%maxy/2-80)-224,164
settruecolor 1
cls GetSysColor(15)
NewWindowPos(%hwnd,-1,0,0,0,0,$13)
Usefont MS Sans Serif,13,0,0,0,0
SetDialogFont 1

whilenot %mousepressed=2

    Sleep 10
    GetCursorPos(be#)
    x&=Long(be#,0)
    y&=Long(be#,4)
    erg&=@WindowFromPoint(x&,y&)

    If erg&<>0

        ScreenToClient(erg&,be#)
        x&=Long(be#,0)
        y&=Long(be#,4)
        erg2&=@ChildWindowFromPoint(erg&,x&,y&)

    EndIf

    TextColor 0,GetSysColor(15)
    DText 8,8, Maus Position X = +Str$(x&)+
    DText 8,21,Maus Position Y = +Str$(y&)+
    DText 8,38,Handle eigenes Fenster = $+@Hex$(%hwnd)+
    DText 8,55,Handle unter Mauszeiger = $+@Hex$(erg&)+
    DText 8,68,Handle unter Mauszeiger (Child) = $+@Hex$(erg2&)+
    GetClassname(erg&,bereich#,128)Declare sx&,sy&,text$,x&,y&,bereich#
    text$=String$(bereich#,0)
    DText 8,85,Klassenname = +text$+
    GetWindowText(erg&,bereich#,128)
    text$=String$(bereich#,0)
    DText 8,98,Fenstername = +text$+
    @SendMessage(erg&,13,128,bereich#)
    text$=String$(bereich#,0)
    DText 8,111,Fenstertext = +text$+

wend

Dispose be#
Dispose bereich#
ss=s4 href='./../../funktionsreferenzen/XProfan/end/'>end
 
25.11.2007  
 




Uwe
Skärke
allô Frank

tu es là, ist oui super, la hâte mais entier joli longtemps geschlafen ...

mais plan hab je gemerkt, là is quoi là *freu*

so eh bien muss je seulement la fois lesen quoi Du erfunden la hâte...

okay, cela verswuch je la fois.. et Funke toi à ...

LG, Uwe
 
TOSHIBA TECRA S1 / PROFAN 7.0
25.11.2007  
 




Uwe
Skärke
Hi Frank,

Du devrait den XProfan-Community-Nobel-Preis bekommen...

alors zur Auswertung :

Handle sous Mauszeiger unde Mauszeiger (Child) ist toujours juste, mais chez chaque
Start de Orbitron anders (z.B. $206DC)

chez Klassenname erscheint chez den mich interessierenden Boxen toujours TEdit
chez Fenstername erscheint nie quoi, nix, niente, nada

... et cela gei.... ist, chez Fenstertext steht oui c'est ca cela quoi il me faut, Azimut Elevation,Frequenz ...

maintenant muss je seulement encore versuchen trop comprendre wadduda gemacht la hâte...

LG, Uwe
 
TOSHIBA TECRA S1 / PROFAN 7.0
25.11.2007  
 




Frank
Abbing
Hi.


Handle sous Mauszeiger unde Mauszeiger (Child) ist toujours juste, mais chez chaque
Start de Orbitron anders (z.B. $206DC)


oui, c'est so aussi logisch.


chez Klassenname erscheint chez den mich interessierenden Boxen toujours TEdit


Ok, ne...aucune Windows-übliches Modifier le champ de...


chez Fenstername erscheint nie quoi, nix, niente, nada


aussi logisch.


... et cela gei.... ist, chez Fenstertext steht oui c'est ca cela quoi il me faut, Azimut Elevation,Frequenz ...


Bingo! Somit peux du dein projet effectuer.


maintenant muss je seulement encore versuchen trop comprendre wadduda gemacht la hâte...


tu dois maintenant überlegen, si dein Orbitron-la fenêtre toujours am selbem place steht et toujours im Vordergrund. si oui, peux feste Positionsangaben verwenden anstelle de Mauskoordinaten.
si non, musst du anders vorgehen. tu dois Orbitron.exe erkennen (sur Prozesshandle ou bien Windowname), cela betreffende Contrôle avec dem Text lokalisieren (Fenstertext et Klassenname) et ensuite auslesen. c'est la méthode, qui je verwenden serait.
 
25.11.2007  
 




Uwe
Skärke
okay, ...

qui zweite variante serait mir besser plaisons, allerdings coutume je là encore la fois Votre Aider

weil je denke, dass chez verschiedenen Bildschirmauflösungen aussi qui Positionsdaten unterschiedlich sommes et möglicherweise cela Orbitron aussi la fois pas im Vollbildmodus fonctionne...

... et toujours daran penser, tu as es ici avec einem Vorschulkind trop 1faire...

PS: et merci, hoffe j'ai Dir pas den dimanche vermasselt
 
TOSHIBA TECRA S1 / PROFAN 7.0
25.11.2007  
 




Frank
Abbing

... et toujours daran penser, tu as es ici avec einem Vorschulkind trop 1faire...


Pour cette ist cela Thema eigentlich trop schwierig. je peux mir penser, dass du cet Programme besoin. Besser wäre mais, avec einfacheren Dingen trop commencer...

sur den Screenshots mon je trop erkennen trop erkennen, dass sich qui de dir nécessaire Informationen dans mehreren Controls verstecken. Ist cela richtig?
je devrait oui c'est ca savons, quelle information(en) du ständig besoin.
 
25.11.2007  
 



 
- page 2 -



Uwe
Skärke
eh bien, on wächst avec seinen Aufgaben, si je toujours seulement cela Leichte faire serait, peut je warscheinlich pas la fois aufrecht aller

alors, qui im Bild rouge besprühten Controls muss je permanent auslesen, qui changement sich chacun seconde...

jusqu'à bientôt, LG, Uwe

196 kB
Hochgeladen:25.11.2007
Downloadcounter235
Download
 
TOSHIBA TECRA S1 / PROFAN 7.0
25.11.2007  
 




Frank
Abbing
Hab la fois quoi zusammen gebastelt, weiss mais pas, si cela so sous Profan 7 fonctionne. Ggf. sommes Umbauten vonnöten.
qui Code findet alle deine begehrten Controls, mais es wird deine devoir son trop entscheiden, quelle Controls wohin richtig sommes. Wahrscheinlich ist qui Reihenfolge mais toujours juste.
KompilierenMarqueSéparation
Declare Entry#,err&,handle&,cpid&,text$,text2$,pid&,cname#,z&,a&,x&,y&,zahl&
Struct PROCESSENTRY32=dwSize&,
cntUsage&,
th32ProcessID&,
th32DefaultHeapID&,
th32ModuleID&,
Threads&,
th32ParentProcessID&,
pcPriClassBase&,
dwFlags&,
szExeFile$(260)
Dim Entry#,PROCESSENTRY32
Entry#.dwSize& = SizeOf(Entry#)
Def CreateToolhelp32Snapshot(2) !Kernel32, CreateToolhelp32Snapshot
Def Process32First(2) !Kernel32, Process32First
Def Process32Next(2) !Kernel32, Process32Next
Def CloseHandle(1) !Kernel32, CloseHandle
Def GetCurrentProcessID(0) !Kernel32, GetCurrentProcessId
Def GetWindow(2) !USER32,GetWindow
Def GetClassName(3) !USER32,GetClassNameA
Def GetWindowThreadProcessId(2) !USER32,GetWindowThreadProcessId
Def GetParent(1) !USER32,GetParent
zahl&=1

Proc FillProcessList

    cpid&=GetCurrentProcessID()
    handle& = CreateToolhelp32Snapshot(2,0)

    If handle&

        err& = Process32First(handle&, Entry#)

        If err&

            text$=Str$(Entry#.th32ProcessID&)
            text2$=Entry#.szExeFile$
            Case Lower$(text2$)=orbitron.exe:Return Int(Val(text$))

            Repeat

                err& = Process32Next(handle&, Entry#)

                If err&

                    text$=Str$(Entry#.th32ProcessID&)
                    text2$=Entry#.szExeFile$
                    Case Lower$(text2$)=orbitron.exe:Return Int(Val(text$))

                EndIf

            Until err& = 0

            CloseHandle(handle&)

        EndIf

    EndIf

    Return 0

EndProc

Proc EnumChildren

    Parameters parent&
    Declare result&,cn$
    Dim cname#,256
    GetClassName(parent&,cname#,64)
    cn$=String$(cname#,0)
    result&=GetWindow(parent&,5)

    While result&<>0

        GetWindowThreadProcessId(result&,addr(x&))

        If x&=pid&

            AddString Str$(zahl&)+. Controlhandle +Str$(result&)+ +Chr$(34)+GetText$(result&)+Chr$(34)
            Inc zahl&
            EnumChildren result&

        EndIf

        result&=GetWindow(result&,2)

    EndWhile

    Dispose cname#

EndProc

Cls
pid&=FillProcessList()

If pid&

    EnumChildren %desktop
    ListBox$(Ermittelte Orbitron-Control-Texte:, 1)
    WaitInput

Else

    MessageBox(Prozess Orbitron nicht aktiv...,Meldung:,64)

EndIf

Dispose Entry#
Fin
 
25.11.2007  
 




Uwe
Skärke
allô Frank.
vielen Dank, hâte Dir encore qui Halbe nuit à Ohren geschlagen, peux je warscheinlich nie wieder bien faire...
je werde cela la fois testen et annonce donner, peux allerdings encore un peu dauern, muss nebenbei encore Ackern..

LG, Uwe
 
TOSHIBA TECRA S1 / PROFAN 7.0
26.11.2007  
 




Frank
Abbing
je hab seulement deux Source kombiniert et den Orbitron installiert, était ne halbe heure travail.
Ist wirklich un interessantes Tool, cet Orbitron. quoi oui c'est ca vouloir du eigentlich zum den Satelliten funken?
 
26.11.2007  
 




Uwe
Skärke
allô Frank, j'étais la fois sur Dienstreise et avec cela weg vom „WINDOW“.
Gestern habe je XProfan 10 bekommen et werde cela ensuite aujourd'hui juste la fois installer, la fois voyons si ensuite Dein Tool funktioniert…
Ansonsten ist cela avec den Amateurfunksatelliten so, dass on vous erstens comme repeater benutzt, cela heisst, on sendet z. Bsp. sur 145 MHz Discours ou bien Telegraphie Signale pour dessus et qui Sat envoyez qui gleichen wieder sur 435 MHz runter et par qui grand Ausleuchtung (par qui Hauteur des Sat) peux on ensuite zum Bsp. une Funkverbindung sur UKW avec espagne aufbauen, si wohl on sur UKW par qui Erdkrümmung seulement so à 300 jusqu'à 400 km large venez. l'autre variante ist qui, dass on direct avec qui Crew qui ISS ou bien früher avec qui MIR kommuniziert et ensuite bekommt on une QSL-carte zur Bestätigung qui Funkverbindung, unterhalten tut on sich là la plus part du temps sur technische Sujets. cela belle ist, dass on aussi avec très geringen Sendeleistungen grand Entfernungen überbrücken peux.
Bien sûr senden qui Sats aussi Telemetriedaten, so dass on jederzeit sur den Status qui Elektronik à Bord informiert ist. qui Sats volonté dans qui règle aussi par Funkamateure entwickelt et ensuite avec den Raketen qui Russen ou bien qui Space Shuttle ins All befördert…
Link pour plus Infos : www.amsat-dl.org
So, eh bien wird je encore la fois un peu avec XProfan 10 fummeln…
LG, Uwe
 
TOSHIBA TECRA S1 / PROFAN 7.0
08.12.2007  
 




Frank
Abbing
Jau! Klingt vraie superinteressant...
 
08.12.2007  
 




répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

14.224 Views

Untitledvor 0 min.
H.Brill06.07.2023
Axel Berse18.02.2022
Walter14.03.2020
Andre Rohland01.03.2015
plus...

Themeninformationen

cet Thema hat 2 participant:

Uwe Skärke (10x)
Frank Abbing (8x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie