在Unity使用VS2017打开unityShader文件时总提示错误:

我也一直没找啥原因,shader文件直接使用VSCode打开,当然其他类型的文件也可这样处理用相应的exe打开,如:pdf,txt等文件均可

具体代码如下:

 1 using System.Collections;
2 using System.Collections.Generic;
3 using UnityEditor;
4 using UnityEngine;
5
6 public class SetAssetsPathFilesDefaultOpenMode
7 {
8 [UnityEditor.Callbacks.OnOpenAssetAttribute(1)]
9 public static bool SingleSelect(int instanceID, int line)
10 {
11 return false;
12 }
13
14 [UnityEditor.Callbacks.OnOpenAssetAttribute(2)]
15 public static bool DoubleSelect(int instanceID, int line)
16 {
17 //给双击文件事件实例化一个ID并返回所选文件路径
18 string path = AssetDatabase.GetAssetPath(EditorUtility.InstanceIDToObject(instanceID));
19 //文件路径
20 string name = Application.dataPath + "/" + path.Replace("Assets/", "");
21 //指定打开文件类型
22 if (name.EndsWith(".shader"))
23 {
24 //系统进程
25 System.Diagnostics.Process process = new System.Diagnostics.Process();
26
27 System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
28
29 //设置窗口状态
30 startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
31
32 //指定打开软件(可以是可执行文件,也可以是系统上安装的应用程序)
33 startInfo.FileName = "F:/Windows_5/Microsoft VS Code/Code.exe";
34
35 //指定打开文件(路径不能有空格,否则认为时多个文件)
36 startInfo.Arguments = name;
37
38 process.StartInfo = startInfo;
39 process.Start();
40 return true;
41 }
42 //if (name.EndsWith(".pdf"))
43 //{
44 // System.Diagnostics.Process process = new System.Diagnostics.Process();
45 // System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
46 // startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
47 // //指定打开软件
48 // startInfo.FileName = "C:/Users/lenovo/AppData/Local/Google/Chrome/Application/chrome.exe";
49 // //指定打开文件(路径不能有空格,否则认为时多个文件)
50 // startInfo.Arguments = name;
51 // process.StartInfo = startInfo;
52 // process.Start();
53 // return true;
54 //}
55
56 return false;
57 }
58 }

Unity中自定义应用程序打开Assets目录下指定类型的文件的更多相关文章

  1. java 实现读取某个目录下指定类型的文件

    我这里是读取txt类型的文件,在指定的目录下有不同类型的文件 实现代码,读取txt类型的文件并打印出该文件的绝对路径 package com.SBgong.test; import java.io.F ...

  2. <UnityTheGreat><001>获取指定目录下指定类型的所有文件的名称

    #region Environment Windows 10 Unity 2019.4.16f1c1 LTS VSCode 1.52 https://github.com/MirzkisD1Ex0/U ...

  3. delphi遍历指定目录下指定类型文件的函数

    遍历指定目录下指定类型文件的函数// ================================================================// 遍历某个文件夹下某种文件,/ ...

  4. 查找目录下指定类型的所有文件(maven 打包提取脚本)

    1 首先想到的是递归遍历目录 筛选出符合条件的文件 dir命令递归遍历目录 /b控制显示格式 /s递归  /ad 只显示目录 dir /b/s .\* 判断文件类型 操作数得用`` rem 取出文件扩 ...

  5. 用PHP怎么删除某目录下指定的一个文件

    举个tp框架的例子 $User = M("message"); $a = $User->]['url']; unlink($url); $User->delete($i ...

  6. 遍历指定目录下指定类型文件的函数(fatkun Fix版)

    // ================================================================ // 遍历某个文件夹及子文件夹下某种文件, // 使用说明 // ...

  7. Unity获取文件夹下指定类型的文件数量

    有个文件夹里面有很多的图片,都是.png格式的,要是一个一个的拖到脚本上觉得很麻烦,就写了一个遍历添加的cars,变量是List<Sprite> 代码如下: using UnityEngi ...

  8. windows 批处理删除指定目录下 指定类型 指定天数之前文件

    删除D:\test下5天前所有文件,如下: @echo offset SrcDir=D:\testset DaysAgo=5forfiles /p %SrcDir% /s /m *.* /d -%Da ...

  9. Xamarin.Android 如何使用Assets目录下的文件

    原文:Xamarin.Android 如何使用Assets目录下的文件 个人原创,转载注明出处:http://blog.csdn.net/supluo/article/details/43672411 ...

  10. Android开发之assets目录下资源使用总结

    预前知识: Android资源文件分类: Android资源文件大致可以分为两种: 第一种是res目录下存放的可编译的资源文件: 这种资源文件系统会在R.Java里面自动生成该资源文件的ID,所以访问 ...

随机推荐

  1. python Requests 库的使用

    目录 1. 介绍 2. 安装 3. 基本请求 3.1 get请求 3.2 post请求 3.3 自定义请求头部 3.4 设置超时时间 3.5 代理访问 3.6 session自动保存cookies 3 ...

  2. uniapp获取用户信息

    新接口getUserProfileFn内置login,如果必须要login返回的参数要隔离开 vue3书写要对按钮配置属性 <button @click="logintou" ...

  3. QT中各控件的属性和方法

    1.在QT6中,QLabel类具有许多属性和方法,以下是QLabel类的常见属性和调用方法:setText(const QString &text):设置标签的文本内容.setAlignmen ...

  4. docker之docker-compose

    docker-compose就是个二进制的工具,它可以单机编排,批量管理多个容器 [root@mcwk8s01 harbor]# file /usr/local/bin/docker-compose ...

  5. 多个 GPU 上运行

    默认情况下,Easy Diffusion 自动在多个 GPU 上运行(如果您的电脑有多个 GPU).例如,两个任务将在两个 GPU 上并行运行(如果有的话). 我该如何使用这个? 如果您的电脑有多个 ...

  6. Windows下生成RSA公钥和私钥

    打开E:\MAMP\bin\apache(服务器安装文件目录)文件夹下的 bin 文件夹,执行 openssl.exe 文件 生成 RSA 私钥,出现图中提示说明生成成功 genrsa -out rs ...

  7. 开源云原生平台对比 KubeSphere vs Rainbond

    最近因为工作需要,需要找一个功能完善的云原生应用平台,经过自己筛选和朋友推荐,剩下 KubeSphere和Rainbond ,这两个产品都是基于 Kubernetes 之上构建的云原生应用平台,功能都 ...

  8. Part1--软件规范总纲

    开发人员规范 软件代码编写规范 套话 目的:统一公司编码风格:提高代码易读性.可靠性和稳定性:减少软件维护成本提高生产力 基本原则:维持代码易读.可维护:保持代码清晰:尽可能复用代码 实用规则 缩进 ...

  9. Nodejs内置中间件 第三方中间件 cookie和session

    内置中间件 express也提供了好用的内置中间件,如提供一个静态资源管理的中间件,通过此中间件就可以帮助为我们快速搭建一个静态资源服务器 app.use(express.static('托管目录地址 ...

  10. C#.NET 使用HttpWebRequest发送JSON

    方法: public static string HttpPostJson(string url, string postStr, int timeOut, string charset) { Htt ...