小编Mos*_*kie的帖子

PowerShell 2.0:在远程会话期间访问Windows共享

我在PowerShell远程会话中访问共享网络位置时遇到问题.

在PowerShell提示符下,我输入一个新会话:

Enter-PSSession server1
Run Code Online (Sandbox Code Playgroud)

会话已正确创建并输入.然后我尝试列出共享的内容:

dir \\server2\share1
Run Code Online (Sandbox Code Playgroud)

响应是这个错误:

Get-ChildItem : Cannot find path '\\server2\share1' because it does not exist.
Run Code Online (Sandbox Code Playgroud)

但是,如果我将远程桌面导入server1,调出PowerShell并执行完全相同的dir命令,则会正确列出内容.

我尝试过各种使用凭据的东西,但这似乎并没有解决它.我也通过"whoami"命令确认我在两个例子中都有相同的身份.

什么会导致这个?

powershell powershell-2.0

25
推荐指数
2
解决办法
1万
查看次数

Rails 4错误:无法写入未知属性`html'

试图设置一个基本的Rails 4应用程序用于学习目的时遇到错误,所以请耐心等待!我正在尝试创建一个应用程序来创建和显示自定义Web表单.我有一个Form模型,它有很多字段.我正在努力让视图工作,这将允许我创建一个附加到特定表单的新Field记录:

class Form < ActiveRecord::Base    
    has_many :fields    
end

class Field < ActiveRecord::Base
    belongs_to :form
end
Run Code Online (Sandbox Code Playgroud)

在我的Field索引视图中,我相信我已经设置为正确显示特定表单的字段(通过类似/ forms/1/fields的URL),我有一个链接:

<%= link_to 'New Field', new_form_field_path(@form) %>
Run Code Online (Sandbox Code Playgroud)

fields/new.html.erb文件包含:

<h1>New field</h1>
<%= render :partial => 'form', :form => @form, :field => @field %>
Run Code Online (Sandbox Code Playgroud)

字段/ _form.html.erb像这样开始:

<%= form_for(@form, @field) do |f| %>
Run Code Online (Sandbox Code Playgroud)

fields_controller.rb定义了此方法:

def new
  @form = Form.find(params[:form_id]) #unsure if this is necessary/correct, but its presence doesn't effect the error i'm getting
  @field = Field.new
end
Run Code Online (Sandbox Code Playgroud)

已创建ID为1的表单.看起来/ forms/1/fields看起来好了.但是,当我点击"New Field"链接,它将我带到/ forms/1/fields/new时,我收到此错误:

Showing /home/moskie/Projects/FormBuilder/app/views/fields/_form.html.erb where line #1 …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails ruby-on-rails-4

9
推荐指数
1
解决办法
7496
查看次数

Get-WMIObject返回没有描述的错误

在我们的一个生产服务器上,我在运行脚本时遇到错误.删除代码,从PowerShell提示符运行此命令时收到错误:

Get-WmiObject -Class win32_volume
Run Code Online (Sandbox Code Playgroud)

结果是这样的:

Get-WmiObject :
At line:1 char:14
+ Get-WmiObject <<<<  -Class win32_volume
    + CategoryInfo          : InvalidOperation: (:) [Get-WmiObject], COMException
    + FullyQualifiedErrorId : GetWMICOMException,Microsoft.PowerShell.Commands.GetWmiObjectCommand
Run Code Online (Sandbox Code Playgroud)

对我来说,值得注意的是,结果的第一行没有描述错误.此脚本在过去一直有效,并继续在我们的其他服务器上运行.

我在服务器上以管理员身份运行此操作,PowerShell会话处于管理员模式.关于如何解决这个问题的任何建议?

谢谢.

powershell wmi

7
推荐指数
1
解决办法
1万
查看次数

将MVC应用程序作为子应用程序运行?

我正在尝试创建一个MVC应用程序作为我的标准Asp.Net Web应用程序的子应用程序.这两个项目都在同一个解决方案中.虽然父应用程序看起来很顺利,但我无法让子应用程序工作.在对我的两个web.configs进行一些按摩之后,我能够让Asp.Net运行时接受配置,但是我无法浏览到MVC应用程序中的任何页面/控制器,包括子的根-application(" http:// RootSite/SubApplicationName / ").我不断得到404.

实际上,当我转到网址" http:// RootSite/SubApplicationName/Home/Index / " 时,我确实收到了回复.它将我重定向到该文件夹​​中的index.aspx,并抛出此错误:

无法找到"索引"视图或其主页.搜索了以下位置:
〜/ Views/Home/Index.aspx
~/Views/Home/Index.ascx
~/Views/Shared/Index.aspx
~/Views/Shared/Index.ascx

IIS(7)中的子应用程序设置得非常简单:它设置为在与父应用程序相同的应用程序池中运行,后者在集成模式下运行Asp.Net 2.0.

我的怀疑是我在web.configs中有一些东西正在抛弃它.是否存在关于HTTPModules或URL授权模块等的事情,我应该确认这些事情不会妨碍MVC的发展?

另外,在global.asax.cs文件中,默认路由是否应该不同?默认情况下,传递给routes.MapRoute的url参数是:

"{controller}/{action}/{id}"
Run Code Online (Sandbox Code Playgroud)

它应该在子应用程序的名称前面,如此吗?

"SubApplicationName/{controller}/{action}/{id}"
Run Code Online (Sandbox Code Playgroud)

我尝试过这样的改变,但它并没有解决问题.

任何想法都非常感谢.此外,有关将MVC Web应用程序设置为子应用程序的一般信息也很棒.

谢谢.

.net c# asp.net asp.net-mvc iis-7

5
推荐指数
1
解决办法
2875
查看次数

正则表达式匹配未被括号括起的下划线?

任何人都可以建议正则表达式匹配以下示例中的下划线:

test_test
test[_test
test_]
Run Code Online (Sandbox Code Playgroud)

但不符合这个:

test[_]test
Run Code Online (Sandbox Code Playgroud)

这是使用.Net正则表达式库.我正在使用这个RegEx测试仪来检查:

http://derekslager.com/blog/posts/2007/09/a-better-dotnet-regular-expression-tester.ashx

regex

3
推荐指数
1
解决办法
9010
查看次数

PowerShell远程会话和范围问题:命令似乎在本地运行

下面是一个示例脚本,尝试在服务器上创建远程会话,然后使用WMI获取服务器的IIS应用程序池列表,并列出其名称:

    function Test-Remoting
    {
        [CmdletBinding()]
        param
        (    
        )
        begin
        {
            Enter-PSSession TestServer
            $appPools = Get-WmiObject -namespace "root\MicrosoftIISv2" -class "IIsApplicationPool" -Authentication 6
            $appPools | ForEach-Object {
                $appPool = $_;
                $appPool.Name
            }
            Exit-PSSession
        }    
    }
Run Code Online (Sandbox Code Playgroud)

此函数包含在名为"Test-Remoting.ps1"的文件中.我将PowerShell,CD打开到包含该文件的目录中,将该文件点源,并调用该函数:

PS C:\Users\moskie> . .\Test-Remoting.ps1
PS C:\Users\moskie> Test-Remoting
Run Code Online (Sandbox Code Playgroud)

但是此脚本的结果是我本地计算机上的应用程序池列表,而不是 TestServer.

或者,如果我在PowerShell提示符下手动运行以下行(与函数中的行相同),我获取远程服务器上的应用程序池列表:

PS C:\Users\moskie> Enter-PSSession TestServer
[TestServer]: PS C:\> $appPools = Get-WmiObject -namespace "root\MicrosoftIISv2" -class "IIsApplicationPool" -Authentication 6
[TestServer]: PS C:\> $appPools | ForEach-Object { $appPool = $_; $appPools.Name }
<a list of …
Run Code Online (Sandbox Code Playgroud)

powershell powershell-remoting

3
推荐指数
1
解决办法
2872
查看次数