Paules-PC-Forum.de Anzeige:

Microsoft Windows Intune: PC-Verwaltung und -Sicherheit in der Cloud: Updateverwaltung, Anti-Virus und vieles mehr!



Zurück   Paules-PC-Forum.de > Programmierung > XProfan > Helfer & Tools

Helfer & Tools Programme für und in XProfan und Fragen dazu.

Verlosung!


Paule bei Facebook


Paule bei Twitter


Letzte Forenthemen
Gehe zum ersten neuen Beitrag ATI Mobility Radeon HD 4650
Aufrufe: 78, Antworten: 5
Gehe zum ersten neuen Beitrag Treiber für Storagebird...
Aufrufe: 7, Antworten: 1
Gehe zum ersten neuen Beitrag Deckel vom Laptop defekt
Aufrufe: 85, Antworten: 4
Gehe zum ersten neuen Beitrag Kopfhörer für Sport gesucht
Aufrufe: 115, Antworten: 2
Gehe zum ersten neuen Beitrag PPF - Shoppingwahn
Aufrufe: 46816, Antworten: 1300
Gehe zum ersten neuen Beitrag Meine neue HD 7970 pfeift...
Aufrufe: 77, Antworten: 4
Gehe zum ersten neuen Beitrag Drucker lässt sich nicht...
Aufrufe: 27, Antworten: 1
Gehe zum ersten neuen Beitrag [Windows XP-32 bit] Startmenü Einträge...
Aufrufe: 644, Antworten: 57
Gehe zum ersten neuen Beitrag Kopiergeschwindigkeiten eSata...
Aufrufe: 93, Antworten: 3
PPF - Spiel "Wörter weiter...
Aufrufe: 10328, Antworten: 1593
Zeige:





Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 01.09.2010, 17:45   #1 (Direktlink)
War schon mal da
 
Benutzerbild von Plüschi
 
Registriert seit: 09.02.2009
Ort: 127.0.0.1
Alter: 13
Beiträge: 32
Standard lnk erstellen

Wie kann ich aus einen Profan Programm eine lnk datei erstellen?
__________________
Benutze Ubuntu 9.10 , Windows 7 Ultimate, Windows 7 Home Premium und Windows XP Pro
http://plueschi.xprofan.com
Plüschi ist offline   Mit Zitat antworten
Werbung
Alt 01.09.2010, 18:59   #2 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 43
Beiträge: 4.725
Standard

Probier mal diesen Code von Thomas Hölzer:

