Atitit.建立快捷方式 windows快捷方式的原理
Atitit.建立快捷方式 windows快捷方式的原理
1. Windows中有2種快捷方式的檔案:
1、快捷方式檔案是二進位制檔案;
2、Internet快捷方式檔案,格式和INI檔案一樣,副檔名為 .URL。
作者:: 綽號:老哇的爪子 (全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿爾 拉帕努伊 )漢字名:艾龍, EMAIL:[email protected]
轉載請註明來源: http://blog.csdn.net/attilax
在此學習一下Internet快捷方式檔案。
Internet快捷方式的檔案格式如下:
[DEFAULT]
BASEURL=
[InternetShortcut]
URL=
WorkingDirectory=
ShowCommand=
IconIndex=
IconFile=
Modified=
HotKey=
其中
· BASEURL、URL和WorkingDirectory這3項的含義是不言而明的。
· ShowCommand規定Internet Explorer啟動後窗口的初始狀態:7表示最小化,3表示最大化;如果沒有ShowCommand這一項的話則表示正常大小。
· IconFile和IconIndex用來為Internet快捷方式指定圖示;如果你不想指定圖示,Windows會使用預設的Internet快捷方式圖示。
· HotKey指定一個整數值;HotKey的值及其含義見附錄。
2. Jshortcut
This page contains information, documentation, and downloads for JShortcut. JShortcut isa Java package with a native library that allows a Java application to create ...
GitHub - jimmc jshortcut Java JNI interface to access Windows shortcuts.htm
http://alumnus.caltech.edu/~jimmc/jshortcut/download/index.html
2.1. 提示新不上jshortcut.dll
Bg na feodg jshortcut.jar yda d dir hto...zo ok le ..
Se,yeu tips 31bit d ,mafe ....give up..le..
Exception in thread "main" java.lang.UnsatisfiedLinkError: D:\workspace 空格\AtiPlatf\WEB-INF\lib_dll\jshortcut.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1937)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1822)
at java.lang.Runtime.load0(Runtime.java:809)
at java.lang.System.load(System.java:1086)
at net.jimmc.jshortcut.JShellLink.<clinit>(JShellLink.java:100)
at com.attilax.util.ShortCut.createShortCut(ShortCut.java:31)
at com.attilax.util.ShortCut.main(ShortCut.java:17)
2.2. 使用win api實現
用指定的類識別符號建立一個Com物件,用指定的類識別符號建立一個未初始化的物件。當在本機中只建立一個物件時,可以呼叫CoCreateInstance;在遠端系統中建立一個物件時,可以呼叫CoCreateInstanceEx;建立多個同一CLSID的物件時, 可以參考CoGetClassObject 函式。
2.3. 使用WshShell com實現
Set WshShell = WScript.CreateObject("WScript.Shell")strDesktop = WshShell.SpecialFolders("Desktop")set oShellLink = WshShell.CreateShortcut(strDesktop & "\學習天地.lnk")
2.4. Win沒提供cli格式的方法
3.
4. Attilax的總結
使用ini格式的url算蘭..
5. Ref
java建立快捷方式(作者 ice古雨) - - ITeye技術網站.htm
(轉)建立快捷方式到桌面的指令碼命令_singularpoint_新浪部落格.htm
Internet快捷方式-vivieu-ChinaUnix部落格.htm
命令列建立快捷方式-vivieu-ChinaUnix部落格.htm
CoCreateInstance_百度百科.htm
CoCreateInstance具體內部實現 - IT民工 - 部落格頻道 - CSDN.NET.htm
6. Winapi code
hr = CoCreateInstance(CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER, IID_IShellLink, (void**)&pisl);
IPersistFile* pIPF;
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
//這裡是我們要建立快捷方式的原始檔案地址 pisl->SetPath("c:\\windows\\notepad.exe"); hr = pisl->QueryInterface(IID_IPersistFile, (void**)&pIPF); if (SUCCEEDED(hr)) {
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
//這裡是我們要建立快捷方式的目標地址
pIPF->Save(L"c:\記事本.lnk", FALSE); pIPF->Release();
h = CoCreateInstance( CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER,
IID_IShellLink, (PVOID*)&shellLink );
if (FAILED(h)) {
errStr = "Failed to create IShellLink";
goto err;
}
h = shellLink->QueryInterface(IID_IPersistFile, (PVOID*)&persistFile);
if (FAILED(h)) {
errStr = "Failed to get IPersistFile";
goto err;
}
7. --end
相關推薦
Atitit.建立快捷方式 windows快捷方式的原理
Atitit.建立快捷方式 windows快捷方式的原理 3. 4 1. Windows中有2種快捷方式的檔案: 1、快捷方式檔案是二進位制檔案; 2、Internet快捷方式檔案,格式和INI檔案一樣,副檔名為 .URL。 作者:: 綽號:老
Windows快捷方式檔案格式解析
轉載自:https://blog.csdn.net/cosmoslife/article/details/51898534 大家知道通過IShellLink介面可以得到快捷方式的各種屬性。具體怎麼做,網上有很多文章,這裡就不介紹了。現在主要是分析一下快捷方式檔案的格式,並且自己寫一個解析程式。
Ubuntu下建立eclipse的桌面快捷方式
1:在/usr/share/applications/建立.desktop檔案 vim /usr/share/applications/eclipse.desktop 2:輸入相應的資訊 #########=====如下吉祥是必須配置的======
解決windows下桌面快捷方式的快捷鍵重啟後失效的問題
事處原因:想實現通過點選物理按鍵去啟動指定的應用程式或執行特定的檔案。 解決步驟: 1、將檔案或應用程式建立連線檔案,再設定快捷鍵,但是這個問題重啟會失效;(然並卵) 該方法的執行過程,在網上找了一篇修改的方法,如下: 我們桌面上都有快捷方式,右擊後選擇屬性,其中有快捷鍵
C# 建立一個資料夾快捷方式
IWshRuntimeLibrary.WshShell shell = new IWshRuntimeLibrary.WshShell(); //通過該物件的 CreateShortcut 方法來建立 IWshShortcut 介面的例項物件 IWshRuntimeLibr
eclipse查看一個方法被誰引用(調用)的快捷鍵四種方式
選中 如果 eclips 關系 方法調用 alt+ cli ctrl+s eclipse 1.(首推)雙擊選中該方法,Ctrl+Alt+H 如果你想知道一個類的方法到底被那些其他的類調用,那麽請選中這個方法名,然後按“Ctrl+Alt+H”, Eclipse就會顯示出這個
eclipse檢視一個方法被誰引用(呼叫)的快捷鍵四種方式
1.(首推)雙擊選中該方法,Ctrl+Alt+H 如果你想知道一個類的方法到底被那些其他的類呼叫,那麼請選中這個方法名,然後按“Ctrl+Alt+H”, Eclipse就會顯示出這個方法被哪些方法呼叫,最終產生一個呼叫關係樹。 2.(次推)選中該方法,Ctrl+Shift+G &nb
WPFの三種方式實現快捷鍵
原文: WPFの三種方式實現快捷鍵 最近,對wpf新增快捷鍵的方式進行了整理。主要用到的三種方式如下: 一、wpf命令: 資源中新增命令 <Window.Resources> <RoutedUICommand x:Key="ToolCapClick" Text
我win專案中遇到的安裝以及自定義快捷方式及快捷鍵的實現方法
首先我的需求是: 1、能自動安裝 2、桌面上有快捷方式,並且有快捷鍵,打快捷鍵能自動開啟程式執行 在開發中VS2010自帶的安裝可以將應用放到桌面生成快捷方式,但是有兩個問題: 一是不能自帶快捷鍵,需要手工另外增加; 二是開啟檔案位置找不到安裝目錄。 對於第二個問
Android Studio的快捷鍵以及設定方式
如果你之前已經使用其他版本的Studio,那麼直接覆蓋就好了,如果是第一次使用,那麼參照Android Studio系列教程一進行安裝配置。 於此同時一起更新的還有SDK Tools等,開啟SDK Manager進行更新就OK。如果之前有在使用RC版本的Studio
Java併發程式設計原理與實戰一(執行緒狀態及建立執行緒的多種方式)
一、為什麼要學習併發程式設計 1.發揮多處理的強大能力 2.建模的簡單性 3.非同步事件的簡化處理 4.響應更加靈敏的使用者介面 二、併發的缺點 1.安全性問題 多執行緒環境下 多個執行緒共享一個資源 對資源進行非原子性操作 2.活躍
建立物件的幾種方式和new關鍵字背後的原理
一、建立物件的方式 我總結了三種1.使用字面量建立物件 var obj1 = {a:1}; 2.使用Object建構函式建立物件 var obj2 = new Object({a:1}); 3.使用建構函式建立物件 function Foo(){
windows快捷鍵大全
大全 win 程序 快速 教程 ctrl 音量 恢復 電腦 1.快速切換程序:Alt+Tab; 2.永久刪除文件Shift+ Delete; 3.秒開文件管理:Windows+E; 4.直接顯示桌面:Windows+D; 5.快速關掉頁面:Ctrl+W; 6.恢復被關頁面:
java使用windows驗證方式連接sqlserver2008數據庫
log 代碼 hid ogg rman nal sta args ron 連接數據庫的代碼段: package com.db; import java.sql.*; public class DButil { public static void mai
OS - Windows - 快捷鍵
pla http 所有 bubuko 分享 rdquo 中心 就是 image 【F1-F12】鍵 【Win】鍵 Windows鍵就是電腦鍵盤上是Windows圖標的鍵,一般在Ctrl鍵和Alt鍵之間。搜索看整個鍵盤你會發現鍵盤上有兩個Windows鍵,主要是左右手
Mac 遠程桌面 Windows 快捷鍵
mac -c win 遠程桌面 快捷鍵 遠程 down 開頭 快捷 文本/文檔 Fn–上箭頭:Page Up:向上滾動一頁。 Fn–下箭頭:Page Down:向下滾動一頁。 Fn–左箭頭:當前行開頭。 Fn–右箭頭:當前行末尾。 Fn-Control-左箭頭:Home:
UI設計師需要熟記的45個快捷鍵Windows、Mac
aaa 建築 ado 而且 nbsp 所有 uci 色相 gin 大家都知道PS快捷鍵很多,其實沒必要都記住,今天為大家整理了45個比較實用的,別忘了收藏。 圖層 填充圖層 MAC: Alt+Backspace (前景) or Cmd+Backspace
建立資源的兩種方式
命令 vs 配置檔案 Kubernetes 支援兩種方式建立資源: 1. 用 kubectl 命令直接建立 kubectl run nginx-deployment --image=nginx:1.7.9 --replicas=2 在命令列中通過引數指定資源的屬性。 2.
Linux下建立程序的三種方式及特點
在Linux中主要提供了fork、vfork、clone三個程序建立方法。 在linux原始碼中這三個呼叫的執行過程是執行fork(),vfork(),clone()時,通過一個系統呼叫表對映到sys_fork(),sys_vfork(),sys_clone(),再在這三個函式中去呼叫d
spring4+ThreadPoolTaskExecutor建立執行緒 兩種方式傳送郵件
百度雲程式碼下載地址包含測試用例 :點選後跳轉 ThreadService package com.konglingfu.service; public interface ThreadService extends Runnable{ public void se