2015-10-10 26 views
1

我有一個Java應用程序,我想在客戶端Windows 8.1框上的用戶登錄時自動啓動。在Windows 8.1上自動啓動Java應用程序登錄

我在Windows 8.1上創建了一個可執行的jar包。

我已經通過Launch4j將罐子轉換爲Windows可執行文件。

我已經通過Inno Setup Script生成了一個Windows安裝程序可執行文件,其中包含應用程序和一個jre

我已將安裝程序下載到客戶端Windows 8.1框。

我已經在客戶端框上運行安裝程序可執行文件。

在客戶端機器上的安裝目錄下,我已經運行PowerShell的 PS1文件 ,在成功創建一個快捷方式(.lnk文件)我在Windows 8.1目錄結構的應用程序:

C:\ProgramData\Microsoft\Windows\Start Menu\Programs\mycompanyname 

我的PowerShell PS1文件的內容是:

powershell Set-ExecutionPolicy RemoteSigned 

$TargetFile = "C:\Program Files (x86)\mycompanyname\myexecutablename.exe" 
$ShortcutFile = "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\mycompanyname\mylinkname.lnk" 
$WScriptShell = New-Object -ComObject WScript.Shell 
$Shortcut = $WScriptShell.CreateShortcut($ShortcutFile) 
$Shortcut.TargetPath = $TargetFile 
$Shortcut.Save() 
"$TargetFile -NoLog -NoExit" 

我運行PowerShell的原因是編程創建快捷方式鏈接到我的應用程序,RA而不是讓我的客戶端用戶瀏覽大量的Windows UI頁面。

當我右鍵單擊快捷方式並以管理員身份運行它時,我的應用程序圖標按預期出現在SystemTray中。我可以右鍵單擊該圖標並選擇我的各種選項,並且一切正常。

但是,當我註銷並重新登錄時,我的應用程序圖標不會出現在SystemTray中。

如何讓我的應用程序圖標在我註銷後出現在SystemTray中,然後重新登錄?

此時我猜測我的powershell ps1不僅需要創建並保存我的快捷方式,而且還需要進行設置以便應用程序在用戶登錄時自動啓動。

的最終目標是讓我的應用程序的圖標出現在的SystemTray到Windows 8.1箱用戶登錄,多以同樣的方式後,對於WebRoot, Norton Security Suite, etc., do.

幫助應用程序圖標,請。

+0

看看[這裏](http://www.howtogeek.com/208224/how-to-add-programs-files-and-folders-to-system-startup-in-windows- 8.1 /) –

+0

你肯定不會考慮Windows服務(比如ie Tomcat)。服務可以一直運行,當用戶登錄時可以通過系統托盤聯繫。 –

回答

1

我會使用註冊表和Run密鑰。

更多細節seen here

如下所示Sample.reg。

Windows Registry Editor Version 5.00 

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run] 
"MyApplication"="C:\\Program Files\\MyApplication\\1234567.exe" 
+0

該解決方案適用於我。謝謝!要解決的唯一問題是:當應用程序運行時,它顯示某種窗口(可能是java控制檯窗口,我不確定)。有沒有辦法自動最小化或自動隱藏窗口? – user1475484

+1

以下命令在Windows 8.1命令行上運行良好:'start/min/D c:\「程序文件(x86)」\ mycompanyname myappname.exe',但無法在HKCU \ software \ Microsoft \的Windows \ CurrentVersion \ Run中。 – user1475484

+0

在用戶登錄時自動啓動我的應用程序而無任何煩人的窗口閃光的最終答案是從HKCU運行它:software/Microsoft/Windows/CurrentVersion /以wscript.exe身份運行c:「program files(x86)」\ mycompanyname \ invisible.vbs C:\「program files(x86)」\ mycompanyname \ startup.bat其中invisible.vbs看起來像CreateObject(「Wscript.Shell」)。運行「」「」&WScript.Arguments(0)&「」 「」,0,False – user1475484