Code:
 ' PRFellow-Vorlage
 ' Autor: Thomas Hölzer - Alle Rechte vorbehalten
 ' IShellLink-Interface und IPersistFile-Interface
 ' Hier: Link-Files anlegen
 ' Benötigt Profan 7.0
 
 ' Die Fehlerbehandlung wurde der besseren Übersicht
 ' wegen mit Return-Sprüngen implementiert
 ' Im Fehlerfall wird -1 zurückgegeben, 
 ' bei Erfolg den OLE-Konventionen entsprechend 0 (= NO_ERROR)
 
 ' Die Parameter für CreateLinkFile sind genau(!) einzuhalten:
  
 ' 1: Name mit Pfad der gewünschten Linkdatei (*.lnk)
 ' 2: Dateiname mit Pfad, der verlinkt werden soll
 ' 3: Arbeitsverzeichnis oder Leerstring
 ' 3: Start-Parameter oder Leerstring
 ' 4: Optional: Pfad der Datei, die das anzuzeigende Icon enthält oder Leerstring
 ' 5: Nullbasierter Index des gewünschten Icons
 ' 6: HotKey-Wert oder 0
 ' Weitere Hilfe: Suchwort IShellLink in OLE32.HLP
 ' oder im MSDN http://msdn.microsoft.com/default.asp
 ' Bei Suche beachten: IShellLink schreibt sich mit 3 L!
 
 
 Def CoInitialize(1) !"OLE32","CoInitialize"
 Def CoUnInitialize(0) !"OLE32","CoUninitialize"
 Def CoCreateInstance(5) !"OLE32","CoCreateInstance"
 Def CLSIDFromString(2) !"OLE32","CLSIDFromString"
 Def IIDFromString(2) !"OLE32","IIDFromString"
 Def MultiByteToWideChar(6) !"KERNEL32","MultiByteToWideChar"
 Def WideCharToMultiByte(8) !"KERNEL32","WideCharToMultiByte"
 Def Succeeded(1) Gt(&(1),-1)
 
 
 Declare CLSID_ShellLink$
 CLSID_ShellLink$ = "{00021401-0000-0000-C000-000000000046}"
 
 Declare SID_IShellLinkA$
 SID_IShellLinkA$= "{000214EE-0000-0000-C000-000000000046}"
 
 Declare IPersistFile$
 IPersistFile$="{0000010B-0000-0000-C000-000000000046}"
 
 Declare olestr#,clsid#,iid#
 Declare pshellink#,ppersistfile#,ipersistfile#
 Declare pislmethods#,pipfmethods#
 
 Proc CleanupIShL
  Dispose olestr#
  Dispose pislmethods#
  Dispose pipfmethods#
  Dispose ppersistfile#
  Dispose ipersistfile#
  Dispose pshellink#
  Dispose clsid#
  Dispose iid#
  CoUnInitialize()
 EndProc
 
 Proc CreateLinkFile
  Parameters linkfile$,file$,workdir$,params$,icofile$,icoidx&,hotkey&
  Declare result%
 
  ' COM initialisieren
  CaseNot Succeeded(CoInitialize(0)): Return -1
 
  Dim olestr#,261 ' muß für IPersistFile so groß sein (MAX_PATH+1)
  Dim clsid#,16
  Dim iid#,16
  Dim pshellink#,4
  Dim ipersistfile#,4
  Dim ppersistfile#,16
  Dim pislmethods#,84
  Dim pipfmethods#,36
 
  ' ClassID und IID für IShellLink holen
  Clear olestr#
  MultiByteToWideChar(1,1,Addr(CLSID_ShellLink$),Len(CLSID_ShellLink$),olestr#,261)
 
  IfNot Succeeded(CLSIDFromString(olestr#,CLSID#))
   CleanupIShL
   Return -1
  EndIf
 
  Clear olestr#
  MultiByteToWideChar(1,1,Addr(SID_IShellLinkA$),Len(SID_IShellLinkA$),olestr#,261)
 
  IfNot Succeeded(IIDFromString(olestr#,IID#))
   CleanupIShL
   Return -1
  EndIf
 
  ' COM-Objekt erzeugen und Zeiger auf IShellLink-Methoden-Tabelle
 
  IfNot Succeeded(CoCreateInstance(CLSID#,0,1,IID#,Addr(pshellink#)))
   CleanupIShL
   Return -1
  EndIf
  
  Let pislmethods# =Long(pshellink#,0)
 
  ' ClassID für IPersistFile holen
  Clear olestr#
  MultiByteToWideChar(1,1,Addr(IPersistFile$),Len(IPersistFile$),olestr#,261)
 
 
  IfNot Succeeded(IIDFromString(olestr#,ppersistfile#))
   CleanupIShL
   Return -1
  EndIf
 
  ' QueryInterface: IPersistFile-Zeiger holen und Zeiger auf Methoden
 
  IfNot Succeeded(Call(Long(pislmethods#,0),pshellink#,ppersistfile#,Addr(ipersistfile#)))
   CleanupIShL
   Return -1
  EndIf
  pipfmethods#=Long(ipersistfile#,0)
 
  ' Dateiname der Linkdatei in WideString konvertieren
 
  Clear olestr#
  IfNot Equ(MultiByteToWideChar(1,1,Addr(linkfile$),Len(linkfile$),olestr#,261),\
   Len(LinkFile$))
    CleanupIShL
    Return -1
  EndIf
 
  ' Das IShellLink-Methoden aufrufen
  '.SetWorkDir
  Call(Long(pislmethods#,36),pshellink#,Addr(workdir$))
  '.SetArguments  
  Call(Long(pislmethods#,44),pshellink#,Addr(params$))
  '.SetHotKey   
  Call(Long(pislmethods#,52),pshellink#,hotkey&) 
  '.SetIconLocation
  Call(Long(pislmethods#,68),pshellink#,Addr(icofile$),icoidx&) 
  '.SetPath
  Call(Long(pislmethods#,80),pshellink#,Addr(file$))    
  
  ' IPersistFile.Save
  Call(Long(pipfmethods#,24),ipersistfile#,olestr#,1)
 
  ' Aufräumen
  Call(Long(pipfmethods#,8),ipersistfile#)
  result%=Succeeded(Call(Long(pislmethods#,8),pshellink#))
  CleanupIShL
  Return Not(result%)
 EndProc
 
 ' Beispiel
 
 Cls
 CreateLinkFile "C:\PRFTEST.LNK",Add$($WinPath,"\EXPLORER.EXE"),"C:\","","SHELL32.DLL",41,0
 If Equ(%(0),0)
  Print "OK"
 Else
  Print "Fehler"
 EndIf
 WaitInput
__________________
Gruß, Frank

Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist gerade online   Mit Zitat antworten
Alt 02.09.2010, 12:42   #3 (Direktlink)
MoRoGeP-Träger 2011
 
Benutzerbild von horsthorn
 
Registriert seit: 06.02.2009
Ort: Heidelberg
Alter: 71
Beiträge: 1.688
Lächeln

Hallo Plüschi
Geh mal in die XProfan-Hilfe mit dieser Sucheingabe
Zitat:
DDEExecute
Da steht auch so einiges zum Linkerstellen. Sind auch Querverweise dabei.
Grüsse an alle anderen und meinen Namensvetter
__________________
Gruss, horst
Computer werden kleiner und kleiner, bald verschwinden sie völlig.
(Ephraim Kishon 1924-2005)

Win7-Home-Premium 32-Bit - XProfan12.0ß-S14 - Chrome-13.0.782.112
http://www.web-treffpunkt.de
horsthorn ist gerade online   Mit Zitat antworten
Alt 02.09.2010, 15:04   #4 (Direktlink)
War schon mal da
 
Benutzerbild von Plüschi
 
Registriert seit: 09.02.2009
Ort: 127.0.0.1
Alter: 13
Beiträge: 32
Standard

Danke an euch beide!
__________________
Benutze Ubuntu 9.10 , Windows 7 Ultimate, Windows 7 Home Premium und Windows XP Pro
http://plueschi.xprofan.com
Plüschi ist offline   Mit Zitat antworten
Antwort

  Paules-PC-Forum.de > Programmierung > XProfan > Helfer & Tools

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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 an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
.exe erstellen Timolotov C/C++, Visual C++, Visual C++.NET 3 04.05.2007 20:21
XP Cd erstellen Rico Windows XP 3 04.12.2005 16:21
exe. erstellen R2D2 C/C++, Visual C++, Visual C++.NET 4 16.03.2005 17:24
URL erstellen Papnase Allgemein 2 27.06.2004 16:05



Alle Zeitangaben in WEZ +1. Es ist jetzt 20:16 Uhr.


Powered by vBulletin® Version 3.8.7 (Deutsch)
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Powered by vBCMS® 2.7.0 ©2002 - 2012 vbdesigns.de
(c) Paules-PC-Forum.de

::: Impressum :::

Search Engine Optimization by vBSEO 3.3.2